Junior — Middle
Kaip vykdėte naujinimų leidimą ankstesnėje pareigybėje?
sobes.tech AI
Atsakymas iš AI
Anksčiau, atnaujinimų leidimas buvo vykdomas per CI/CD pipeline, kuris apėmė šiuos žingsnius:
- Automatiniai kodo testai (vienetų, integracijos testai).
- Artefaktų kūrimas (pvz., Go binariniai failai).
- Diegimas į staging aplinką rankiniam testavimui.
- Sėkmingai išbandžius — automatinis arba rankinis diegimas į gamybą.
Siekiant sumažinti prastovų laiką, naudotos strategijos kaip rolling update arba blue-green deployment, siekiant užtikrinti paslaugos tęstinumą. Kritinių klaidų atveju buvo galimybė greitai grįžti prie ankstesnės stabilios versijos.
GitLab CI konfigūracijos pavyzdys:
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