gitlabgitlab-cigitlab-ci-runnergitlab-8

Gitlab manual steps are skipped by default. How to stop that?


Currently, In my gitlab configuration workflow, i have some manual stage tests. So I can decide if the test pass or fail. Now the manual steps are always skipped by default. Whenever the normal stage steps are building it jump to another normal stage without considering manual steps. Now, How i can make it work. Please help me in this.enter image description here

stages:
 -  start_pipeline
 -  auto_testing
 -  manual_test_PASS
 -  manual_test_FAIL
 -  UAT_test_PASS
 -  UAT_test_FAIL
 -  Validation_PASS
 -  Validation_FAIL
 -  merge_to_master
variables:

start_pipeline:
  stage: start_pipeline
  script:
    - if [[ -d "$USER_DIR" ]]; then echo -e "Direcory exists"; else sudo mkdir -p $USER_DIR; fi
    - sudo chown -R root:gitlab-runner ${TARGET}/*

auto_testing:
stage: auto_testing
script:
 - find . -type d -name "manifests" -exec chown -R gitlab-runner:gitlab-runner {} \;
 - find . -type d -name "manifests" -exec puppet parser validate {} \;
 - if [[ -d "$PRODUCTION_TARGET" ]]; then echo -e "Direcory exists"; else sudo mkdir -p $PRODUCTION_TARGET; fi
 - if [[ -d "$LAB_TARGET" ]]; then echo -e "Direcory exists"; else sudo mkdir -p $LAB_TARGET; fi

manual_test_FAIL:
  stage: manual_test_FAIL
  script:
    - echo "FAIL"
    - exit 1;
  when: manual

manual_test_PASS:
  stage: manual_test_PASS
  script:
    - echo "PASS"
    - sudo cp -r * ${TARGET}/${MODIFIED_COMMIT_USER}/
    - sudo cp -r * ${LAB_TARGET}/
    - sudo cp -r * ${PRODUCTION_TARGET}/
  dependencies:
    - auto_testing

Solution

  • I know this is likely too late to help you, but this is a known issue that they're targeting to fix in V9.0.

    https://gitlab.com/gitlab-org/gitlab-ce/issues/26360