Sobes.tech
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:

  1. Automatiniai kodo testai (vienetų, integracijos testai).
  2. Artefaktų kūrimas (pvz., Go binariniai failai).
  3. Diegimas į staging aplinką rankiniam testavimui.
  4. 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