Alors, voici ma solution:
- Jenkins dans la section build, ajoutez 'Exécuter shell' étape et faire scp là pour pom.xml et le dossier src de l'espace de travail Jenkins instance EC2 dossier tmp dans mon cas, il ressemble à ceci:
scp -i ../../../jobs/utilities/keys/.pem pom.xml [email protected] amazonaws.com:/tmp
scp -i ../../../jobs/utilities/keys/.pem -r src ec2-utilisateur @ ec2- 00-000-00.compute.amazonaws.com:/tmp
- puis ajoutez 'Envoyer des fichiers ou exécuter la commande via SSH' étape et dans la section de commande Exec mis à côté:
sudo rm - RF ../../my_project_folder_name/
mkdir ../../my_project_folder_name sudo
cd ../../tmp
pom.xml cp ../my_project_folder_name/ sudo
sudo cp -r src ../my_project_folder_name
cd ../my_project_folder_name
mvn sudo essai propre
- puis ajoutez une plus 'Execute shell' étape pour copier tous les fichiers de tag = dossier rget pour pouvoir les utiliser pour différents rapports:
scp -i ../../../jobs/utilities/keys/.pem -r ec2-user @ ec2 -00-000-00.compute.amazonaws.com:/my_project_folder_name/target.
C'est tout :)
Votre instance EC2 distante se trouve sur une machine fixe ou dynamique. – chenrui
Il est sur la machine fixe pour l'instant – SeraphimaTW
Donc vous pouvez essayer d'utiliser le plugin SSH pour faire cette chose. Envoie l'artefact via SSH et exécute l'artefact sur la machine distante. – chenrui