summaryrefslogtreecommitdiff
path: root/spec/lib/gitlab/ci/config
Commit message (Collapse)AuthorAgeFilesLines
* Add frozen_string_literal to spec/lib (part 1)Thong Kuah2019-07-2624-0/+48
| | | | | Using the sed script from https://gitlab.com/gitlab-org/gitlab-ce/issues/59758
* Introduce default: for gitlab-ci.ymlKamil Trzciński2019-06-185-174/+402
| | | | | | | | | | | This moves all existing `image/services/before_script/variables` into `default:`. This allows us to easily add a default and top-level entries. `default`: is keep backward compatible: to be considered to be job if `default:script:` is specified. This behavior should be removed. All existing `image/services/before_script/variables` are properly handled in root context.
* Add multiple extends supportWolphin2019-06-052-10/+38
|
* Merge dev.gitlab.org master into GitLab.com masterYorick Peterse2019-06-033-14/+24
|\
| * Protect Gitlab::HTTP against DNS rebinding attackDouwe Maan2019-05-303-14/+24
| | | | | | | | | | | | Gitlab::HTTP now resolves the hostname only once, verifies the IP is not blocked, and then uses the same IP to perform the actual request, while passing the original hostname in the `Host` header and SSL SNI field.
* | Fix port validations in .gitlab-webide.ymlce-fj-11886-fix-port-validationFrancisco Javier López2019-06-011-0/+10
|/
* catching and cleanly reporting SSL errors in Ci::Config::External::Processordrew cimino2019-04-151-0/+22
|
* Add environment url validationWolphin2019-04-091-0/+40
|
* Autocorrect with RSpec/ExampleWording copThong Kuah2019-04-056-55/+55
| | | | | | | - rewords examples starting with 'should' - rewords examples starting with 'it' Note: I had to manually fixup "onlies" to "only"
* Allow to use untrusted Regexp via feature flagKamil Trzciński2019-04-041-0/+67
| | | | | | | This brings support for untrusted regexp for 'only:refs:' when enabled via feature flag: alllow_unsafe_ruby_regexp. This is by default disabled, and should not be used in production
* Add port section to CI Image objectFrancisco Javier López2019-04-035-8/+438
| | | | | | | | | | | In order to implement https://gitlab.com/gitlab-org/gitlab-ee/issues/10179 we need several modifications on the CI config file. We are adding a new ports section in the default Image object. Each of these ports will accept: number, protocol and name. By default this new configuration will be only enabled in the Web IDE config file.
* Allow to recursively expand includesKamil Trzciński2019-03-017-34/+231
| | | | | | | This change introduces a support for nesting the includes, allowing to evaluate them in context of the target, by properly respecting the relative inclusions and user permissions of another projects, or templates.
* tests(yaml_processor): complete test scenarios on 'include' keywordPaul B2019-02-191-3/+3
|
* Make default config entry value configurableGrzegorz Bizon2019-01-151-28/+5
| | | | | | Introduce `default:` configuration entry setting that makes it possible to configure a default value of an entry, what overrides class-level `def self.default` value.
* Fix specs related to emtpy `except` policy configGrzegorz Bizon2019-01-143-10/+5
|
* Add more specs for only/except policy config entryGrzegorz Bizon2019-01-141-2/+50
|
* Add specs for both parallel and regular job depsMatija Čupić2019-01-091-0/+20
|
* Merge branch 'include-project' into 'master'Grzegorz Bizon2019-01-076-5/+162
|\ | | | | | | | | | | | | Allow to include another project files Closes #53903 See merge request gitlab-org/gitlab-ce!24101
| * Allow to include files from another projectsKamil Trzciński2019-01-076-5/+162
| | | | | | | | This adds `project:, file:, ref:` specification support.
* | Merge branch 'kamil-refactor-ci-builds-v5' into 'master'Grzegorz Bizon2019-01-063-15/+0
|\ \ | |/ |/| | | | | Use BuildMetadata to store build configuration in JSONB form See merge request gitlab-org/gitlab-ce!21499
| * Add config_options|variables to BuildMetadatakamil-refactor-ci-builds-v5Kamil Trzciński2019-01-043-15/+0
| | | | | | | | | | | | | | | | | | | | | | These are data columns that store runtime configuration of build needed to execute it on runner and within pipeline. The definition of this data is that once used, and when no longer needed (due to retry capability) they can be freely removed. They use `jsonb` on PostgreSQL, and `text` on MySQL (due to lacking support for json datatype on old enough version).
* | Allow to include templatesKamil Trzciński2019-01-046-43/+270
|/ | | | | This rewrites a syntax to allow include of templates. This also normalises the syntax used by include: feature
* Remove gem install bundler from Docker-based Ruby environmentsTakuya Noguchi2019-01-013-4/+0
| | | | | | bundler gem has been included in the Docker official Ruby image since 2.1. Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
* Re-define default only except policyKamil Trzciński2018-12-136-36/+176
|
* Define the default value for only/except policiesShinya Maeda2018-12-056-171/+41
| | | | | Currently, if a job does not have only/except policies, the policy is considered as an unspecified state, and therefore the job is executed regardless of how it's executed and which branch/tags are targetted. Ideally, this should be specified as only: ['branches', 'tags'], as it indicates that unspecified policy jobs are meant to run on any git references.
* ci/config: generalize Config validation into Gitlab::Config:: moduleKamil Trzciński2018-11-2910-564/+0
| | | | | This decouples Ci::Config to provide a common interface for handling user configuration files.
* Eliminate duplicated wordsTakuya Noguchi2018-11-221-1/+1
| | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
* Fix typos in libGeorge Tsiolis2018-11-153-3/+3
|
* Limit parallel to 100limit-parallel-to-100Kamil Trzciński2018-11-081-0/+10
| | | | This prevents some of the abusive behaviors, of someone putting 100000 and creating out of memory condition easily
* Merge branch 'max_retries_when' into 'master'Grzegorz Bizon2018-11-072-40/+237
|\ | | | | | | | | | | | | Allow to configure when to retry builds Closes gitlab-runner#3515 See merge request gitlab-org/gitlab-ce!21758
| * fix merge conflictMarkus Doits2018-11-071-356/+0
| |
| * change forgotten constant in spec to match codeMarkus Doits2018-11-071-1/+1
| |
| * refactoring after latest feedbackMarkus Doits2018-11-071-58/+111
| |
| * fix wrong retry error messagesMarkus Doits2018-11-071-2/+2
| |
| * refactor validations to a Entry::Retry classMarkus Doits2018-11-072-1/+364
| |
| * add a test that checks that retry when values in documentation are validMarkus Doits2018-11-071-1/+27
| |
| * refactor for hopefully lower cognitive complexityMarkus Doits2018-11-071-1/+1
| | | | | | | | | | | | | | | | before: - Method `validate_retry` has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring. - Method `validate_retry_max` has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring. - Method `validate_retry_when` has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
| * fix allowed keys validator to use correct attribute as error base?Markus Doits2018-11-071-1/+1
| |
| * update job config validator to validate new retry syntaxMarkus Doits2018-11-071-19/+130
| |
* | Return untouched hash if no job is parallelizedMatija Čupić2018-11-071-0/+8
|/
* Merge branch '21480-parallel-job-keyword-mvc' into 'master'Grzegorz Bizon2018-11-072-2/+89
|\ | | | | | | | | | | | | Resolve "`parallel` job keyword MVC" Closes #21480 See merge request gitlab-org/gitlab-ce!22631
| * Add additional specs for Normalizer21480-parallel-job-keyword-mvcMatija Čupić2018-11-061-0/+14
| |
| * Use instance based approach for NormalizerMatija Čupić2018-11-061-1/+1
| |
| * Refactor Normalizer specsMatija Čupić2018-11-061-10/+2
| |
| * Refactor Gitlab::Ci::Config::NormalizerMatija Čupić2018-11-051-1/+11
| | | | | | | | Use Hash#each_with_object to manipulate job hashes.
| * Use instance based approach for NormalizerMatija Čupić2018-11-051-1/+1
| |
| * Make Rubocop and Danger happyMatija Čupić2018-11-021-0/+2
| |
| * Move parallelized node index to job optionsMatija Čupić2018-11-011-4/+8
| |
| * Add Normalizer specsMatija Čupić2018-11-011-0/+36
| |
| * Change minimum parallel value to 2Matija Čupić2018-10-271-3/+3
| |