Я хочу опубликовать артефакты Nexus на разных серверах.Для этого я использовал плагин Active Choices для создания интерфейса.
if (Select_Environment.equals("QA"))
{
return["x","x"]
}
else if (Select_Environment.equals("Dev"))
{
return["192.168.94.137","x"]
}
else if (Select_Environment.equals("Prod"))
{
return["x","x"]
}
else if (Select_Environment.equals("Stress"))
{
return["x", "x"]
}
Теперь я хочу написать сценарий оболочки для копирования артефактов развертывания на выбранный сервер.Может ли кто-нибудь помочь мне сделать это?Я использовал плагин метаданных maven для вывода списка артефактов.
Ниже приведена команда, используемая для копирования и извлечения артефакта на сервере развертывания.
#!/bin/bash
version="$Select_Release_Version_ARTIFACT_URL"
source=(/var/lib/jenkins/workspace/Test_Frontend_Parameterized_Deployment/*.tgz)
destination=(test@192.168.94.137:/usr/share/nginx/TESTFRONTEND/test.com/)
untar=$(ssh test@192.168.94.137 "cd /usr/share/nginx/TESTFRONTEND/test.com/ ; tar xzvf *.tgz")
#get the selected release artifact
selectRel(){
wget "$version"
}
#copy to deployment server selected artifacts
copytoDeploy(){
sudo scp $source $destination
}
extractArtifact(){
echo $untar
}
selectRel
copytoDeploy
extractArtifact