Swift パッケージの使用と公開 - CodeArtifact

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Swift パッケージの使用と公開

からの Swift パッケージの消費 CodeArtifact

AWS CodeArtifact リポジトリから Swift パッケージを使用するには、次の手順に従います。

CodeArtifact リポジトリから Swift パッケージを使用するには
  1. まだ設定していない場合は、「」の手順に従ってで Swift パッケージマネージャーを設定する CodeArtifact、適切な認証情報で CodeArtifact リポジトリを使用するように Swift パッケージマネージャーを設定します。

    注記

    認証トークンの有効期限は 12 時間です。トークンの作成後 12 時間が経過した場合は、新しいトークンを作成する必要があります。

  2. アプリケーションプロジェクトフォルダー内の Package.swift ファイルを編集して、プロジェクトで使用されるパッケージの依存関係を更新します。

    1. Package.swift ファイルに dependencies セクションが含まれていない場合は、セクションを追加してください。

    2. Package.swiftファイルの dependencies セクションにパッケージ ID を追加して、使用するパッケージを追加します。パッケージ ID は、スコープとパッケージ名をピリオドで区切ったものです。例については、後のステップのコードスニペットを参照してください。

      ヒント

      パッケージ識別子を見つけるには、 CodeArtifact コンソールを使用できます。使用する特定のパッケージバージョンを探して、パッケージバージョンページの [インストールショートカット] の指示を参照してください。

    3. Package.swift ファイルに targets セクションが含まれていない場合は、セクションを追加してください。

    4. targets セクションに、依存関係の使用に必要なターゲットを追加します。

      以下のスニペットは、Package.swift ファイル内の設定済みの dependencies セクションおよび targets セクションを示すスニペットの例です。

      ... ], dependencies: [ .package(id: "my_scope.package_name", from: "1.0.0") ], targets: [ .target( name: "MyApp", dependencies: ["package_name"] ),... ], ...
  3. すべてが設定されたので、次のコマンドを使用して、 からパッケージの依存関係をダウンロードします CodeArtifact。

    swift package resolve

Xcode CodeArtifact での からの Swift パッケージの消費

Xcode の CodeArtifact リポジトリから Swift パッケージを使用するには、次の手順に従います。

Xcode の CodeArtifact リポジトリから Swift パッケージを使用するには
  1. まだ設定していない場合は、「」の手順に従ってで Swift パッケージマネージャーを設定する CodeArtifact、適切な認証情報で CodeArtifact リポジトリを使用するように Swift パッケージマネージャーを設定します。

    注記

    認証トークンの有効期限は 12 時間です。トークンの作成後 12 時間が経過した場合は、新しいトークンを作成する必要があります。

  2. パッケージを Xcode のプロジェクトに依存関係として追加します。

    1. [ファイル] > [パッケージを追加] と選択します。

    2. 検索バーを使用してパッケージを検索します。検索では package_scope.package_name の形式を使用します。

    3. パッケージが見つかったら、パッケージを選択して、[パッケージを追加] を選択します。

    4. パッケージの確認後、依存関係として追加するパッケージを選択し、[パッケージを追加] を選択します。

Xcode で CodeArtifact リポジトリを使用して問題が発生した場合は、Swift のトラブルシューティング「」で一般的な問題と考えられる修正を参照してください。

Swift パッケージを に公開する CodeArtifact

CodeArtifact では、Swift 5.9 以降と swift package-registry publish コマンドを使用して Swift パッケージを公開することを推奨しています。以前のバージョンを使用している場合は、Curl コマンドを使用して Swift パッケージを に公開する必要があります CodeArtifact。

swift package-registry publish コマンドを使用した CodeArtifact パッケージの公開

Swift 5.9 以降で次の手順を使用して、Swift Package Manager CodeArtifact でリポジトリに Swift パッケージを発行します。

  1. まだ設定していない場合は、「」の手順に従ってで Swift パッケージマネージャーを設定する CodeArtifact、適切な認証情報で CodeArtifact リポジトリを使用するように Swift パッケージマネージャーを設定します。

    注記

    認証トークンの有効期限は 12 時間です。作成後 12 時間が経過した場合は、新しいトークンを作成する必要があります。

  2. パッケージの Package.swift ファイルが含まれている Swift プロジェクトディレクトリに移動します。

  3. 次の swift package-registry publish コマンドを実行して、パッケージを公開します。コマンドは、パッケージソースアーカイブを作成し、 CodeArtifact リポジトリに公開します。

    swift package-registry publish packageScope.packageName packageVersion

    例:

    swift package-registry publish myScope.myPackage 1.0.0
  4. パッケージが公開され、リポジトリに存在することを確認するには、コンソールにチェックインするか、以下のように aws codeartifact list-packages コマンドを使用します。

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

    以下のように aws codeartifact list-package-versions コマンドを使用して、パッケージの単一バージョンを一覧表示できます。

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

