- if ( params.DO_STAGE_4 ) {
- try {
- sh "docker stack list |grep \"${container_name_prefix}\"| awk '{ print \$1 }'| xargs docker stack rm"
- }
- catch (caughtError) {
- println("Caught error: docker stack rm failed!")
- }
- }
- sh """
- export PATH=$PATH:/snap/bin
- installers/full_install_osm.sh -y -s ${container_name} --test --nolxd --nodocker --nojuju --nohostports --nohostclient \
- --nodockerbuild -t ${container_name} \
- -w /tmp/osm \
- ${commit_id} \
- ${repo_distro} \
- ${repo_base_url} \
- ${repo_key_name} \
- ${release} \
- ${params.BUILD_FROM_SOURCE}
- """
+ else
+ {
+ repo_base_url = "-u http://${NODE_IP_ADDRESS}:${repo_port}"
+ }
+
+ remote.name = container_name
+ remote.host = IP_ADDRESS
+ remote.user = 'ubuntu'
+ remote.identityFile = SSH_KEY
+ remote.allowAnyHosts = true
+ remote.logLevel = 'INFO'
+ remote.pty = true
+
+ sshCommand remote: remote, command: """
+ wget https://osm-download.etsi.org/ftp/osm-9.0-nine/install_osm.sh
+ chmod +x ./install_osm.sh
+ sed -i '1 i\\export PATH=/snap/bin:\${PATH}' ~/.bashrc
+ """
+
+ if ( useCharmedInstaller ) {
+
+ // Use local proxy for docker hub
+ sshCommand remote: remote, command: '''
+ sudo snap install microk8s --classic --channel=1.19/stable
+ sudo sed -i "s|https://registry-1.docker.io|http://172.21.1.1:5000|" /var/snap/microk8s/current/args/containerd-template.toml
+ sudo systemctl restart snap.microk8s.daemon-containerd.service
+ sudo snap alias microk8s.kubectl kubectl
+ '''
+
+ withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'gitlab-registry',
+ usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {
+ sshCommand remote: remote, command: """
+ ./install_osm.sh -y \
+ ${repo_base_url} \
+ ${repo_key_name} \
+ ${release} -r unstable \
+ --charmed \
+ --registry ${USERNAME}:${PASSWORD}@${INTERNAL_DOCKER_REGISTRY} \
+ --tag ${container_name}
+ """
+ }
+ prometheusHostname = "prometheus."+IP_ADDRESS+".xip.io"
+ prometheusPort = 80
+ osmHostname = "nbi."+IP_ADDRESS+".xip.io:443"
+ } else {
+ // Run -k8s installer here specifying internal docker registry and docker proxy
+ withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'gitlab-registry',
+ usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) {
+ sshCommand remote: remote, command: """
+ ./install_osm.sh -y \
+ ${repo_base_url} \
+ ${repo_key_name} \
+ ${release} -r unstable \
+ -d ${USERNAME}:${PASSWORD}@${INTERNAL_DOCKER_REGISTRY} \
+ -p ${INTERNAL_DOCKER_PROXY} \
+ -t ${container_name}
+ """
+ }
+ prometheusHostname = IP_ADDRESS
+ prometheusPort = 9091
+ osmHostname = IP_ADDRESS
+ }