Commit Graph
22 Commits
Author SHA1 Message Date
Rémy Coutable f45b9bdef0 Merge branch 'fix-build-dependencies' into 'master'
Fix build dependencies, when the dependency is a string

Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/14485

See merge request !3344
2016-03-23 12:59:29 +01:00
Kamil TrzcińskiandRémy Coutable 0fcea6b660 Merge branch 'feature-ci-only-except-trigger' into 'master'
CI: Add 'triggers' keyword to 'only' and 'except' lists to allow control over when triggers cause builds to run

Currently, the `only` and `except` keywords in `.gitlab-ci.yml` only accept ref names or the special `branches` and `tags` keywords. However, these are primarily useful when controlling how repository activity affects the creation of builds. In my case, instead of building on every commit, I'd like to use the following logic:

- If the repository is tagged, do a build.
- Any other normal commits should not cause a build.
- If a build is triggered via the API, always create one for the specified ref.

From what I can tell, this isn't possible via the existing YAML syntax. In this MR, I introduce a new keyword `triggers` that goes along with `branches` and `tags`. I can implement the logic above using the following job configuration:

```yaml
only:
  - tags
  - triggers
```

I updated the tests and documentation to reflect this and everything seems to pass.

See merge request !3230
2016-03-22 12:34:20 +01:00
Kamil Trzcinski 388f69b0de Merge remote-tracking branch 'origin/master' into gitlab-ci-yaml-updates
# Conflicts:
#	spec/lib/ci/gitlab_ci_yaml_processor_spec.rb
2016-03-11 14:22:49 +01:00
Kamil Trzcinski 9a271d8012 Allow to define on which builds the current one depends on 2016-03-11 14:15:13 +01:00
Kamil Trzcinski d300ecf8d9 Allow to pass name of created artifacts archive in .gitlab-ci.yml 2016-03-11 13:43:57 +01:00
Kamil Trzcinski ad4d3a075f Describe special YAML features: the use of anchors and hidden jobs 2016-03-11 13:41:05 +01:00
Pascal Bach 344d6e6f89 Support YAML alias/anchor usage in .gitlab-ci.yml
This allows to reuse one job as a template for another one:

```
job1: &JOBTMPL
  script: execute-script-for-job

job2: *JOBTMPL

```

This also helps to solve some of the issues in #342

Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Fabio Huser <fabio.huser@siemens.com>
2016-03-08 08:49:32 +01:00
Kamil Trzcinski c45a6bf3ba Added cache:key to .gitlab-ci.yml allowing to fine tune the caching 2016-01-20 23:12:48 +01:00
Douwe Maan 50f8366a89 Merge branch 'complexity/rubocop-metrics' into 'master'
Enable rubocop metrics

This enables rubocop metrics like CyclomaticComplexity and ABCSize.
Initial threshold values are high, should be probably decreased.

See merge request !1802
2015-12-11 15:06:31 +00:00
Kamil Trzciński b4b9df277b Allow [Symbol] when loading YAML 2015-12-09 20:58:53 +00:00
Kamil Trzciński c5dacce4d7 Use YAML.safe_load 2015-12-09 19:50:00 +00:00
Grzegorz Bizon 652de0b820 Refactor CI YAML processor's validators 2015-12-08 08:43:09 +01:00
Kamil Trzcinski 58074ab7da Allow to define cache in .gitlab-ci.yml 2015-11-10 23:01:11 +01:00
Kamil Trzcinski 97f58bae87 Change artifacts syntax to allow uploading untracked files 2015-11-10 12:51:50 +01:00
Kamil Trzcinski d0e3e823a2 Implement Build Artifacts
- Offloads uploading to GitLab Workhorse
- Use /authorize request for fast uploading
- Added backup recipes for artifacts
- Support download acceleration using X-Sendfile
2015-11-10 12:51:50 +01:00
Kamil Trzcinski c03da1caad Extend yml syntax for only and except to support specifying repository path 2015-11-02 14:44:06 +01:00
Kamil Trzcinski 2305483d7d Require jobs to be named 2015-10-22 10:39:00 +02:00
Kamil Trzcinski 9419046196 Fix specs 2015-10-15 23:51:45 +02:00
Kamil Trzcinski 0aa6061d6a Implement when syntax in .gitlab-ci.yml 2015-10-15 23:49:39 +02:00
Kamil Trzcinski 317a746954 Make commit_spec run 2015-10-05 12:02:26 +02:00
Kamil Trzcinski 546a3c6561 Refactor commit and build 2015-10-05 09:52:35 +02:00
Douwe Maan 046b283127 Groundwork for merging CI into CE 2015-08-25 18:42:46 -07:00