Sobes.tech
Middle

GitLabda tugmani bosish bilan vazifani qanday sozlash mumkin?

sobes.tech AI

AIdan javob

GitLab CI/CD da qo'lda ishga tushirishni sozlash uchun .gitlab-ci.yml faylida ish ta'rifida when: manual kalit so'zi ishlatiladi.

Misol:

stages:
  - build
  - deploy

build_job:
  stage: build
  script:
    - echo "Loyihani qurish..."
    # Qurish buyruqlari

deploy_staging:
  stage: deploy
  script:
    - echo "Stagingga joylash..."
    # Joylash buyruqlari
  when: manual # Bu ish qo'lda boshlanishi kerak
  allow_failure: false # Standart ravishda false, lekin aniq ko'rsatilgan

Tushuntirish:

  • when: manual: GitLabga bu ish kodni o'zgartirish (commit) yoki jadval bo'yicha avtomatik boshlanmaydi, foydalanuvchi GitLab interfeyzi orqali qo'lda boshlashini kutadi.
  • allow_failure: false: Bu ish muvaffaqiyatsiz tugasa, keyingi ishlar (agar mavjud bo'lsa) bajariladimi yoki yo'qligini belgilaydi. false ga o'rnatilgan bo'lsa, pipeline bu ish muvaffaqiyatsiz bo'lsa to'xtaydi. true bo'lsa, pipeline davom etadi.

Bunday sozlamalar bilan .gitlab-ci.yml faylini qo'shib, commit qilgandan so'ng, GitLab pipeline interfeysida (CI/CD -> Pipelines) "Run" tugmasi paydo bo'ladi yoki uning holati "Manual" sifatida ko'rsatiladi. Bu tugmani bosish ishni boshlash uchun.

Shuningdek, qo'lda ishlarni avtomatik ishga tushiradigan bosqichlarga qo'shish mumkin. Masalan:

stages:
  - build
  - test
  - deploy

build_job:
  stage: build
  script:
    - echo "Qurilmoqda..."

test_job:
  stage: test
  needs: [build_job]
  script:
    - echo "Test qilinmoqda..."

deploy_production:
  stage: deploy
  needs: [test_job]
  script:
    - echo "Tashkilotga joylash..."
  when: manual # Faqat muvaffaqiyatli testdan so'ng va qo'lda
  variables:
    TARGET_ENVIRONMENT: "production" # Masalan, qo'lda ish uchun o'zgaruvchilarni uzatish

Bu yerda deploy_production ish faqat test_job muvaffaqiyatli tugagandan so'ng qo'lda boshlash uchun ochiladi.

Qo'shimcha:

  • variables: Qo'lda ishlar .gitlab-ci.yml faylida yoki loyiha/guruh sozlamalarida belgilangan o'zgaruvchilarni ishlatishi mumkin.
  • rules: Murakkabroq ish boshlash ssenariyalari rules kalit so'zi bilan when: manual bilan birga ishlatilishi mumkin, shartlarni belgilash uchun.
  • API: Qo'lda ishlar GitLab CI/CD API orqali ham boshlanishi mumkin.

Shunday qilib, when: manual GitLabda ishlarni qo'lda boshlash uchun asosiy mexanizm hisoblanadi.