Sobes.tech
Junior — Middle

Kako je finalni kod implementiran u produkciono okruženje u vašem poslednjem projektu?

sobes.tech АИ

Одговор од АИ

U mom poslednjem projektu, završni kod je implementiran u produkciono okruženje putem automatizovanog CI/CD pipeline-a. Nakon što su prošli svi testovi (jedinični, integracioni, e2e) i uspešno odobrenje koda, promene su automatski sastavljene i deploy-ovane na staging server za dodatnu proveru. Zatim, uz odobrenje, izvršen je deploy na produkciju pomoću alata za orkestraciju (npr. Kubernetes ili Docker Swarm). Ovaj pristup minimizira ljudski faktor i ubrzava izdavanje ažuriranja.

Primer pojednostavljenog pipeline-a na GitHub Actions:

name: Deploy
on:
  push:
    branches:
      - main
jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Build
        run: go build -o app ./...
      - name: Run tests
        run: go test ./...
      - name: Deploy to production
        if: success()
        run: |
          kubectl apply -f k8s/deployment.yaml