gitlab-qa 2.1.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0a1792891cdd9b76cbc19fd4d505bdbee99bf11c06579d443d2280b24d91d062
4
- data.tar.gz: 06d7f8564698ec57242200c7742821f2f157f347bb4c70c74b8ff340f5922e80
3
+ metadata.gz: 27bc2abc8cfebcb0ca9db1d08a42543c07c4a0c324bb247f5017bf021daf126a
4
+ data.tar.gz: d544281d1b8195ad55432abbc31ead297d64a864e6fd3dbe5caf97cd192e716c
5
5
  SHA512:
6
- metadata.gz: be317b77cf388846911a1ca380f1d92716ac93f88095b18b21f6eef0aa5c0b9e8b31dddc8c0712b5424dcd31061b53b19219210f48d64bd5c74bbb68d05fcd90
7
- data.tar.gz: 5af3675ee8ab80bc9f1c7e557bf6d7d66c0fcb48f2153d7f5add50f5e61456efe751a8e78caaba4cb665c9d4c3ab5e0fdf34c5563063c64c3a26b86e9448bf40
6
+ metadata.gz: 2fb60fe3f21ccfd1cfefa59e16ec373ad8dc9b9545ec13eca963f524a36cc7a6f9857734a73aea1f4cd7b224bb2402fd1835e8dde9dac44d6ec7c7763b0d244e
7
+ data.tar.gz: bccb952d05b6cee766989618f3fa53427db7c069b86e720ceeebd91a098219313650b0534aea1918643749bef65187116d8780155bd4f83e3f7f9edfd44ce4d4
@@ -3,7 +3,6 @@ services:
3
3
 
4
4
  stages:
5
5
  - check
6
- - sanity
7
6
  - test
8
7
 
9
8
  variables:
@@ -36,24 +35,6 @@ check:rspec:
36
35
  tags:
37
36
  - docker
38
37
 
39
- .sanity: &sanity
40
- stage: sanity
41
- image: $TEST_IMAGE
42
- only:
43
- - schedules
44
- tags:
45
- - docker
46
-
47
- ce:version:
48
- script: bin/qa Test::Sanity::Version CE
49
- allow_failure: true
50
- <<: *sanity
51
-
52
- ee:version:
53
- script: bin/qa Test::Sanity::Version EE
54
- allow_failure: true
55
- <<: *sanity
56
-
57
38
  .test: &test
58
39
  stage: test
59
40
  image: $TEST_IMAGE
@@ -191,15 +172,3 @@ ee:kubernetes:
191
172
  <<: *test
192
173
  <<: *high-capacity
193
174
  <<: *ee-qa
194
-
195
- qa:staging:
196
- script:
197
- - export GITLAB_USERNAME="gitlab-qa"
198
- - export GITLAB_PASSWORD="$GITLAB_QA_PASSWORD"
199
- - unset EE_LICENSE
200
- - bin/qa Test::Instance::Staging
201
- <<: *test
202
- retry: 0
203
- when: manual
204
- except:
205
- - triggers
data/README.md CHANGED
@@ -5,17 +5,17 @@
5
5
 
6
6
  ## Definitions
7
7
 
8
- - **GitLab QA framework**: A framework that allows developer to write end-to-end
8
+ - **GitLab QA framework**: A framework that allows developers to write end-to-end
9
9
  tests simply and efficiently.
10
10
  Located at [`gitlab-org/gitlab-ce@qa/qa/`][qa-framework].
11
- - **GitLab QA instance-level scenarios**: RSpec scenarios that are using
11
+ - **GitLab QA instance-level scenarios**: RSpec scenarios that use the
12
12
  GitLab QA framework and Capybara to setup and perform individual end-to-end
13
13
  tests against a live GitLab instance.
14
14
  Located at [`gitlab-org/gitlab-ce@qa/qa/specs/features/`][instance-level-scenarios].
15
- - **GitLab QA orchestrator** (this project): An orchestration tool that allows to run various
16
- QA test suites in a simple manner.
15
+ - **GitLab QA orchestrator** (this project): An orchestration tool that enables
16
+ running various QA test suites in a simple manner.
17
17
  - **GitLab QA orchestrated scenarios**: Scenarios where containers are started,
