Skip to content

Manual jobs preceded by stages with failed jobs are marked as skipped

Summary

In GitLab CI: manual jobs preceded by stages with failed jobs are marked as skipped and can't be started.

Steps to reproduce

Create a .gitlab-ci.yaml with job description with at least two stages. Define jobs in step n among which at least one fails, define a manual job in step n+1.

Example Project

I'm attaching partial .gitlab-ci.yaml in section below.

What is the current bug behavior?

I'm unable to run jobs when: manual, because job is marked as skipped and there's no button to run it.

image

However, when I cancel the pipeline, I'm able to run it:

image

What is the expected correct behavior?

Before update to 11.0.0, I was able to start a manual job (in my case adb install), despite previous jobs in preceding stage failed.

Relevant logs and/or screenshots

Interesting parts from .gitlab-ci.yaml:

# http://docs.gitlab.com/ce/ci/yaml/README.html
stages:
  [...]
  - test
  - deploy

[...more stages, jobs]

.acceptance-hil: &acceptance-hil
  stage: test
  dependencies:
    - hil node modules
    - D empty
  script:
    - [stuff...]
  retry: 2

.acc-hil-demo: &acc-hil-demo
  <<: *acceptance-hil
  [stuff...]

acc-hil-demo  0 9: *acc-hil-demo
[... more tests]
acc-hil-demo  8 9: *acc-hil-demo

[This is broken ↓↓]
adb install:
  stage: deploy
  script:
    - [stuff...]
  when: manual
  allow_failure: true

.publish: &publish
  stage: deploy
  script:
    - [stuff...]

Results of GitLab environment info

Expand for output of GitLab environment info
System information
System:        Ubuntu 14.04
Current User:    git
Using RVM:    no
Ruby Version:    2.4.4p296
Gem Version:    2.7.6
Bundler Version:1.16.2
Rake Version:    12.3.1
Redis Version:    3.2.11
Git Version:    2.17.1
Sidekiq Version:5.1.3
Go Version:    unknown

GitLab information Version: 11.0.0 Revision: b84bfb5 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: postgresql URL: https://gitlab.dcclabs.tv HTTP Clone URL: https://gitlab.dcclabs.tv/some-group/some-project.git SSH Clone URL: git@gitlab.dcclabs.tv:some-group/some-project.git Using LDAP: yes Using Omniauth: yes Omniauth Providers: github

GitLab Shell Version: 7.1.4 Repository storage paths:

  • default: /opt/git-repos/repositories Hooks: /opt/gitlab/embedded/service/gitlab-shell/hooks Git: /opt/gitlab/embedded/bin/git

Results of GitLab application Check

