Como publicar aplicativos - AWS Serverless Application Repository

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á.

Como publicar aplicativos

Esta seção oferece procedimentos para publicar o aplicativo sem servidor no AWS Serverless Application Repository usando a CLI do AWS SAM ou o AWS Management Console. Ela também mostra como compartilhar seu aplicativo para permitir que outras pessoas o implantem e como excluir seu aplicativo do AWS Serverless Application Repository.

Importante

As informações que você insere ao publicar um aplicativo não são criptografadas. Essas informações incluem dados como o nome do autor. Se você tiver informações de identificação pessoal que você não deseja que sejam armazenadas ou tornadas públicas, recomendamos que você não insira essas informações ao publicar o aplicativo.

Publicar um aplicativo (AWS CLI)

A maneira mais fácil de publicar um aplicativo no AWS Serverless Application Repository é usar um conjunto de comandos da CLI do AWS SAM. Para obter mais informações, consulte Publicar um aplicativo usando a CLI do AWS SAM no Guia do desenvolvedor do AWS Serverless Application Model (AWS SAM).

Publicar um novo aplicativo (console)

Esta seção mostra como usar o AWS Management Console para publicar um novo aplicativo no AWS Serverless Application Repository. Para obter instruções sobre como publicar uma nova versão de um aplicativo existente, consulte Publicar a nova versão de um aplicativo existente.

Pré-requisitos

Antes de publicar um aplicativo no AWS Serverless Application Repository, você precisa do seguinte:

  • Um válidoAWSconta.

  • Um válidoAWS Serverless Application Model(AWS SAM) modelo que define oAWSRecursos que são usados. Para obter mais informações sobre os modelos do AWS SAM, consulte Noções básicas sobre modelos do AWS SAM.

  • Um pacote para o aplicativo que você criou usando o comando AWS CloudFormation do package para a AWS CLI. Este comando cria um pacote dos artefatos locais (caminhos locais) que são referências do seu modelo AWS SAM. Para obter mais detalhes, consulte package (pacote) na documentação do AWS CloudFormation.

  • Um URL que aponta para o código-fonte do aplicativo, caso você queira torná-lo público.

  • Um arquivo "readme.txt". Esse arquivo descreve como os clientes podem usar seu aplicativo e como configurá-lo antes de implantá-lo por conta própriaAWScontas.

  • Um arquivo license.txt ou um identificador de licença válido do site SPDX. Observe que uma licença é necessária somente se você quiser compartilhar o aplicativo publicamente. Se você quiser manter o aplicativo como privado ou apenas compartilhá-lo de forma privada, não será necessário especificar uma licença.

  • Uma política de buckets do Amazon S3 válida que concede as permissões de leitura de serviço para os artefatos que foram carregados no Amazon S3 quando você criou o pacote do seu aplicativo. Para definir essa política, siga essas etapas:

    1. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

    2. Escolha o bucket do Amazon S3 que você usou para empacotar seu aplicativo.

    3. Escolha a guia Permissions (Permissões).

    4. Clique no botão de Política de bucket.

    5. Cole a declaração da política a seguir no Bucket policy editor (Editor de política do bucket). Certifique-se de substituir o nome do bucket noResourceelemento e seuAWSUm ID da conta daConditionElemento. A expressão noConditionElementos garantemAWS Serverless Application Repositorysó tem permissão para acessar aplicativos do especificadoAWSconta. Para obter mais informações sobre declarações de política, consulteReferência de elementos de política JSON do IAMnoManual do usuário do IAM.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "serverlessrepo.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::bucketname/*", "Condition" : { "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }
    6. Clique no botão Salvar.

Procedimento

Crie um novo aplicativo no AWS Serverless Application Repository usando o seguinte procedimento.

Para criar um novo aplicativo no AWS Serverless Application Repository
  1. Abra o console AWS Serverless Application Repository e escolha Publicar aplicativos.

  2. Na página Publish an application (Publicar um aplicativo), insira as seguintes informações do aplicativo e escolha Publish application (Publicar aplicativo):

    Propriedade Obrigatório Descrição
    Application name (Nome do aplicativo) TRUE

    O nome do aplicativo.

    Comprimento mínimo = 1. Tamanho máximo = 140.

    Padrão: "[a-zA-Z0-9\\-]+";

    Author (Autor) 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])?$";

    Home page (Página inicial) FALSE Um URL com mais informações sobre o aplicativo — por exemplo, o local do GitHub repositório para o aplicativo.
    Descrição TRUE

    A descrição do aplicativo.

    Comprimento mínimo = 1. Tamanho máximo = 256.

    Rótulos 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+\\-_:\\/@]+$";

    Spdx license (drop-down list) (Licença Spdx (lista suspensa)) FALSE Escolha um identificador de licença válido no menu suspenso que contenha as licenças disponíveis no site SPDX. Escolher um item no menu suspenso preencherá a caixa de texto License (Licença) abaixo. Observação: Escolher uma licença no menu suspenso substituirá o conteúdo doLicense (Licença)Caixa de texto e descartará todas as edições manuais feitas.
    License (Licença) FALSE

    Carregue um arquivo de licença .txt ou escolha uma licença no menu suspenso Spdx license (Licença Spdx) descrito na linha anterior. Escolher uma licença do menu Spdx license (Licença Spdx) automaticamente preencherá a caixa de texto License (Licença). É possível editar o conteúdo dessa caixa de texto manualmente após carregar um arquivo de licença ou escolher um no menu suspenso Spdx license (Licença Spdx). No entanto, se outra Spdx license (Licença Spdx) for escolhida no menu suspenso, todas as edições manuais feitas serão descartadas.

    Esse é um campo opcional, mas é necessário fornecer uma licença para compartilhar o aplicativo publicamente.

    Readme (Leiame) FALSE

    Carregue o conteúdo do arquivo Leiame, que pode estar no formato de texto ou markdown. Esses conteúdos são exibidos na página de detalhes do aplicativo no AWS Serverless Application Repository. É possível editar manualmente o conteúdo dessa caixa de texto após carregar um arquivo.

    Semantic version FALSE

    A versão semântica do aplicativo. Para obter mais informações, consulte o site do Versionamento Semântico.

    Forneça um valor para esta propriedade para tornar o aplicativo público.

    Source code URL (URL do código-fonte) FALSE Um link para um repositório público para o código-fonte do aplicativo.
    SAM template (Modelo do SAM) TRUE

    Um válidoAWS Serverless Application Model(AWS SAM) modelo que define oAWSRecursos que são usados.

Compartilhar um aplicativo

Aplicativos publicados podem ter permissões definidas em uma das três categorias a seguir:

  • Privado (padrão)— aplicativos que foram criados com a mesma conta e não foram compartilhados com outrasAWSconta. Somente consumidores que compartilham seuAWSConta tem permissão para implantar aplicativos privados.

  • Compartilhado de forma privada— Aplicativos que o editor compartilhou explicitamente com um conjunto específico deAWScontas ou comAWScontas em umAWSOrganização. Os consumidores têm permissão para implantar aplicativos que foram compartilhados com seusAWSconta ouAWSOrganização. Para obter mais informações sobre o AWS Organizations, consulte o Guia do usuário do AWS Organizations.

  • Compartilhado publicamente— Aplicativos que o editor compartilhou com todos. Todos os consumidores têm permissão para implantar um aplicativo compartilhado publicamente.

Depois que você publica um aplicativo no AWS Serverless Application Repository, por padrão, ele é definido como privado. Esta seção mostra como compartilhar um aplicativo de modo privado com o específicoAWScontas ou umAWSOrganize ou compartilhe publicamente com todos.

Compartilhar um aplicativo por meio do console

Você tem duas opções para compartilhar seu aplicativo com outras pessoas: 1) Compartilhe com específicoAWScontas ou oAWScontas dentro do seuAWSorganização, ou 2) Compartilhe publicamente com todos. Para obter mais informações sobre o AWS Organizations, consulte o Guia do usuário do AWS Organizations.

Opção 1: Para compartilhar seu aplicativo com específicoAWSconta (s) ou contas dentro da suaAWSorganização
  1. Abra o console do AWS Serverless Application Repository.

  2. No painel de navegação, escolha Published Applications (Aplicativos publicados) para ver a lista de aplicativos que você criou.

  3. Escolha o aplicativo que você quer compartilhar.

  4. Escolha a guia Sharing (Compartilhamento).

  5. Na seção Application policy statements (Declarações de política de aplicativo), escolha o botão Create Statement (Criar declaração).

  6. Na janela Statement Configuration (Configuração da declaração) preencha os campos com base em como você deseja compartilhar seu aplicativo.

    nota

    Se você estiver compartilhando com uma organização, só será possível especificar a organização que seuAWSconta é membro do. Se você tentar especificar umAWSUma organização da qual você não é membro, ocorrerá um erro.

    Para compartilhar seu aplicativo com seuAWSOrganização, você deve reconhecer que oUnshareApplicationUma ação será adicionada à declaração de política, caso o compartilhamento precise ser revogado no future.

  7. Clique no botão Salvar.

Opção 2: Para compartilhar seu aplicativo publicamente com todos
  1. Abra o console do AWS Serverless Application Repository.

  2. No painel de navegação, escolha Published Applications (Aplicativos publicados) para ver a lista de aplicativos que você criou.

  3. Escolha o aplicativo que você quer compartilhar.

  4. Escolha a guia Sharing (Compartilhamento).

  5. Na seção Public Sharing (Compartilhamento público) escolha o botão Edit (Editar).

  6. Em Public sharing (Compartilhamento público) escolha o botão de opção Enabled (Habilitado).

  7. Na caixa de texto digite o nome do aplicativo e escolha o botão Save (Salvar).

