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.
Configurez le gestionnaire de packages Swift avec CodeArtifact
Pour utiliser le Swift Package Manager afin de publier des packages vers ou de consommer des packages à partir de ceux-ci AWS CodeArtifact, vous devez d'abord configurer des informations d'identification pour accéder à votre CodeArtifact référentiel. La méthode recommandée pour configurer la CLI de Swift Package Manager avec vos CodeArtifact informations d'identification et le point de terminaison du référentiel consiste à utiliser la aws codeartifact login
commande. Vous pouvez également configurer le Swift Package Manager manuellement.
Configurer Swift avec la commande de connexion
Utilisez la aws codeartifact login
commande pour configurer le Swift Package Manager avec CodeArtifact.
Note
Pour utiliser la commande de connexion, Swift 5.8 ou version ultérieure est requis et Swift 5.9 ou version ultérieure est recommandé.
La aws codeartifact login
commande effectuera les opérations suivantes :
-
Récupérez un jeton d'authentification CodeArtifact et stockez-le dans votre environnement. La manière dont les informations d'identification sont stockées dépend du système d'exploitation de l'environnement :
macOS : une entrée est créée dans l'application macOS Keychain.
Linux et Windows : une entrée est créée dans le
~/.netrc
fichier.
Dans tous les systèmes d'exploitation, s'il existe une entrée d'informations d'identification, cette commande remplace cette entrée par un nouveau jeton.
Récupérez l'URL du point de terminaison de votre CodeArtifact dépôt et ajoutez-la à votre fichier de configuration Swift. La commande ajoute l'URL du point de terminaison du référentiel au fichier de configuration au niveau du projet situé à l'adresse
/path/to/project/.swiftpm/configuration/registries.json
.
Note
La aws codeartifact login
commande appelle swift package-registry
des commandes qui doivent être exécutées à partir du répertoire contenant le Package.swift
fichier. Pour cette raison, aws codeartifact login
la commande doit être exécutée depuis le projet Swift.
Pour configurer Swift à l'aide de la commande de connexion
Accédez au répertoire du projet Swift qui contient le
Package.swift
fichier de votre projet.Exécutez la commande suivante
aws codeartifact login
.Si vous accédez à un référentiel dans un domaine qui vous appartient, vous n'avez pas besoin de l'inclure
--domain-owner
. Pour de plus amples informations, veuillez consulter Domaines multi-comptes.aws codeartifact login --tool
swift
--domainmy_domain
\ --domain-owner111122223333
--repositorymy_repo
\ [--namespacemy_namespace
]
L'--namespace
option configure l'application pour qu'elle ne consomme les packages de votre CodeArtifact dépôt que s'ils se trouvent dans l'espace de noms désigné. CodeArtifact les espaces de noms sont synonymes de portées et sont utilisés pour organiser le code en groupes logiques et pour éviter les collisions de noms qui peuvent se produire lorsque votre base de code inclut plusieurs bibliothèques.
La période d'autorisation par défaut après l'appel login
est de 12 heures et login
doit être appelée pour actualiser régulièrement le jeton. Pour plus d'informations sur le jeton d'autorisation créé avec la login
commande, consultezJetons créés avec la login commande.
Configurer Swift sans la commande de connexion
Bien qu'il soit recommandé de configurer Swift avec la aws codeartifact login commande, vous pouvez également configurer le Swift Package Manager sans la commande de connexion en mettant à jour manuellement la configuration du Swift Package Manager.
Dans la procédure suivante, vous allez utiliser le AWS CLI pour effectuer les opérations suivantes :
Récupérez un jeton d'authentification CodeArtifact et stockez-le dans votre environnement. La manière dont les informations d'identification sont stockées dépend du système d'exploitation de l'environnement :
macOS : une entrée est créée dans l'application macOS Keychain.
Linux et Windows : une entrée est créée dans le
~/.netrc
fichier.
Récupérez l'URL du point de terminaison de votre CodeArtifact dépôt.
Dans le fichier
~/.swiftpm/configuration/registries.json
de configuration, ajoutez une entrée avec l'URL du point de terminaison de votre référentiel et le type d'authentification.
Pour configurer le Swift sans la commande de connexion
Dans une ligne de commande, utilisez la commande suivante pour récupérer un jeton CodeArtifact d'autorisation et le stocker dans une variable d'environnement.
Remplacez
my_domain
par votre nom de CodeArtifact domaine.Remplacez
111122223333
par l'ID de AWS compte du propriétaire du domaine. Si vous accédez à un référentiel dans un domaine qui vous appartient, vous n'avez pas besoin de l'inclure--domain-owner
. Pour de plus amples informations, veuillez consulter Domaines multi-comptes.
Obtenez le point de terminaison de votre CodeArtifact dépôt en exécutant la commande suivante. Le point de terminaison de votre dépôt est utilisé pour faire pointer le Swift Package Manager vers votre dépôt afin de consommer ou de publier des packages.
Remplacez
my_domain
par votre nom de CodeArtifact domaine.Remplacez
111122223333
par l'ID de AWS compte du propriétaire du domaine. Si vous accédez à un référentiel dans un domaine qui vous appartient, vous n'avez pas besoin de l'inclure--domain-owner
. Pour de plus amples informations, veuillez consulter Domaines multi-comptes.Remplacez
my_repo par le nom
de votre CodeArtifact dépôt.
L'URL suivante est un exemple de point de terminaison du référentiel.
https://
my_domain
-111122223333.d.codeartifact.us-west-2
.amazonaws.com/swift/my_repo
/Important
Vous devez l'ajouter à la
login
fin du point de terminaison de l'URL du référentiel lorsque vous l'utilisez pour configurer le Swift Package Manager. Cela est fait pour vous dans les commandes de cette procédure.Ces deux valeurs étant stockées dans des variables d'environnement, transmettez-les à Swift à l'aide de la
swift package-registry login
commande suivante :Ensuite, mettez à jour le registre des packages utilisé par votre application afin que toute dépendance soit extraite de votre CodeArtifact référentiel. Cette commande doit être exécutée dans le répertoire du projet où vous essayez de résoudre la dépendance du package :
L'
--scope
option configure l'application pour qu'elle ne consomme les packages de votre CodeArtifact référentiel que s'ils se situent dans le périmètre désigné. Les étendues sont synonymes d'CodeArtifact espaces de noms et sont utilisées pour organiser le code en groupes logiques et pour éviter les collisions de noms qui peuvent se produire lorsque votre base de code inclut plusieurs bibliothèques.-
Vous pouvez vérifier que la configuration a été correctement configurée en consultant le contenu du
.swiftpm/configuration/registries.json
fichier au niveau du projet en exécutant la commande suivante dans le répertoire de votre projet :$ cat .swiftpm/configuration/registries.json { "authentication" : { }, "registries" : { "[default]" : { "url" : "https://my-domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/swift/my-repo/" } }, "version" : 1 }
Maintenant que vous avez configuré le gestionnaire de packages Swift avec votre CodeArtifact dépôt, vous pouvez l'utiliser pour publier et utiliser des packages Swift depuis et vers celui-ci. Pour de plus amples informations, veuillez consulter Consommation et publication de packages Swift.