J'ai la configuration suivante dans mon pipeline jenkins
s3Upload( file:'ok.txt', bucket:'my-buckeck', path:'file.txt')
Le problème est que la fonction s3Upload ne prend pas les clés d'accès AWS que j'ai stockées dans Jenkins
j'ai attaché avec le code suivant
withAWS(profile:'Test Publisher') {
s3Upload( file:'ok.txt', bucket:'my-buckeck', path:'file.txt')
}
mon profil s3 dans jenkins est comme ça. je reçois toujours le fichier de profil n'a pas pu trouver d'erreur. Comment puis-je télécharger un fichier de jenkins vers s3 en utilisant la fonction s3Upload?
Pour pouvoir télécharger vers S3, vous devez enregistrer vos informations d'identification dans des variables d'environnement sur votre Jenkins:
AWS_DEFAULT_REGION=<region of bucket>
AWS_ACCESS_KEY_ID=<aws id>
AWS_SECRET_ACCESS_KEY=<your s3 access key>
Pour ce faire, allez simplement dans Jenkins - Gérer Jenkins - Configurer le système - Propriétés globales - Variables d'environnement
Je pense que vous avez peut-être confondu le plugin S3 Publisher avec le plugin AWS.
Cette capture d'écran provient du plugin S3 Publisher, https://wiki.jenkins.io/display/JENKINS/S3+Plugin . Il y a un avertissement de ne pas mettre à jour vers la dernière version. Il semble que la compatibilité avec le pipeline soit rompue, il y a cet avertissement "Version 0.10.11 (31 décembre 2016) - ne pas mettre à jour - la compatibilité descendante des scripts de pipeline est rompue".
Cependant, il semble que votre code de pipeline soit destiné au plugin Jenkins AWS. https://github.com/jenkinsci/pipeline-aws-plugin . Pour utiliser les informations d'identification avec ce plugin, vous devez effectuer l'une des opérations suivantes:
Ces options sont documentées dans le plugin README https://github.com/jenkinsci/pipeline-aws-plugin
Use Jenkins UsernamePassword credentials information (Username: AccessKeyId, Password: SecretAccessKey):
withAWS(credentials:'nameOfSystemCredentials') {
// do something
}
Use profile information from ~/.aws/config:
withAWS(profile:'myProfile') {
// do something
}
"profil" est la section de profil de votre fichier de configuration AWS. http://docs.aws.Amazon.com/cli/latest/userguide/cli-multiple-profiles.html
Ensuite, vous pouvez utiliser la fonction de téléchargement S3. https://github.com/jenkinsci/pipeline-aws-plugin#s3upload