Expand for output related to the GitLab application check
Checking GitLab Shell ...
GitLab Shell version >= 7.1.4 ? ... OK (7.1.4)
Repo base directory exists?
default... yes
Repo storage directories are symlinks?
default... no
Repo paths owned by git:root, or git:git?
default... yes
Repo paths access is drwxrws---?
default... yes
hooks directories in repos are links: ... 
6/2 ... ok
6/3 ... ok
4/4 ... repository is empty
6/6 ... ok
15/7 ... ok
6/8 ... ok
6/9 ... ok
6/10 ... ok
23/11 ... ok
6/12 ... ok
23/13 ... ok
23/14 ... ok
23/15 ... ok
23/20 ... ok
23/21 ... ok
6/24 ... ok
6/25 ... ok
6/26 ... ok
23/29 ... ok
6/30 ... ok
50/31 ... ok
3/32 ... ok
6/34 ... ok
6/35 ... ok
51/36 ... ok
6/38 ... ok
39/41 ... ok
6/42 ... ok
6/43 ... ok
11/44 ... ok
11/45 ... ok
11/46 ... ok
6/48 ... ok
6/49 ... ok
6/50 ... ok
6/53 ... ok
6/55 ... ok
6/56 ... ok
6/57 ... ok
6/58 ... ok
6/59 ... ok
6/60 ... ok
6/61 ... ok
6/62 ... ok
6/63 ... ok
6/64 ... ok
6/65 ... ok
6/66 ... ok
6/67 ... ok
6/68 ... ok
6/69 ... ok
6/71 ... ok
6/73 ... ok
6/74 ... ok
6/75 ... ok
6/76 ... ok
6/77 ... ok
6/78 ... ok
116/79 ... ok
116/80 ... ok
2/81 ... ok
6/82 ... ok
6/83 ... ok
169/84 ... ok
169/85 ... ok
169/86 ... ok
169/87 ... ok
169/88 ... ok
169/89 ... ok
6/90 ... ok
169/91 ... ok
169/92 ... ok
169/93 ... ok
169/94 ... ok
169/95 ... ok
169/96 ... ok
169/97 ... ok
169/98 ... ok
169/99 ... ok
169/100 ... ok
169/101 ... ok
169/102 ... ok
169/103 ... ok
169/104 ... ok
169/105 ... ok
169/106 ... ok
169/107 ... ok
169/108 ... ok
169/109 ... ok
169/110 ... ok
169/111 ... ok
169/112 ... ok
6/113 ... ok
169/114 ... ok
169/115 ... ok
169/116 ... ok
169/117 ... ok
169/118 ... ok
169/119 ... ok
169/120 ... ok
169/121 ... ok
12/122 ... ok
12/123 ... ok
12/124 ... ok
12/125 ... ok
169/126 ... ok
169/127 ... ok
169/128 ... ok
6/129 ... ok
169/130 ... ok
175/131 ... ok
175/132 ... ok
175/133 ... ok
175/134 ... ok
175/135 ... ok
175/136 ... ok
175/137 ... ok
175/138 ... ok
175/139 ... ok
175/140 ... ok
175/141 ... ok
175/142 ... ok
175/143 ... ok
175/144 ... ok
175/145 ... ok
175/146 ... ok
175/147 ... ok
175/148 ... ok
175/149 ... ok
175/150 ... ok
175/151 ... ok
175/152 ... ok
175/153 ... ok
175/154 ... ok
6/155 ... ok
6/156 ... ok
6/157 ... ok
6/161 ... ok
6/163 ... ok
6/164 ... ok
6/165 ... ok
6/166 ... ok
169/168 ... ok
6/169 ... ok
6/170 ... ok
171/171 ... ok
6/172 ... ok
6/173 ... ok
6/174 ... ok
6/175 ... ok
6/176 ... ok
12/177 ... ok
6/178 ... ok
6/179 ... ok
152/180 ... ok
23/181 ... ok
6/182 ... ok
6/183 ... ok
6/184 ... ok
6/185 ... ok
6/186 ... ok
6/187 ... ok
6/188 ... ok
6/189 ... ok
6/191 ... ok
6/192 ... ok
6/195 ... ok
6/196 ... ok
6/197 ... ok
6/198 ... ok
6/199 ... ok
14/200 ... ok
11/201 ... ok
6/204 ... ok
201/205 ... ok
201/206 ... ok
145/207 ... ok
23/208 ... ok
6/209 ... ok
6/211 ... ok
8/212 ... ok
211/213 ... ok
207/215 ... ok
6/216 ... ok
6/217 ... ok
132/220 ... ok
6/221 ... ok
6/222 ... ok
98/223 ... repository is empty
98/224 ... repository is empty
201/226 ... ok
211/227 ... ok
211/230 ... ok
6/231 ... ok
6/232 ... ok
6/234 ... ok
6/235 ... ok
6/236 ... ok
6/238 ... ok
6/239 ... ok
6/240 ... repository is empty
6/241 ... ok
6/242 ... ok
11/243 ... ok
6/244 ... ok
6/245 ... ok
6/246 ... ok
6/247 ... ok
6/248 ... ok
6/250 ... ok
6/251 ... ok
6/252 ... ok
6/253 ... ok
6/254 ... ok
6/255 ... ok
6/256 ... ok
6/257 ... ok
6/258 ... ok
6/259 ... ok
6/260 ... ok
6/261 ... ok
6/262 ... ok
6/263 ... ok
6/264 ... ok
6/265 ... ok
12/266 ... ok
6/267 ... ok
6/268 ... ok
201/269 ... ok
6/270 ... ok
6/271 ... ok
201/272 ... repository is empty
3/273 ... ok
6/274 ... ok
6/275 ... ok
6/276 ... ok
6/277 ... ok
6/278 ... ok
6/279 ... ok
6/280 ... ok
6/281 ... ok
6/282 ... ok
6/283 ... ok
6/285 ... ok
6/286 ... ok
6/287 ... ok
6/288 ... ok
6/290 ... ok
94/291 ... ok
329/292 ... ok
329/293 ... ok
329/294 ... ok
6/295 ... ok
145/296 ... ok
306/297 ... repository is empty
6/298 ... ok
329/299 ... ok
180/300 ... ok
6/301 ... ok
6/302 ... ok
6/303 ... ok
3/305 ... ok
324/306 ... repository is empty
340/307 ... ok
127/308 ... ok
6/309 ... ok
6/310 ... ok
6/311 ... ok
6/312 ... ok
6/313 ... ok
284/314 ... ok
6/315 ... ok
6/316 ... ok
6/317 ... ok
6/318 ... ok
6/319 ... ok
99/320 ... ok
6/321 ... ok
6/322 ... ok
6/323 ... ok
6/324 ... ok
329/326 ... ok
6/327 ... repository is empty
6/328 ... repository is empty
296/329 ... ok
324/330 ... ok
324/331 ... ok
284/332 ... ok
329/342 ... ok
383/344 ... ok
383/345 ... ok
383/346 ... ok
322/347 ... ok
322/349 ... ok
6/350 ... ok
329/351 ... ok
383/353 ... ok
389/354 ... ok
389/355 ... ok
389/356 ... ok
365/357 ... repository is empty
318/358 ... repository is empty
6/359 ... ok
6/360 ... ok
Running /opt/gitlab/embedded/service/gitlab-shell/bin/check
Check GitLab API access: OK
Redis available via internal API: OK
Access to /var/opt/gitlab/.ssh/authorized_keys: OK
gitlab-shell self-check successful
Checking GitLab Shell ... Finished
Checking Sidekiq ...
Running? ... yes
Number of Sidekiq processes ... 1
Checking Sidekiq ... Finished
Reply by email is disabled in config/gitlab.yml
Checking LDAP ...
Server: ldapmain
LDAP authentication... Success
LDAP users with access to your GitLab server (only showing the first 100 results)
[censored]
Checking LDAP ... Finished
Checking GitLab ...
Git configured correctly? ... yes
Database config exists? ... yes
All migrations up? ... yes
Database contains orphaned GroupMembers? ... no
GitLab config exists? ... yes
GitLab config up to date? ... yes
Log directory writable? ... yes
Tmp directory writable? ... yes
Uploads directory exists? ... yes
Uploads directory has correct permissions? ... yes
Uploads directory tmp has correct permissions? ... yes
Init script exists? ... skipped (omnibus-gitlab has no init script)
Init script up-to-date? ... skipped (omnibus-gitlab has no init script)
Projects have namespace: ... 
6/2 ... yes
6/3 ... yes
4/4 ... yes
6/6 ... yes
15/7 ... yes
6/8 ... yes
6/9 ... yes
6/10 ... yes
23/11 ... yes
6/12 ... yes
23/13 ... yes
23/14 ... yes
23/15 ... yes
23/20 ... yes
23/21 ... yes
6/24 ... yes
6/25 ... yes
6/26 ... yes
23/29 ... yes
6/30 ... yes
50/31 ... yes
3/32 ... yes
6/34 ... yes
6/35 ... yes
51/36 ... yes
6/38 ... yes
39/41 ... yes
6/42 ... yes
6/43 ... yes
11/44 ... yes
11/45 ... yes
11/46 ... yes
6/48 ... yes
6/49 ... yes
6/50 ... yes
6/53 ... yes
6/55 ... yes
6/56 ... yes
6/57 ... yes
6/58 ... yes
6/59 ... yes
6/60 ... yes
6/61 ... yes
6/62 ... yes
6/63 ... yes
6/64 ... yes
6/65 ... yes
6/66 ... yes
6/67 ... yes
6/68 ... yes
6/69 ... yes
6/71 ... yes
6/73 ... yes
6/74 ... yes
6/75 ... yes
6/76 ... yes
6/77 ... yes
6/78 ... yes
116/79 ... yes
116/80 ... yes
2/81 ... yes
6/82 ... yes
6/83 ... yes
169/84 ... yes
169/85 ... yes
169/86 ... yes
169/87 ... yes
169/88 ... yes
169/89 ... yes
6/90 ... yes
169/91 ... yes
169/92 ... yes
169/93 ... yes
169/94 ... yes
169/95 ... yes
169/96 ... yes
169/97 ... yes
169/98 ... yes
169/99 ... yes
169/100 ... yes
169/101 ... yes
169/102 ... yes
169/103 ... yes
169/104 ... yes
169/105 ... yes
169/106 ... yes
169/107 ... yes
169/108 ... yes
169/109 ... yes
169/110 ... yes
169/111 ... yes
169/112 ... yes
6/113 ... yes
169/114 ... yes
169/115 ... yes
169/116 ... yes
169/117 ... yes
169/118 ... yes
169/119 ... yes
169/120 ... yes
169/121 ... yes
12/122 ... yes
12/123 ... yes
12/124 ... yes
12/125 ... yes
169/126 ... yes
169/127 ... yes
169/128 ... yes
6/129 ... yes
169/130 ... yes
175/131 ... yes
175/132 ... yes
175/133 ... yes
175/134 ... yes
175/135 ... yes
175/136 ... yes
175/137 ... yes
175/138 ... yes
175/139 ... yes
175/140 ... yes
175/141 ... yes
175/142 ... yes
175/143 ... yes
175/144 ... yes
175/145 ... yes
175/146 ... yes
175/147 ... yes
175/148 ... yes
175/149 ... yes
175/150 ... yes
175/151 ... yes
175/152 ... yes
175/153 ... yes
175/154 ... yes
6/155 ... yes
6/156 ... yes
6/157 ... yes
6/161 ... yes
6/163 ... yes
6/164 ... yes
6/165 ... yes
6/166 ... yes
169/168 ... yes
6/169 ... yes
6/170 ... yes
171/171 ... yes
6/172 ... yes
6/173 ... yes
6/174 ... yes
6/175 ... yes
6/176 ... yes
12/177 ... yes
6/178 ... yes
6/179 ... yes
152/180 ... yes
23/181 ... yes
6/182 ... yes
6/183 ... yes
6/184 ... yes
6/185 ... yes
6/186 ... yes
6/187 ... yes
6/188 ... yes
6/189 ... yes
6/191 ... yes
6/192 ... yes
6/195 ... yes
6/196 ... yes
6/197 ... yes
6/198 ... yes
6/199 ... yes
14/200 ... yes
11/201 ... yes
6/204 ... yes
201/205 ... yes
201/206 ... yes
145/207 ... yes
23/208 ... yes
6/209 ... yes
6/211 ... yes
8/212 ... yes
211/213 ... yes
207/215 ... yes
6/216 ... yes
6/217 ... yes
132/220 ... yes
6/221 ... yes
6/222 ... yes
98/223 ... yes
98/224 ... yes
201/226 ... yes
211/227 ... yes
211/230 ... yes
6/231 ... yes
6/232 ... yes
6/234 ... yes
6/235 ... yes
6/236 ... yes
6/238 ... yes
6/239 ... yes
6/240 ... yes
6/241 ... yes
6/242 ... yes
11/243 ... yes
6/244 ... yes
6/245 ... yes
6/246 ... yes
6/247 ... yes
6/248 ... yes
6/250 ... yes
6/251 ... yes
6/252 ... yes
6/253 ... yes
6/254 ... yes
6/255 ... yes
6/256 ... yes
6/257 ... yes
6/258 ... yes
6/259 ... yes
6/260 ... yes
6/261 ... yes
6/262 ... yes
6/263 ... yes
6/264 ... yes
6/265 ... yes
12/266 ... yes
6/267 ... yes
6/268 ... yes
201/269 ... yes
6/270 ... yes
6/271 ... yes
201/272 ... yes
3/273 ... yes
6/274 ... yes
6/275 ... yes
6/276 ... yes
6/277 ... yes
6/278 ... yes
6/279 ... yes
6/280 ... yes
6/281 ... yes
6/282 ... yes
6/283 ... yes
6/285 ... yes
6/286 ... yes
6/287 ... yes
6/288 ... yes
6/290 ... yes
94/291 ... yes
329/292 ... yes
329/293 ... yes
329/294 ... yes
6/295 ... yes
145/296 ... yes
306/297 ... yes
6/298 ... yes
329/299 ... yes
180/300 ... yes
6/301 ... yes
6/302 ... yes
6/303 ... yes
3/305 ... yes
324/306 ... yes
340/307 ... yes
127/308 ... yes
6/309 ... yes
6/310 ... yes
6/311 ... yes
6/312 ... yes
6/313 ... yes
284/314 ... yes
6/315 ... yes
6/316 ... yes
6/317 ... yes
6/318 ... yes
6/319 ... yes
99/320 ... yes
6/321 ... yes
6/322 ... yes
6/323 ... yes
6/324 ... yes
329/326 ... yes
6/327 ... yes
6/328 ... yes
296/329 ... yes
324/330 ... yes
324/331 ... yes
284/332 ... yes
329/342 ... yes
383/344 ... yes
383/345 ... yes
383/346 ... yes
322/347 ... yes
322/349 ... yes
6/350 ... yes
329/351 ... yes
383/353 ... yes
389/354 ... yes
389/355 ... yes
389/356 ... yes
365/357 ... yes
318/358 ... yes
6/359 ... yes
6/360 ... yes
Redis version >= 2.8.0? ... yes
Ruby version >= 2.3.5 ? ... yes (2.4.4)
Git version >= 2.9.5 ? ... yes (2.17.1)
Git user has default SSH configuration? ... yes
Active users: ... 317
Checking GitLab ... Finished

Possible fixes

Looks like a regression, but haven't looked into code.