Curl を使用した CodeArtifact パッケージの公開

Swift 5.9 以降に付属する swift package-registry publish コマンドを使用することをお勧めしますが、Curl を使用して Swift パッケージを に公開することもできます CodeArtifact。

次の手順を使用して、Curl で Swift パッケージを AWS CodeArtifact リポジトリに公開します。

  1. まだ行っていない場合は、「で Swift パッケージマネージャーを設定する CodeArtifact」の手順に従って CODEARTIFACT_AUTH_TOKEN 環境変数および CODEARTIFACT_REPO 環境変数を作成して更新します。

    注記

    認証トークンは 12 時間有効です。CODEARTIFACT_AUTH_TOKEN 環境変数が作成されてから 12 時間が経過した場合は、新しい認証情報で環境変数を更新する必要があります。

  2. Swift パッケージを作成していない場合は、最初に以下のコマンドを実行してパッケージを作成します。

    mkdir testDir && cd testDir swift package init git init . swift package archive-source
  3. Swift パッケージを に公開するには、次の Curl コマンドを使用します 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. パッケージが公開され、リポジトリに存在することを確認するには、コンソールにチェックインするか、以下のように aws codeartifact list-packages コマンドを使用します。

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

    以下のように aws codeartifact list-package-versions コマンドを使用して、パッケージの単一バージョンを一覧表示できます。

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

から Swift パッケージを取得し GitHub 、 に再公開する CodeArtifact

次の手順を使用して、 から Swift パッケージを取得し GitHub 、 CodeArtifact リポジトリに再発行します。

Swift パッケージを から取得 GitHub して に再公開するには CodeArtifact
  1. まだ設定していない場合は、「」の手順に従ってで Swift パッケージマネージャーを設定する CodeArtifact、適切な認証情報で CodeArtifact リポジトリを使用するように Swift パッケージマネージャーを設定します。

    注記

    認証トークンの有効期限は 12 時間です。トークンの作成後 12 時間が経過した場合は、新しいトークンを作成する必要があります。

  2. 次の git clone コマンドを使用して、取得して再公開する Swift パッケージの git リポジトリを複製します。 GitHub リポジトリのクローン作成の詳細については、 GitHub ドキュメントの「リポジトリのクローン作成」を参照してください。

    git clone repoURL
  3. 複製したリポジトリに移動します。

    cd repoName
  4. パッケージを作成し、 に公開します CodeArtifact。

    1. 推奨: Swift 5.9 以降を使用している場合は、次のswift package-registry publishコマンドを使用してパッケージを作成し、設定した CodeArtifact リポジトリに公開できます。

      swift package-registry publish packageScope.packageName versionNumber

      例:

      swift package-registry publish myScope.myPackage 1.0.0
    2. 5.9 より前のバージョンの Swift を使用している場合は、swift archive-source コマンドを使用してパッケージを作成し、その後 Curl コマンドを使用してパッケージを公開する必要があります。

      1. CODEARTIFACT_AUTH_TOKEN 環境変数および CODEARTIFACT_REPO 環境変数を設定していない場合、または設定してから 12 時間以上経過している場合は、「login コマンドを使用せずに Swift を設定する」の手順に従います。

      2. swift package archive-source コマンドを使用して Swift パッケージを作成します。

        swift package archive-source

        正常に作成されたら、コマンドラインに Created package_name.zip が表示されます。

      3. Swift パッケージを に公開するには、次の Curl コマンドを使用します 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. パッケージが公開され、リポジトリに存在することを確認するには、コンソールにチェックインするか、以下のように aws codeartifact list-packages コマンドを使用します。

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

    以下のように aws codeartifact list-package-versions コマンドを使用して、パッケージの単一バージョンを一覧表示できます。

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