Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Merge branch 'build-types' into 'master'

Allow to specify flexible list of types in yaml

First part of flexible pipeline build in GitLab CI

Having following `.gitlab-ci.yml`:
```
types:
- test
- deploy
- notify

rspec:
  script: "rspec"

rubocop:
  script: "rubocop"

staging:
  type: deploy
  script: "echo deploy"
  only:
  - master

production:
  type: deploy
  script: "echo production"
  only:
  - tags

dockerhub:
  type: notify
  script: "curl http://docker/hub/web/hook"

downstream:
  type: notify
  script: "curl http://build/downstream/jobs"
```

GitLab CI will trigger two test jobs in parallel, when finished it will trigged either staging or production, when finished it will trigger dockerhub and downstream in parallel.

The UI (screenshots are not for above YAML):
![Screen_Shot_2015-07-10_at_15.56.26](https://gitlab.com/gitlab-org/gitlab-ci/uploads/1f714b73772cf0d44168fb8e20e35561/Screen_Shot_2015-07-10_at_15.56.26.png)
![Screen_Shot_2015-07-10_at_15.57.19](https://gitlab.com/gitlab-org/gitlab-ci/uploads/fc9f458f2ca517d923a4382466fa99eb/Screen_Shot_2015-07-10_at_15.57.19.png)

TODO:
- [x] Implement in CI
- [x] Specs
- [x] Changelog
- [x] CI tests
- [ ] Documentation

/cc @vsizov @sytses @dzaporozhets

See merge request !198
latest commit 4841977167
@ayufan ayufan authored
Something went wrong with that request. Please try again.