Consumir e publicar pacotes Swift - CodeArtifact

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

Consumir e publicar pacotes Swift

Consumindo pacotes Swift de CodeArtifact

Use o procedimento a seguir para consumir pacotes Swift de um AWS CodeArtifact repositório.

Para consumir pacotes Swift de um CodeArtifact repositório
  1. Caso contrário, siga as etapas Configure o Swift Package Manager com CodeArtifact para configurar o Swift Package Manager para usar seu CodeArtifact repositório com as credenciais adequadas.

    nota

    O token de autorização gerado é válido por 12 horas. Você precisará criar um novo se tiverem passado 12 horas desde a criação do token.

  2. Edite o arquivo Package.swift na pasta do projeto do aplicativo para atualizar as dependências do pacote a serem usadas no projeto.

    1. Se o arquivo Package.swift não contiver a seção dependencies, adicione uma.

    2. Na seção dependencies do arquivo Package.swift, adicione o pacote que você deseja usar adicionando seu identificador de pacote. O identificador do pacote consiste no escopo e no nome do pacote separados por ponto (.). Consulte o trecho de código em uma etapa posterior para ver um exemplo.

      dica

      Para encontrar o identificador do pacote, você pode usar o CodeArtifact console. Localize a versão específica do pacote que você deseja usar e consulte as instruções de Atalho de instalação na página de versão do pacote.

    3. Se o arquivo Package.swift não contiver a seção targets, adicione uma.

    4. Na seção targets, adicione os destinos que precisarão usar a dependência.

      A seguir há um trecho de exemplo que mostra a configuração das seções dependencies e targets em um arquivo Package.swift:

      ... ], dependencies: [ .package(id: "my_scope.package_name", from: "1.0.0") ], targets: [ .target( name: "MyApp", dependencies: ["package_name"] ),... ], ...
  3. Agora que tudo está configurado, use o comando a seguir para baixar as dependências do CodeArtifact pacote.

    swift package resolve

Consumindo pacotes Swift CodeArtifact do Xcode

Use o procedimento a seguir para consumir pacotes Swift de um CodeArtifact repositório no Xcode.

Para consumir pacotes Swift de um CodeArtifact repositório no Xcode
  1. Caso contrário, siga as etapas Configure o Swift Package Manager com CodeArtifact para configurar o Swift Package Manager para usar seu CodeArtifact repositório com as credenciais adequadas.

    nota

    O token de autorização gerado é válido por 12 horas. Você precisará criar um novo se tiverem passado 12 horas desde a criação do token.

  2. Adicione os pacotes como uma dependência do projeto no Xcode.

    1. Escolha Arquivo > Adicionar pacotes.

    2. Localize o pacote usando a barra de pesquisa. Sua pesquisa deve estar no formato package_scope.package_name.

    3. Quando encontrado, escolha o pacote e clique em Adicionar pacote.

    4. Depois que o pacote for verificado, escolha os produtos do pacote que você deseja adicionar como dependência e escolha Adicionar pacote.

Se você tiver problemas ao usar seu CodeArtifact repositório com o Xcode, consulte Solução de problemas do Swift os problemas comuns e as possíveis correções.

Publicando pacotes Swift em CodeArtifact

CodeArtifact recomenda o Swift 5.9 ou posterior e usa o swift package-registry publish comando para publicar pacotes Swift. Se você estiver usando uma versão anterior, deverá usar um comando Curl para publicar pacotes do Swift. CodeArtifact

Publicando CodeArtifact pacotes com o swift package-registry publish comando

Use o procedimento a seguir com o Swift 5.9 ou posterior para publicar pacotes Swift em um CodeArtifact repositório com o Swift Package Manager.

  1. Caso contrário, siga as etapas Configure o Swift Package Manager com CodeArtifact para configurar o Swift Package Manager para usar seu CodeArtifact repositório com as credenciais adequadas.

    nota

    O token de autorização gerado é válido por 12 horas. Você precisará criar um novo se tiverem passado 12 horas desde a criação do token.

  2. Navegue até o diretório do projeto Swift que contém o arquivo Package.swift para seu pacote.

  3. Para publicar o pacote, execute o seguinte comando swift package-registry publish. O comando cria um arquivo de origem do pacote e o publica no seu CodeArtifact repositório.

    swift package-registry publish packageScope.packageName packageVersion

    Por exemplo:

    swift package-registry publish myScope.myPackage 1.0.0
  4. Você pode confirmar se o pacote foi publicado e existe no repositório acessando o console ou usando o comando aws codeartifact list-packages da seguinte forma:

    aws codeartifact list-packages --domain my_domain --repository my_repo

    Você pode exibir a versão única do pacote usando o comando aws codeartifact list-package-versions da seguinte forma:

    aws codeartifact list-package-versions --domain my_domain --repository my_repo \ --format swift --namespace my_scope --package package_name

Publicando CodeArtifact pacotes com Curl

