DevOps Fortgeschritten
GitLab CI — Erweiterte Pipelines¶
GitLab CICI/CDDevOpsPipeline 5 Min. Lesezeit
GitLab CI erweiterte Techniken: DAG-Pipelines, Child-Pipelines, Includes und Review Apps.
DAG-Pipelines¶
stages:
- build
- test
- deploy
build-frontend:
stage: build
script: npm run build
build-backend:
stage: build
script: go build -o app
test-frontend:
stage: test
needs: [build-frontend]
script: npm test
test-backend:
stage: test
needs: [build-backend]
script: go test ./...
deploy:
stage: deploy
needs: [test-frontend, test-backend]
script: kubectl apply -f k8s/
Child-Pipelines & Includes¶
include:
- project: 'devops/ci-templates'
file: '/templates/docker-build.yml'
- local: '.gitlab/security.yml'
trigger-microservices:
trigger:
include:
- local: services/api/.gitlab-ci.yml
- local: services/worker/.gitlab-ci.yml
strategy: depend
Review Apps¶
deploy-review:
stage: deploy
script:
- helm upgrade --install review-$CI_COMMIT_REF_SLUG ./chart
--set image.tag=$CI_COMMIT_SHA
--set ingress.host=$CI_COMMIT_REF_SLUG.review.example.com
environment:
name: review/$CI_COMMIT_REF_SLUG
url: https://$CI_COMMIT_REF_SLUG.review.example.com
on_stop: stop-review
auto_stop_in: 1 week
rules:
- if: $CI_MERGE_REQUEST_IID
Zusammenfassung¶
GitLab CI mit DAG-Pipelines, Child-Pipelines und Review Apps ermöglicht skalierbare und schnelle Pipelines.
Brauchen Sie Hilfe bei der Implementierung?¶
Unser Team hat Erfahrung mit dem Entwurf und der Implementierung moderner Architekturen. Wir helfen Ihnen gerne.