18
- configured and that run instance-level scenarios against a live GitLab
18
+ configured, and execute instance-level scenarios against a running GitLab
19
19
  instance.
20
20
  Located at [`gitlab-org/gitlab-qa@lib/gitlab/qa/scenario/test/`][orchestrated-scenarios].
21
21
 
@@ -31,6 +31,17 @@ GitLab consists of multiple pieces configured and packaged by
31
31
  The purpose of the QA end-to-end test suite is to verify that all pieces
32
32
  integrate well together.
33
33
 
34
+ ### Testing changes in merge requests before the merge
35
+
36
+ The ultimate goal is to make it possible to run the QA test suite for any
37
+ merge request, even before merging code into the `master` branch.
38
+
39
+ ### We can run tests against any instance of GitLab
40
+
41
+ GitLab QA is a click-driven, black-box testing tool. We also use it to run
42
+ tests against the staging environment, and we strive to make it useful for our
43
+ users as well.
44
+
34
45
  ### GitLab QA tests running in the CI/CD environment
35
46
 
36
47
  Manual steps should not be needed to run the QA test suite.
@@ -38,46 +49,38 @@ GitLab QA orchestrator is CI/CD environment native, which means that we should
38
49
  add new features and tests when we are comfortable with running new code in the
39
50
  CI/CD environment.
40
51
 
41
- ### GitLab QA test failure are reproducible locally
52
+ ### GitLab QA test failures are reproducible locally
42
53
 
43
54
  Despite the fact that GitLab QA orchestrator has been built to run in the CI/CD
44
55
  environment, it is really important to make it easy for developers to reproduce
45
56
  test failures locally. It is much easier to debug things locally, than in the
46
- CI/CD.
57
+ CI/CD environment.
47
58
 
48
59
  To make it easier to reproduce test failures locally we have published the
