|
@@ -29,6 +29,7 @@ pipeline {
|
|
|
booleanParam(name: 'borradb', description: 'Borra el objeto que creó la DB, no la DB', defaultValue: false)
|
|
booleanParam(name: 'borradb', description: 'Borra el objeto que creó la DB, no la DB', defaultValue: false)
|
|
|
booleanParam(name: 'servicelb', description: 'Crea el servicio LoadBalancer', defaultValue: false)
|
|
booleanParam(name: 'servicelb', description: 'Crea el servicio LoadBalancer', defaultValue: false)
|
|
|
booleanParam(name: 'servicenp', description: 'Crea el servicio NodePort', defaultValue: false)
|
|
booleanParam(name: 'servicenp', description: 'Crea el servicio NodePort', defaultValue: false)
|
|
|
|
|
+ booleanParam(name: 'latest', description: 'Instala la última versión', defaultValue: false)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
stages {
|
|
stages {
|
|
@@ -205,6 +206,7 @@ pipeline {
|
|
|
expression { !params.borradb }
|
|
expression { !params.borradb }
|
|
|
expression { !params.servicenp }
|
|
expression { !params.servicenp }
|
|
|
expression { !params.servicelb }
|
|
expression { !params.servicelb }
|
|
|
|
|
+ expression { !params.latest }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
steps {
|
|
steps {
|
|
@@ -261,6 +263,7 @@ pipeline {
|
|
|
expression { !params.borradb }
|
|
expression { !params.borradb }
|
|
|
expression { !params.servicenp }
|
|
expression { !params.servicenp }
|
|
|
expression { !params.servicelb }
|
|
expression { !params.servicelb }
|
|
|
|
|
+ expression { !params.latest }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
steps {
|
|
steps {
|
|
@@ -278,6 +281,37 @@ pipeline {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ stage('Despliega la aplicación en Kubernetes con la última imagen') {
|
|
|
|
|
+ when {
|
|
|
|
|
+ allOf {
|
|
|
|
|
+ expression { !params.clean }
|
|
|
|
|
+ expression { !params.namespace }
|
|
|
|
|
+ expression { !params.borranamespace }
|
|
|
|
|
+ expression { !params.claims }
|
|
|
|
|
+ expression { !params.borraclaims }
|
|
|
|
|
+ expression { !params.creadb }
|
|
|
|
|
+ expression { !params.borradb }
|
|
|
|
|
+ expression { !params.servicenp }
|
|
|
|
|
+ expression { !params.servicelb }
|
|
|
|
|
+ expression { params.latest }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ steps {
|
|
|
|
|
+ echo "Desplegando la aplicación"
|
|
|
|
|
+ container('kubectl') {
|
|
|
|
|
+ withCredentials([file(credentialsId: env.Destino, variable: 'KUBECONFIG')]) {
|
|
|
|
|
+ sh """#!/bin/bash
|
|
|
|
|
+ sed -i 's|<NS>|"${NAMESPACE}"|' K8S/${NOMBRE_APP}-deployment.yaml
|
|
|
|
|
+ sed -i 's|<REGISTRO>|${REGISTRO}|' K8S/${NOMBRE_APP}-deployment.yaml
|
|
|
|
|
+ sed -i "s/<TAG>/latest}/" K8S/${NOMBRE_APP}-deployment.yaml
|
|
|
|
|
+ kubectl delete -f K8S/${NOMBRE_APP}-deployment.yaml || true
|
|
|
|
|
+ kubectl apply -f K8S/${NOMBRE_APP}-deployment.yaml
|
|
|
|
|
+ """
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
post {
|
|
post {
|