nota

Para compartilhar um aplicativo publicamente, ele deve ter as propriedades LicenseUrl e SemanticVersion definidas.

Compartilhar um aplicativo por meio da AWS CLI

Para compartilhar uma aplicação usando aAWS CLIvocê concede permissões usando oput-application-policycomando para especificar oAWSConta (s) com as quais você deseja compartilhar como diretores.

Para obter mais informações sobre como compartilhar seu aplicativo usando aAWSCLI, consulteAWS Serverless Application RepositoryExemplos de políticas de aplicativos.

Cancelar o compartilhamento de um aplicativo

Há duas opções para cancelar o compartilhamento de um aplicativo de umAWSOrganização:

  1. O editor do aplicativo pode remover permissões usando o comando put-application-policy.

  2. Um usuário doconta de gerenciamentode umAWSA organização pode executar umcancelar compartilhamento de aplicativoOperation em qualquer aplicativo compartilhado com a organização, mesmo que o aplicativo tenha sido publicado por um usuário de uma conta diferente.

    nota

    Quando um aplicativo não é compartilhado de umAWSOrganização com a operação “cancelar compartilhamento de aplicativo”, ela não pode ser compartilhada comAWSOrganização novamente.

    Para obter mais informações sobre o AWS Organizations, consulte o Guia do usuário do AWS Organizations.

Editor remove permissões

Editor remove permissões pelo console

Para cancelar o compartilhamento de um aplicativo por meio doAWS Management Console, remova a declaração de política que a compartilha com outrasAWScontas. Para isso, siga estas etapas:

  1. Abra o console do AWS Serverless Application Repository.

  2. Escolha Available Applications (Aplicativos disponíveis) no painel de navegação esquerdo.

  3. Escolha o aplicativo do qual deseja cancelar o compartilhamento.

  4. Escolha a guia Sharing (Compartilhamento).

  5. Na seção Application policy statements (Declarações de política de aplicativo) selecione a declaração de política que está compartilhando o aplicativo com as contas das quais você deseja cancelar o compartilhamento.

  6. Escolha Delete (Excluir).

  7. Uma mensagem de confirmação será exibida. Escolha Delete (Excluir) novamente.

Editor remove permissões pela AWS CLI

Para cancelar o compartilhamento de um aplicativo por meio doAWS CLI, o editor pode remover ou alterar permissões usando oput-application-policycomando para tornar o aplicativo privado ou compartilhar com um conjunto diferente deAWScontas.

Para obter mais informações sobre como alterar permissões usando aAWSCLI, consulteAWS Serverless Application RepositoryExemplos de políticas de aplicativos.

Conta de gerenciamento cancelando o compartilhamento de um aplicativo

Conta de gerenciamento cancelando o compartilhamento de um aplicativo de umAWSOrganização pelo console do

Para cancelar o compartilhamento de um aplicativo de umAWSOrganização através doAWS Management Console, um usuário doconta de gerenciamentoO pode fazer o seguinte:

  1. Abra o console do AWS Serverless Application Repository.

  2. Escolha Available Applications (Aplicativos disponíveis) no painel de navegação esquerdo.

  3. No bloco do aplicativo, escolha Unshare (Cancelar compartilhamento).

  4. Na caixa de mensagem de cancelamento de compartilhamento, confirme que deseja cancelar o compartilhamento do aplicativo inserindo o ID da organização e o nome do aplicativo e escolhendo Save (Salvar).

Conta de gerenciamento cancelando o compartilhamento de um aplicativo de umAWSOrganização através doAWS CLI

Para cancelar o compartilhamento de um aplicativo de umAWSOrganização, um usuário doconta de gerenciamentopode executar oaws serverlessrepo unshare-applicationcomando.

O comando a seguir descompartilha um aplicativo de umAWSOrganização, ondeApplication-idÉ o nome de recurso da Amazon (ARN) do aplicativo eid da organizaçãoé oAWSID da organização:

aws serverlessrepo unshare-application --application-id application-id --organization-id organization-id

Excluir um aplicativo

É possível excluir aplicativos do AWS Serverless Application Repository usando o AWS Management Console ou a CLI do AWS SAM.

Excluir um aplicativo (console)

Para excluir um aplicativo publicado por meio do AWS Management Console, faça o seguinte.

  1. Abra o console do AWS Serverless Application Repository.

  2. Em My Applications (Meus aplicativos), escolha o aplicativo a ser excluído.

  3. Na página de detalhes do aplicativo, escolha Delete application (Excluir aplicativo).

  4. Escolha Delete application (Excluir aplicativo) para concluir a exclusão.

Excluir um aplicativo (AWS CLI)

Para excluir um aplicativo publicado usando a AWS CLI, execute o comando aws serverlessrepo delete-application.

O comando a seguir exclui um aplicativo, onde application-id é o nome de recurso da Amazon (ARN) do aplicativo:

aws serverlessrepo delete-application --application-id application-id