49
60
  `gitlab-qa` gem [on rubygems.org](https://rubygems.org/gems/gitlab-qa) and we
50
61
  are using exactly the same approach to run tests in the CI/CD environment.
51
62
 
52
- It means that using `gitlab-qa` CLI tool, that orchestrates test environment and
53
- runs GitLab QA test suite, is a reproducible way of running tests locally and
54
- in the CI/CD.
63
+ It means that using the `gitlab-qa` CLI tool, which orchestrates the test
64
+ environment and runs the GitLab QA test suite, is a reproducible way of running
65
+ tests locally and in the CI/CD environment.
55
66
 
56
- It also means that we cannot have a custom code in `.gitlab-ci.yml` to, for
67
+ It also means that we cannot have custom code in `.gitlab-ci.yml` to, for
57
68
  example, start new containers / services.
58
69
 
59
- ### Test installation / deployment process too
70
+ ### Test the installation / deployment process too
60
71
 
61
- We distribute GitLab in a package (like Debian package or a Docker image) so
62
- we want to test installation process to ensure that our package is not broken.
72
+ We distribute GitLab in a package (like a Debian package or a Docker image) so
73
+ we want to test the installation process to ensure that our package is not
74
+ broken.
63
75
 
64
76
  But we are also working on making GitLab be a cloud native product. This means
65
- that using Helm becomes yet another installation / deployment process that we
66
- want to test with GitLab QA.
77
+ that, for example, using Helm becomes yet another installation / deployment
78
+ process that we want to test with GitLab QA.
67
79
 
68
- Keeping in mind that we want to test our Kubernetes deployments is especially
69
- important with consideration of the need of testing changes in merge requests.
70
-
71
- ### Testing changes in merge requests before the merge
72
-
73
- The ultimate goal is to make it possible to run the QA test suite for any
74
- merge request, even before merging code into the `master` branch.
75
-
76
- ### We can run tests against any instance of GitLab
77
-
78
- GitLab QA is a click-driven, black-box testing tool. We also use it to run
79
- tests against the staging, and we strive for making it useful for our users
80
- as well.
80
+ Considering our goal of being able to test all changes in merge requests, it is
81
+ especially important to be able to test our Kubernetes deployments, as that is
82
+ essential to scaling our test environments to efficiently handle a large number
83
+ of tests.
81
84
 
82
85
  ## Documentation
83
86
 
@@ -85,15 +88,19 @@ All the documentation can be found under [`docs/`](/docs/README.md).
85
88
 
86
89
  ## How do we use it
87
90
 
88
- Currently we trigger test suite against GitLab Docker images created by Omnibus
89
- nightly.
91
+ Currently, we execute the test suite against GitLab Docker images created by
92
+ Omnibus nightly via a pipeline in the [nightly](https://gitlab.com/gitlab-org/quality/nightly)
93
+ project.
94
+
95
+ We also execute the test suite nightly against our [staging environment](https://staging.gitlab.com)
96
+ via a pipeline in the [staging project](https://gitlab.com/gitlab-org/quality/staging).
90
97
 
91
- We also trigger GitLab QA pipelines whenever someone clicks `package-and-qa` manual
98
+ Finally, we trigger GitLab QA pipelines whenever someone clicks `package-and-qa` manual
92
99
  action in a merge request.
93
100
 
94
101
  ## How can you use it
95
102
 
96
- GitLab QA tool is published as a [Ruby Gem](https://rubygems.org/gems/gitlab-qa).
103
+ The GitLab QA tool is published as a [Ruby Gem](https://rubygems.org/gems/gitlab-qa).
97
104
 
98
105
  You can install it with `gem install gitlab-qa`. It will expose a `gitlab-qa`
99
106
  command in your system.
@@ -107,10 +114,11 @@ All the scenarios you can run are described in the
107
114
 
108
115
  ### How to add new scenarios
109
116
 
110
- Scenarios (test cases) and scripts to run them are located in
117
+ Scenarios (test cases) and scripts to run them are located in the
111
118
  [CE](https://gitlab.com/gitlab-org/gitlab-ce/tree/master/qa) and
112
119
  [EE](https://gitlab.com/gitlab-org/gitlab-ee/tree/master/qa)
113
- repositories under `qa/` directory, so please also check the documentation there.
120
+ repositories under the `qa/` directory, so please also check the documentation
121
+ there.
114
122
 
115
123
  ## Contributing
116
124
 
@@ -30,6 +30,8 @@ For more details on the internals, please read the
30
30
 
31
31
  * `GITLAB_USERNAME` - username to use when signing into GitLab
32
32
  * `GITLAB_PASSWORD` - password to use when signing into GitLab
33
+ * `GITLAB_FORKER_USERNAME` - username to use for forking a project
34
+ * `GITLAB_FORKER_PASSWORD` - password to use for forking a project
33
35
  * `GITLAB_USER_TYPE` - type of user to use when signing into GitLab: standard (default), ldap
34
36
  * `GITLAB_LDAP_USERNAME` - LDAP username to use when signing into GitLab
35
37
  * `GITLAB_LDAP_PASSWORD` - LDAP password to use when signing into GitLab
@@ -11,6 +11,8 @@ module Gitlab
11
11
  'GITLAB_PASSWORD' => :user_password,
12
12
  'GITLAB_LDAP_USERNAME' => :ldap_username,
13
13
  'GITLAB_LDAP_PASSWORD' => :ldap_password,
14
+ 'GITLAB_FORKER_USERNAME' => :forker_username,
15
+ 'GITLAB_FORKER_PASSWORD' => :forker_password,
14
16
  'GITLAB_USER_TYPE' => :user_type,
15
17
  'GITLAB_SANDBOX_NAME' => :gitlab_sandbox_name,
16
18
  'GITLAB_QA_ACCESS_TOKEN' => :qa_access_token,
@@ -1,5 +1,5 @@
1
1
  module Gitlab
2
2
  module QA
3
- VERSION = '2.1.0'.freeze
3
+ VERSION = '2.2.0'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab-qa
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Grzegorz Bizon
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-07-19 00:00:00.000000000 Z
11
+ date: 2018-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control