Skip to content
Snippets Groups Projects
Commit 79b1a6f4 authored by OZGCloud's avatar OZGCloud
Browse files

ozg-2877 start e2e environment with ansible

parent 7242f896
Branches
Tags
No related merge requests found
...@@ -303,14 +303,91 @@ pipeline { ...@@ -303,14 +303,91 @@ pipeline {
Void startEnvironment(String namespace, String goofyValues, String plutoValues, String imageTag, String bezeichner){ Void startEnvironment(String namespace, String goofyValues, String plutoValues, String imageTag, String bezeichner){
checkIfNamespaceExists(namespace) checkIfNamespaceExists(namespace)
parallel( setupAnsible(imageTag)
startGoofy: {
startGoofy(namespace, goofyValues, imageTag, bezeichner) rolloutKopStack(bezeichner)
}, addKeycloakGroups(bezeichner)
startPluto: { addKeycloakUser(bezeichner)
startPluto(namespace, plutoValues, bezeichner) }
Void setupAnsible(String goofyImageTag) {
checkoutProvisioningRepo()
setGoofyImageVersion(goofyImageTag)
}
Void checkoutProvisioningRepo() {
withCredentials([usernamePassword(credentialsId: 'jenkins-gitea-access-token', passwordVariable: 'TOKEN', usernameVariable: 'USER')]) {
sh 'git clone https://${USER}:${TOKEN}@git.ozg-sh.de/mgm/provisioning.git'
sh 'git checkout ozg-2552'
}
}
Void setGoofyImageVersion(String goofyImageTag) {
dir('provisioning') {
def devVersions = readYaml file: "playbook/versions/dev.yaml"
devVersions.versions.goofy.image.tag = goofyImageTag
writeYaml file: "playbook/versions/dev.yaml", data: devVersions
sh "cat playbook/versions/dev.yaml"
}
}
Void rolloutKopStack(String bezeichner) {
container("ansible") {
dir('provisioning') {
def ansibleVars = """{
"k8s_context": "ozg-dev",
"kop_env": "dev",
"kop_bezeichner": ${bezeichner},
"kop_displayname": ${bezeichner},
"kop_postfach_api_key": "",
"install_afm_adapter": false,
"install_fs_adapter": false,
"external_db_enabled": false
}"""
sh "ansible-playbook playbook/rollout.yml --extra-vars ${ansibleVars}"
}
}
}
Void addKeycloakGroups(bezeichner) {
container("ansible") {
def groupFiles = sh (script: 'ls goofy-client/apps/goofy-e2e/src/fixtures/group', returnStdout: true)
groupFiles.split("\\n").each { group ->
def groupJson = sh (script: "cat goofy-client/apps/goofy-e2e/src/fixtures/group/${group}", returnStdout: true)
def ansibleVars = """{
"k8s_context": "ozg-dev",
"kop_env": "dev",
"keycloak_realm": "sh-${bezeichner}-dev",
"group": ${groupJson}
}"""
sh "ansible-playbook playbook/rollout.yml --extra-vars ${ansibleVars}"
}
}
}
Void addKeycloakUser(String bezeichner) {
def userFiles = sh (script: 'ls goofy-client/apps/goofy-e2e/src/fixtures/user', returnStdout: true)
userFiles.split("\\n").each { user ->
def userJson = readJSON file: 'goofy-client/apps/goofy-e2e/src/fixtures/user/'+user
def ansibleVars = """{
"k8s_context": "ozg-dev",
"kop_env": "dev",
"keycloak_realm": "sh-${bezeichner}-dev",
"user": ${userJson}
}"""
sh "ansible-playbook playbook/rollout.yml --extra-vars ${ansibleVars}"
} }
)
} }
Void publishE2ETestResult(String reportFolder, String reportName) { Void publishE2ETestResult(String reportFolder, String reportName) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment