Junior — Middle
როგორ ახორციელებთ ცვლილებების განხორციელებას 'develop' და 'test' გარემოებში?
sobes.tech AI
პასუხი AI-სგან
ცვლილებების განთავსება 'develop' და 'test' გარემოებში ჩვეულებრივ ხდება ავტომატიზებული CI/CD პროცესების მეშვეობით:
- დეველოპერი ახდენს ცვლილებების push-ს
developშტილზე. - CI სისტემა (მაგ., Jenkins, GitLab CI, GitHub Actions) იწყებს ბილდს და ტესტებს.
- წარმატებით ჩატარებული ტესტების შემდეგ, არტეფაქტები ავტომატურად განთავსდება
developგარემოში ინტეგრაციის ტესტებისთვის. - ანალოგიურად,
testგარემოსთვის შეიძლება არსებობდეს ცალკე შტილი ან ტეგი, რომლის განახლებაც იწვევს განთავსებას ტესტის გარემოში.
ეს საშუალებას აძლევს სწრაფად და საიმედოდ განახორციელოს ცვლილებები, მინიმუმამდე შეამციროს ადამიანის შეცდომები. ხშირად გამოიყენება ინფრასტრუქტურული ინსტრუმენტები (Ansible, Terraform, Helm) კონფიგურაციების და განთავსებების მართვისთვის.
GitLab CI-ში მარტივი პაიპლაინის მაგალითი:
stages:
- build
- test
- deploy
build_job:
stage: build
script:
- ./build.sh
test_job:
stage: test
script:
- ./run_tests.sh
deploy_develop:
stage: deploy
script:
- ./deploy.sh develop
only:
- develop
deploy_test:
stage: deploy
script:
- ./deploy.sh test
only:
- test