| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- check if user has manage access to project
- don't cache result of authorized_projects, because it's serialised with User object
- clear user sessions
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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):


TODO:
- [x] Implement in CI
- [x] Specs
- [x] Changelog
- [x] CI tests
- [ ] Documentation
/cc @vsizov @sytses @dzaporozhets
See merge request !198
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
```
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"
```
This 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.
|
| | |
|
| | |
|
|/ |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make configurable builds_path in application.yml
We have a new option in `application.yml`:
```
gitlab_ci:
builds_path: builds/
```
/cc @marin @vsizov
See merge request !193
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Allow to define per-job allow_failure parameter
It allows to ignore status of specific build when computing status for commit
YAML syntax:
```yaml
rspec:
script: aa
allow_failure: true
```

/cc @vsizov @sytses
See merge request !191
|
| |
| |
| |
| | |
It allows to ignore status of specific job when computed for commit
|
|\ \
| |/
|/|
| |
| |
| |
| |
| | |
Build trace in file
https://dev.gitlab.org/gitlab/gitlab-ci/issues/272
See merge request !167
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CI configuration with .gitlab-ci.yml
https://dev.gitlab.org/gitlab/gitlab-ci/issues/245
Example:
```
# Refs to skip
skip_refs: “deploy*”
# Run before each script
before_script:
- export PATH=$HOME/bin:/usr/local/bin:/usr/bin:/bin
- gem install bundler
- cp config/database.yml.mysql config/database.yml
- cp config/gitlab.yml.example config/gitlab.yml
- touch log/application.log
- touch log/test.log
- bundle install --without postgres production --jobs $(nproc)
- bundle exec rake db:create RAILS_ENV=test
# Parallel jobs, each line is parallel build
jobs:
- script: “rake spec”
runner: “ruby,postgres”
name: “Rspec”
- script: “rake spinach”
runner: “ruby,mysql”
name: “Spinach”
tags: true
branches: false
# Parallel deploy jobs
deploy_jobs:
“cap deploy production”
“cap deploy staging”
```
See merge request !110
|
| | |
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
adding specs for HipChatMessage exposed some issues with the way I was
building the matrix-commit style notification message, so it ended up being
quite a bit more changes than I expected.
The save call from the service configure form submits an empty string as
the server URL if left blank, which I've indicated to do in order to use
the default server, but Hash#merge will happily overwrite a full string with
a blank string if asked, so we need to break that out, along with the worker
options which get mutated into string hash keys, of which the HipChat client
seems to not understand. Additionally, add another spec to make sure we call
the Sidekiq worker with expected arguments.
|