Sobes.tech
Middle

GitLab-da düyməyə basaraq işin necə işlədiləcəyini necə tənzimləmək olar?

sobes.tech Süni İntellekt

AI-dan cavab

GitLab CI/CD-də işi əl ilə başlatmaq üçün .gitlab-ci.yml faylında iş təsvirində when: manual açar sözü istifadə olunur.

Nümunə:

stages:
  - build
  - deploy

build_job:
  stage: build
  script:
    - echo "Layihə qurulur..."
    # Qurma əmrləri

deploy_staging:
  stage: deploy
  script:
    - echo "Staging-ə yerləşdirmə..."
    # Yerləşdirmə əmrləri
  when: manual # Bu iş əl ilə başlamalıdır
  allow_failure: false # Əsasən false, amma açıq şəkildə göstərilib

İzah:

  • when: manual: GitLab-ə bildirir ki, bu iş kodda dəyişiklik (commit) və ya cədvələ görə avtomatik başlamayacaq. İstifadəçi tərəfindən GitLab interfeysində əl ilə başlatılmasını gözləyəcək.
  • allow_failure: false: Bu iş uğursuz olarsa, növbəti işlərin (əgər varsa) icra olunub-olunmayacağını müəyyən edir. false olaraq təyin olunubsa, bu işin uğursuzluğu halında pipeline dayandırılır. Əgər true olarsa, pipeline uğursuz olsa belə davam edir.

Bu konfiqurasiya ilə .gitlab-ci.yml faylını əlavə edib commit etdikdən sonra, GitLab pipeline interfeysində (CI/CD -> Pipelines) "Run" düyməsi görünəcək və ya vəziyyəti "Manual" kimi göstəriləcək. Bu düyməyə klikləmə ilə iş başlatmaq mümkündür.

Həmçinin, əl ilə işləri avtomatik işə salan mərhələlərə daxil etmək olar. Məsələn:

stages:
  - build
  - test
  - deploy

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

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

deploy_production:
  stage: deploy
  needs: [test_job]
  script:
    - echo "İstehsalata yerləşdirmə..."
  when: manual # Yalnız uğurlu testdən sonra və əl ilə
  variables:
    TARGET_ENVIRONMENT: "production" # Məsələn, əl ilə iş üçün dəyişənlərin ötürülməsi

Burada, deploy_production işi yalnız test_job uğurla tamamlandıqdan sonra əl ilə başlatmaq mümkündür.

Əlavə:

  • variables: Əl ilə işlər .gitlab-ci.yml faylında və ya layihə/qrup parametrlərində təyin olunan dəyişənləri istifadə edə bilər.
  • rules: Daha mürəkkəb iş başlatma ssenariləri rules açar sözü ilə when: manual birlikdə istifadə edilərək, əl ilə işin nə zaman əlçatan və ya məcburi olacağını müəyyən edə bilər.
  • API: Əl ilə işlər GitLab CI/CD API vasitəsilə də başlatıla bilər.

Nəticədə, when: manual GitLab-da işlərin əl ilə başlatılması üçün əsas mexanizmdir.