Embora seja recomendável usar o swift package-registry publish comando que vem com o Swift 5.9 ou posterior, você também pode usar o Curl para publicar pacotes do Swift no. CodeArtifact

Use o procedimento a seguir para publicar pacotes Swift em um AWS CodeArtifact repositório com Curl.

  1. Caso ainda não tenha feito isso, crie e atualize as variáveis de ambiente CODEARTIFACT_AUTH_TOKEN e CODEARTIFACT_REPO seguindo as etapas em Configure o Swift Package Manager com CodeArtifact.

    nota

    O token de autorização é válido por 12 horas. Você precisará atualizar a variável de ambiente CODEARTIFACT_AUTH_TOKEN com novas credenciais se tiverem passado 12 horas desde que ela foi criada.

  2. Primeiramente, se você não tiver um pacote Swift criado, isso pode ser feito executando os seguintes comandos:

    mkdir testDir && cd testDir swift package init git init . swift package archive-source
  3. Use o seguinte comando Curl para publicar seu pacote Swift em CodeArtifact:

    macOS and Linux
    curl -X PUT --user "aws:$CODEARTIFACT_AUTH_TOKEN" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@test_dir_package_name.zip" \ "${CODEARTIFACT_REPO}my_scope/package_name/packageVersion"
    Windows
    curl -X PUT --user "aws:%CODEARTIFACT_AUTH_TOKEN%" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@test_dir_package_name.zip" \ "%CODEARTIFACT_REPO%my_scope/package_name/packageVersion"
  4. Você pode confirmar se o pacote foi publicado e existe no repositório acessando o console ou usando o comando aws codeartifact list-packages da seguinte forma:

    aws codeartifact list-packages --domain my_domain --repository my_repo

    Você pode exibir a versão única do pacote usando o comando aws codeartifact list-package-versions da seguinte forma:

    aws codeartifact list-package-versions --domain my_domain --repository my_repo \ --format swift --namespace my_scope --package package_name

Buscando pacotes Swift GitHub e republicando em CodeArtifact

Use o procedimento a seguir para buscar um pacote Swift GitHub e republicá-lo em um CodeArtifact repositório.

Para obter um pacote Swift GitHub e republicá-lo no CodeArtifact
  1. Caso contrário, siga as etapas Configure o Swift Package Manager com CodeArtifact para configurar o Swift Package Manager para usar seu CodeArtifact repositório com as credenciais adequadas.

    nota

    O token de autorização gerado é válido por 12 horas. Você precisará criar um novo se tiverem passado 12 horas desde a criação do token.

  2. Clone o repositório Git do pacote Swift que você deseja buscar e republicar usando o seguinte comando git clone. Para obter informações sobre a clonagem de GitHub repositórios, consulte Clonar um repositório na Documentação. GitHub

    git clone repoURL
  3. Navegue até o repositório que você acabou de clonar:

    cd repoName
  4. Crie o pacote e publique-o no CodeArtifact.

    1. Recomendado: se você estiver usando o Swift 5.9 ou posterior, poderá usar o swift package-registry publish comando a seguir para criar o pacote e publicá-lo no seu CodeArtifact repositório configurado.

      swift package-registry publish packageScope.packageName versionNumber

      Por exemplo:

      swift package-registry publish myScope.myPackage 1.0.0
    2. Se você estiver usando uma versão do Swift anterior à 5.9, deverá usar o comando swift archive-source para criar o pacote e, em seguida, usar um comando Curl para publicá-lo.

      1. Se as variáveis de ambiente CODEARTIFACT_AUTH_TOKEN e CODEARTIFACT_REPO não tiverem sido configuradas ou caso já tenham se passado mais de 12 horas desde que você realizou essa configuração, siga as etapas em Configurar o Swift sem o comando login.

      2. Crie o pacote Swift usando o comando swift package archive-source:

        swift package archive-source

        Se for bem-sucedido, você verá Created package_name.zip na linha de comando.

      3. Use o seguinte comando Curl para publicar o pacote Swift em CodeArtifact:

        macOS and Linux
        curl -X PUT --user "aws:$CODEARTIFACT_AUTH_TOKEN" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@package_name.zip" \ "${CODEARTIFACT_REPO}my_scope/package_name/packageVersion"
        Windows
        curl -X PUT --user "aws:%CODEARTIFACT_AUTH_TOKEN%" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@package_name.zip" \ "%CODEARTIFACT_REPO%my_scope/package_name/packageVersion"
  5. Você pode confirmar se o pacote foi publicado e existe no repositório acessando o console ou usando o comando aws codeartifact list-packages da seguinte forma:

    aws codeartifact list-packages --domain my_domain --repository my_repo

    Você pode exibir a versão única do pacote usando o comando aws codeartifact list-package-versions da seguinte forma:

    aws codeartifact list-package-versions --domain my_domain --repository my_repo \ --format swift --namespace my_scope --package package_name