oginstaller/Jenkinsfile

63 lines
2.3 KiB
Groovy

pipeline {
agent {
label 'ogAdministrator'
}
parameters {
string(name: 'BRANCH', defaultValue: 'main', description: 'Deployment environment')
string(name: 'EXTRA_NAME', description: 'Some additional text to better identify the VMs within ESXi')
string(name: 'NUMBER_OF_CLIENTS', defaultValue: '1', description: 'Number of clients to deploy')
string(name: 'DEFAULT_UDS_REST_URL', defaultValue: 'https://uds-broker.evlt.uma.es/uds/rest/', description: 'UDS REST URL')
string(name: 'DEFAULT_UDS_AUTHENTICATOR' , defaultValue: 'Usuarios locales', description: 'UDS REST authenticator')
string(name: 'DEFAULT_OGLIVE' , defaultValue: 'ogLive-noble-6.8.0-31-generic-amd64-r20240716_20241014.iso', description: 'oGLive ISO image')
}
environment {
UDS_CREDENTIALS = credentials('UDS_CREDENTIALS')
BRANCH = "${params.BRANCH}"
VI_USERNAME = 'root'
VI_PASSWORD = credentials('VI_PASSWORD')
GITEA_USER = "unizar"
GITEA_TOKEN = credentials('GITEA_TOKEN')
VAGRANT_FILE = "Vagrantfile-esxi"
ESXI_PASSWORD = credentials('VI_PASSWORD')
USER_SSK_PRIVATE_KEY = credentials('ognproject-ssh-private-key')
}
stages {
stage ('Create environment') {
steps {
script {
sh """
echo "BRANCH: ${BRANCH}"
echo "EXTRA_NAME: ${EXTRA_NAME}"
echo "NUMBER_OF_CLIENTS: ${NUMBER_OF_CLIENTS}"
echo "DEFAULT_UDS_REST_URL: ${DEFAULT_UDS_REST_URL}"
echo "DEFAULT_UDS_AUTHENTICATOR: ${DEFAULT_UDS_AUTHENTICATOR}"
echo "DEFAULT_OGLIVE: ${DEFAULT_OGLIVE}"
echo "UDS_CREDENTIALS: ${UDS_CREDENTIALS}"
echo "VI_USERNAME: ${VI_USERNAME}"
echo "VI_PASSWORD: ${VI_PASSWORD}"
echo "GITEA_USER: ${GITEA_USER}"
echo "GITEA_TOKEN: ${GITEA_TOKEN}"
echo "VAGRANT_FILE: ${VAGRANT_FILE}"
echo "ESXI_PASSWORD: ${ESXI_PASSWORD}"
chmod 755 vagrant/provision_esxi_net.sh
cat vagrant/provision_esxi_net.sh
echo "vagrant/provision_esxi_net.sh executed"
cp $USER_SSK_PRIVATE_KEY installer/vagrant/config/id_rsa
BRANCH_EXTRA=$BRANCH
EXTRA_NAME=${EXTRA_NAME// /}
[[ -n $EXTRA_NAME ]] && BRANCH_EXTRA=$BRANCH-$EXTRA_NAME
export BRANCH_EXTRA
echo ========================= Setting up an ESXi network
installer/vagrant/provision_esxi_net.sh $BRANCH_EXTRA
"""
}
}
}
}
}