

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# AWS SAM propriedades da seção de metadados do modelo
<a name="serverless-sam-template-publishing-applications-metadata-properties"></a>

`AWS::ServerlessRepo::Application` é uma chave de metadados que você pode usar para especificar as informações do aplicativo que você deseja publicar no AWS Serverless Application Repository.

**nota**  
CloudFormation [funções intrínsecas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference.html) não são suportadas pela chave de `AWS::ServerlessRepo::Application` metadados.

## Propriedades
<a name="serverless-sam-template-publishing-applications-metadata-properties-table"></a>

Essa tabela fornece informações sobre as propriedades da `Metadata` seção do AWS SAM modelo. Esta seção é necessária para publicar aplicativos no AWS Serverless Application Repository usando AWS SAMCLI o.


****  

| Propriedade | Tipo | Obrigatório | Descrição | 
| --- | --- | --- | --- | 
| Name | String | TRUE |  O nome da aplicação. Comprimento mínimo = 1. Tamanho máximo = 140. Padrão: `"[a-zA-Z0-9\\-]+";`  | 
| Description | String | TRUE |  A descrição do aplicativo. Comprimento mínimo = 1. Tamanho máximo = 256.  | 
| Author | String | TRUE |  O nome do autor que publica o aplicativo. Comprimento mínimo = 1. Tamanho máximo = 127. Padrão: `"^[a-z0-9](([a-z0-9]\|-(?!-))*[a-z0-9])?$";`  | 
| SpdxLicenseId | String | FALSE | Um identificador de licença válido. Para ver a lista de identificadores de licença válidos, consulte a [Lista de licenças SPDX](https://spdx.org/licenses/) no site Software Package Data Exchange (SPDX). | 
| LicenseUrl | String | FALSE |  A referência s um arquivo de licença local, ou um link do Amazon S3 para um arquivo de licença, que corresponde ao valor SPDXLicenseID do seu aplicativo. Um arquivo AWS SAM de modelo que não tenha sido empacotado usando o `sam package` comando pode ter uma referência a um arquivo local para essa propriedade. No entanto, para que um aplicativo seja publicado usando o comando `sam publish`, essa propriedade deve ser uma referência a um bucket do Amazon S3. Tamanho máximo = 5 MB. Forneça um valor para esta propriedade para tornar o aplicativo público. Observe que você não pode atualizar essa propriedade após a publicação do aplicativo. Portanto, para adicionar uma licença a um aplicativo, você deve excluí-la primeiro ou publicar um novo aplicativo com um nome diferente.  | 
| ReadmeUrl | String | FALSE |  A referência a um arquivo readme local ou a um link do Amazon S3 para o arquivo readme que contém uma descrição mais detalhada do aplicativo e de como ele funciona. Um arquivo AWS SAM de modelo que não tenha sido empacotado usando o `sam package` comando pode ter uma referência a um arquivo local para essa propriedade. No entanto, para ser publicada usando o comando `sam publish`, essa propriedade deve ser uma referência a um bucket do Amazon S3. Tamanho máximo = 5 MB.  | 
| Labels | String | FALSE |  Os rótulos que melhoram a descoberta de aplicativos em resultados de pesquisa. Comprimento mínimo = 1. Tamanho máximo = 127. Número máximo de rótulos: 10. Padrão: `"^[a-zA-Z0-9+\\-_:\\/@]+$";`  | 
| HomePageUrl | String | FALSE | Uma URL com mais informações sobre o aplicativo — por exemplo, a localização do seu GitHub repositório para o aplicativo.  | 
| SemanticVersion | String | FALSE |  A versão semântica do aplicativo. Para a especificação de controle de versão semântica, consulte o site [Versão Semântica](https://semver.org/). Forneça um valor para esta propriedade para tornar o aplicativo público.  | 
| SourceCodeUrl | String | FALSE | Um link para um repositório público para o código-fonte do aplicativo. | 

## Casos de uso
<a name="serverless-sam-template-publishing-applications-metadata-properties-cases"></a>

Esta seção lista os casos de uso para aplicativos de publicação, junto com as propriedades `Metadata` que são processadas para esse caso de uso. As propriedades que *não* estão listadas para um determinado caso de uso são ignoradas.
+ **Criação de um novo aplicativo** — Um novo aplicativo é criado se não houver nenhum aplicativo AWS Serverless Application Repository com um nome correspondente para uma conta.
  + `Name`
  + `SpdxLicenseId`
  + `LicenseUrl`
  + `Description`
  + `Author`
  + `ReadmeUrl`
  + `Labels`
  + `HomePageUrl`
  + `SourceCodeUrl`
  + `SemanticVersion`
  + O conteúdo do AWS SAM modelo (por exemplo, qualquer fonte de evento, recursos e código da função Lambda)

   
+ **Criação de uma versão do aplicativo** — Uma versão do aplicativo é criada se já houver um aplicativo no AWS Serverless Application Repository com um nome correspondente para uma conta *e* ele SemanticVersion *estiver* mudando.
  + `Description`
  + `Author`
  + `ReadmeUrl`
  + `Labels`
  + `HomePageUrl`
  + `SourceCodeUrl`
  + `SemanticVersion`
  + O conteúdo do AWS SAM modelo (por exemplo, qualquer fonte de evento, recursos e código da função Lambda)

   
+ **Atualização de um aplicativo** — Um aplicativo é atualizado se já houver um aplicativo no AWS Serverless Application Repository com um nome correspondente para uma conta *e* ele *não SemanticVersion estiver* mudando.
  + `Description`
  + `Author`
  + `ReadmeUrl`
  + `Labels`
  + `HomePageUrl`

## Exemplo
<a name="serverless-sam-template-publishing-applications-metadata-properties-example"></a>

A seguir, temos um exemplo de uma seção `Metadata`:

```
Metadata:
  AWS::ServerlessRepo::Application:
    Name: my-app
    Description: hello world
    Author: user1
    SpdxLicenseId: Apache-2.0
    LicenseUrl: LICENSE.txt
    ReadmeUrl: README.md
    Labels: ['tests']
    HomePageUrl: https://github.com/user1/my-app-project
    SemanticVersion: 0.0.1
    SourceCodeUrl: https://github.com/user1/my-app-project
```