Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Publier avec curl
Cette section explique comment utiliser le client HTTPcurl
pour publier des artefacts Maven sur un CodeArtifact repository. Publication d'artefacts aveccurl
peut être utile si vous ne possédez pas ou ne souhaitez pas installer le client Maven dans vos environnements.
Publier un artefact Maven aveccurl
-
Récupérez un CodeArtifact jeton d'autorisation en suivant les étapes décrites dansTransmettre un jeton d'authentification à l'aide d'une variable d'environnementet revenez à ces étapes.
-
Utilisez ce qui suit
curl
pour publier le fichier JAR sur un CodeArtifact repository :Dans chacun des
curl
Dans cette procédure, remplacez les espaces réservés suivants :Remplacez
mon_domaine
avec vos CodeArtifact nom de domaine.Remplacez
111122223333
avec l'ID du propriétaire de votre CodeArtifact domaine.Remplacez
us-west-2
avec la région dans laquelle vos activités CodeArtifact se trouve.Remplacez
my_repo
avec vos CodeArtifact nom du référentiel.
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
Important
Vous devez préfixer la valeur du paramètre
--data-binary
avec un paramètre@
character. Lorsque vous placez la valeur de guillemets droits, le@
doit être inclus dans les guillemets. -
Utilisez ce qui suit
curl
pour publier le POM sur un CodeArtifact repository :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
-
À ce stade, l'artefact Maven sera dans votre CodeArtifact référentiel avec le statut de
Unfinished
. Pour pouvoir consommer l'emballage, il doit être dans lePublished
état. Vous pouvez déplacer le colis depuisUnfinished
pourPublished
soit en téléchargeant unmaven-metadata.xml
dans votre package, ou appelez leMise à jour de l'API d'état des versions du packagepour modifier le statut.-
Option 1 : Utilisez ce qui suit
curl
pour ajouter une commandemaven-metadata.xml
fichier dans votre colis :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
L'exemple suivant est celui du contenu d'un
maven-metadata.xml
dans le fichier:<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>
-
Option 2 : Mettez à jour l'état du package vers
Published
avec leUpdatePackageVersionsStatus
API.aws codeartifact update-package-versions-status \ --domain
my_domain
\ --domain-owner111122223333
\ --repositorymy_repo
\ --format maven \ --namespacecom.mycompany.app
\ --packagemy-app
\ --versions1.0
\ --target-status Published
-
Si vous ne possédez que le fichier JAR d'un artefact, vous pouvez publier une version de package consommable sur un CodeArtifact référentiel utilisantmvn
. Cela peut être utile si vous n'avez pas accès au code source ou au POM de l'artefact. Consultez Publier des artefacts tiers pour plus de détails.