rules-directive does not allow to start any manual jobs aftert another stage with manual jobs

Summary

With the new "rules"-directive (https://docs.gitlab.com/ce/ci/yaml/#rules) it is not possible to execute any manual jobs after a stage with manual jobs: pipeline

Only when ALL jobs of a stage have been executed the jobs of the next stage are executeable. So we would habe to deploy the master to all test and stage-systems first.

Steps to reproduce

Use .gitlab-ci.yml from example-project below.

Example Project

  • .gitlab-ci.yml with "rules"
  • .gitlab-ci.yml with "when"

What is the current bug behavior?

Jobs after a stage with manual jobs are not executeable before all have been executed.

What is the expected correct behavior?

Jobs with "when: manual" should be executeable

Relevant logs and/or screenshots

pipeline

Results of GitLab environment info

Expand for output related to GitLab environment info
System information
System:
Current User:   git
Using RVM:      no
Ruby Version:   2.6.3p62
Gem Version:    2.7.9
Bundler Version:1.17.3
Rake Version:   12.3.2
Redis Version:  3.2.12
Git Version:    2.22.0
Sidekiq Version:5.2.7
Go Version:     unknown

GitLab information Version: 12.3.3 Revision: ab531f31825 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: PostgreSQL DB Version: 10.9 Using LDAP: yes Using Omniauth: yes Omniauth Providers:

GitLab Shell Version: 10.0.0 Repository storage paths:

  • default: /var/opt/gitlab/git-data/repositories GitLab Shell path: /opt/gitlab/embedded/service/gitlab-shell Git: /opt/gitlab/embedded/bin/git

Possible fixes

Use "when" instead of "rules"

Edited Oct 02, 2019 by alexgit2k
Assignee Loading
Time tracking Loading