Primeiro commit
This commit is contained in:
Vendored
+64
@@ -0,0 +1,64 @@
|
||||
pipeline {
|
||||
agent any
|
||||
|
||||
environment {
|
||||
REGISTRY = "10.77.77.41:5000/slalog"
|
||||
IMAGE_NAME = "sla-separacao"
|
||||
IMAGE_TAG = "${BUILD_NUMBER}"
|
||||
K8S_DIR = "k8s"
|
||||
K8S_NAMESPACE = "ci-cd"
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Checkout') {
|
||||
steps {
|
||||
checkout scm
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build Docker Image') {
|
||||
steps {
|
||||
script {
|
||||
sh """
|
||||
docker build -t ${REGISTRY}/${IMAGE_NAME}:${IMAGE_TAG} .
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Push Docker Image') {
|
||||
steps {
|
||||
script {
|
||||
sh """
|
||||
docker push ${REGISTRY}/${IMAGE_NAME}:${IMAGE_TAG}
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Deploy to Kubernetes') {
|
||||
steps {
|
||||
script {
|
||||
sh """
|
||||
export KUBECONFIG=/var/lib/jenkins/.kube/config
|
||||
sed -i 's|image: .*sla-separacao:.*|image: ${REGISTRY}/${IMAGE_NAME}:${IMAGE_TAG}|' k8s/deployment.yaml
|
||||
kubectl apply -n ${K8S_NAMESPACE} -f k8s/deployment.yaml
|
||||
kubectl apply -n ${K8S_NAMESPACE} -f k8s/service.yaml
|
||||
kubectl apply -n ${K8S_NAMESPACE} -f k8s/hpa.yaml
|
||||
git checkout -- k8s/deployment.yaml
|
||||
kubectl rollout status deployment/sla-separacao-deployment -n ${K8S_NAMESPACE} --timeout=180s
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
post {
|
||||
success {
|
||||
echo "Deploy realizado com sucesso."
|
||||
}
|
||||
failure {
|
||||
echo "Falha no pipeline."
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user