Search code examples
yamlgitlab-cicicd

Does Gitlab CI.yml take more resouce when pipelines are blocked than pipelines passed by "allow_failure = true"?


I'm modifying .gitlab-ci.yml in my project, so that the rules of jobs can be clear.

I found that my jobs are set as manual in "rules" block,and didn't set allow_failure. According to the spec. ,the default value is false.

After I push new commit, those manual jobs are waiting manual start.And the pipeline will show "blocked".

However, if I set "allow_failure = TRUE",the result of pipeline would be "passed".

I'm wondering if the "blocked" status are still in the system,and takes more resource than "passed" status take.

Should I set allow_failure as true in manual jobs?


Solution

  • The blocked status (it called manual in the API) does not require any additional resources as well as allow_failure:false.

    There are two types of manual jobs: optional and blocking. optional jobs do not have to finish successfully to have pipeline finished with success. In turn blocking jobs must finish successfully to have pipeline finished with success.

    The blocked status is used to show on the web UI that there are blocked manual jobs in the pipeline that have not yet been executed.