Junior — Middle
Эмне үчүн сиз мурдагы кызматта жаңыртууларды чыгардыңыз?
sobes.tech AI
AIден жооп
Նախորդ դիրքում, թարմացումների հրապարակումը կատարվում էր CI/CD պիպլայնի միջոցով, որը ներառում էր հետևյալ քայլերը:
- Կոդի ավտոմատ թեստավորում (միավոր, ինտեգրացիոն թեստեր):
- Արտադրանքի հավաքում (օրինակ, Go բինարներ):
- Դեպլոյմենտ ստեյջի վրա ձեռքով թեստավորման համար:
- Հաջող թեստավորումից հետո՝ ավտոմատ կամ ձեռքով դեպլոյմենտ արտադրության մեջ:
Ծառայության անընդհատությունը ապահովելու համար օգտագործվում էին ռոլինգ թարմացումներ կամ blue-green deployment ռազմավարություններ, որպեսզի ապահովեն ծառայության շարունակականությունը: Կրիտիկական սխալների դեպքում հնարավոր էր արագ վերադառնալ նախորդ կայուն տարբերակին:
GitLab CI-ի օգտագործմամբ դեպլոյմենտի կոնֆիգուրացիայի օրինակ:
stages:
- test
- build
- deploy
test_job:
stage: test
script:
- go test ./...
build_job:
stage: build
script:
- go build -o myapp
artifacts:
paths:
- myapp
deploy_job:
stage: deploy
script:
- ./deploy.sh myapp
when: manual
environment:
name: production
url: https://myapp.example.com