curl で公開する - CodeArtifact

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

curl で公開する

このセクションでは、HTTP クライアント curl を使用して、Maven Artifact (アーティファクト) を CodeArtifact リポジトリに公開する方法を説明します。curl を使用したArtifact (アーティファクト) の公開は、Maven クライアントを環境にインストールしていない、またはインストールしたくない場合に便利です。

curl を使用して Maven Artifact (アーティファクト) を公開する
  1. CodeArtifact 認証トークンを取得するには、環境変数を使用して認証トークンを渡す のステップに従います。その後、これらのステップに戻ります。

  2. 次の curl コマンドを使用して、JAR を CodeArtifact リポジトリに公開します。

    この手順の各 curl コマンドで、次のプレースホルダを置き換えます。

    • my_domain を CodeArtifact ドメイン名で置き換えます。

    • 111122223333 を CodeArtifact ドメインの所有者の ID で置き換えます。

    • us-west-2 を CodeArtifact ドメインがあるリージョンで置き換えます。

    • my_repo を CodeArtifact リポジトリ名で置き換えます。

    curl --request PUT https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/maven/my_repo/com/mycompany/app/my-app/1.0/my-app-1.0.jar \ --user "aws:$CODEARTIFACT_AUTH_TOKEN" --header "Content-Type: application/octet-stream" \ --data-binary @my-app-1.0.jar
    重要

    --data-binary パラメータの値には @ 文字をプレフィックスとして付ける必要があります。値を引用符で囲む場合は、@ を引用符で囲む必要があります。

  3. 次の curl コマンドを使用して、POM を CodeArtifact リポジトリに公開します。

    curl --request PUT https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/maven/my_repo/com/mycompany/app/my-app/1.0/my-app-1.0.pom \ --user "aws:$CODEARTIFACT_AUTH_TOKEN" --header "Content-Type: application/octet-stream" \ --data-binary @my-app-1.0.pom
  4. この時点で、Maven Artifact (アーティファクト) は Unfinished のステータスで CodeArtifact リポジトリにあります。パッケージを消費できるようにするには、パッケージが Published のステータスである必要があります。パッケージを Unfinished から Published に移動するには、maven-metadata.xml ファイルをパッケージにアップロードするか、[UpdatePackageVersionsStatus API] を呼び出して、ステータスを変更します。

    1. オプション 1: 次の curl コマンドを使用して、maven-metadata.xml ファイルをパッケージに追加する:

      curl --request PUT https://my_domain-111122223333.d.codeartifact.region.amazonaws.com/maven/my_repo/com/mycompany/app/my-app/maven-metadata.xml \ --user "aws:$CODEARTIFACT_AUTH_TOKEN" --header "Content-Type: application/octet-stream" \ --data-binary @maven-metadata.xml

      次に示すのは、maven-metadata.xml ファイルのコンテンツの例です:

      <metadata modelVersion="1.1.0"> <groupId>com.mycompany.app</groupId> <artifactId>my-app</artifactId> <versioning> <latest>1.0</latest> <release>1.0</release> <versions> <version>1.0</version> </versions> <lastUpdated>20200731090423</lastUpdated> </versioning> </metadata>
    2. オプション 2: UpdatePackageVersionsStatus API を使用して、パッケージのステータスを Published に更新する。

      aws codeartifact update-package-versions-status \ --domain my_domain \ --domain-owner 111122223333 \ --repository my_repo \ --format maven \ --namespace com.mycompany.app \ --package my-app \ --versions 1.0 \ --target-status Published

Artifact (アーティファクト) の JAR ファイルしかない場合は、mvn を使用して使用可能なパッケージ版を CodeArtifact リポジトリに公開できます。これは、Artifact (アーティファクト) のソースコードまたは POM にアクセスできない場合に便利です。詳細については、「サードパーティのアーティファクト」を参照してください。