Скопируйте артефакты на сервер развертывания - PullRequest
0 голосов
/ 15 ноября 2018

Я хочу опубликовать артефакты 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 для вывода списка артефактов.

deploy

Ниже приведена команда, используемая для копирования и извлечения артефакта на сервере развертывания.

#!/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
...