gitlab-qa 6.18.2 → 6.21.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b50a630f2aefe3ae44a74c5cc4a77d1ecb290a14a598b528ac7f3a4f22cf2bea
4
- data.tar.gz: 547c427602d5f08509180da5a462c5e7552781637be4e2e502685509b180a718
3
+ metadata.gz: 1f8a36d980bf03f5cc9921cf6f53417c3af1af1d9302d715c94ea018dcd38a0a
4
+ data.tar.gz: 07e3a718fde1037351f7e29cf6fabb9d35f757c50117f308881fb9474ede00eb
5
5
  SHA512:
6
- metadata.gz: e62b614d94233768c1bfab5a1e396a3db638345fe38a31ebcb96d3104df787bf0767556de4a703b2d23dbfead9c87460648d184a98c37e4c193082867943dba4
7
- data.tar.gz: b5f9a969ac9d75b011136f0036ec2dd42acfd142081002cf2dbac40c2bfe05fe62a722a4a5deba279c8e19dd0b1410c904fc05023fc86852f57935c9c86f0c13
6
+ metadata.gz: 77847c2c836aedb6f8e84c7424d8b124b7387d3c23bc658cf87b1a588217d33b6f81bdee77cb3302cfc937f2768a426f4a39315a57f66330c5e221e8f225243e
7
+ data.tar.gz: 797673f38b45c0b209cd49388fddb04cad19d7fce1af3105ed173e72469ab39de04a98962de905de93653426cd67e1a65c858ada146366291ceb394b8e8be1ff
data/.gitlab-ci.yml CHANGED
@@ -911,6 +911,22 @@ ee:gitaly-cluster-quarantine:
911
911
  variables:
912
912
  QA_SCENARIO: "Test::Integration::GitalyCluster"
913
913
 
914
+ ce:mtls:
915
+ extends:
916
+ - .test
917
+ - .ce-qa
918
+ - .rspec-report-opts
919
+ variables:
920
+ QA_SCENARIO: "Test::Integration::MTLS"
921
+
922
+ ee:mtls:
923
+ extends:
924
+ - .test
925
+ - .ee-qa
926
+ - .rspec-report-opts
927
+ variables:
928
+ QA_SCENARIO: "Test::Integration::MTLS"
929
+
914
930
  ce:smtp:
915
931
  extends:
916
932
  - .test
@@ -1007,7 +1023,7 @@ relate_test_failures:
1007
1023
  when: always
1008
1024
  variables:
1009
1025
  QA_FAILURES_REPORTING_PROJECT: "gitlab-org/gitlab"
1010
- QA_FAILURES_MAX_DIFF_RATIO: "0.05"
1026
+ QA_FAILURES_MAX_DIFF_RATIO: "0.15"
1011
1027
  # The --dry-run can be set to modify the behavior of `exe/gitlab-qa-report --relate-failure-issue` without releasing a new gem version.
1012
1028
  QA_FAILURES_REPORTER_OPTIONS: ""
1013
1029
  script:
@@ -84,6 +84,8 @@ All environment variables used by GitLab QA should be defined in [`lib/gitlab/qa
84
84
  | `CACHE_NAMESPACE_NAME` | `true` | Cache namespace name for groups. | No|
85
85
  | `DEPLOY_VERSION` |- | The version of GitLab being tested against. | No|
86
86
  | `GITLAB_QA_USER_AGENT` |- | The browser user-agent to use instead of the default Chrome user-agent. | No|
87
+ | `GEO_FAILOVER` | `false` | Set to `true` when a Geo secondary site has been promoted to a Geo primary site. | No|
88
+
87
89
 
88
90
  ## [Supported Remote Grid environment variables](./running_against_remote_grid.md)
89
91
 
@@ -165,6 +167,21 @@ And the following would run all Create API tests as well as UI tests:
165
167
  $ gitlab-qa Test::Instance::Image EE -- qa/specs/features/browser_ui/3_create qa/specs/features/api/3_create
166
168
  ```
167
169
 
170
+ ### Running tests for transient bugs
171
+
172
+ A suite of tests have been written to test for [transient bugs](https://about.gitlab.com/handbook/engineering/quality/issue-triage/#transient-bugs).
173
+ Those tests are tagged `:transient` and therefore can be run via:
174
+
175
+ ```shell
176
+ $ gitlab-qa Test::Instance::Image EE -- --tag transient
177
+ ```
178
+
179
+ If you would like to run the transient bug tests against a specific GitLab instance such as your GDK, you can use the following command:
180
+
181
+ ```shell
182
+ $ gitlab-qa Test::Instance::Any EE https://your.instance.gitlab -- --tag transient
183
+ ```
184
+
168
185
  ## Examples
169
186
 
170
187
  ### `Test::Instance::Image CE|EE|<full image address>`
data/lib/gitlab/qa.rb CHANGED
@@ -58,6 +58,7 @@ module Gitlab
58
58
  autoload :GitalyCluster, 'gitlab/qa/scenario/test/integration/gitaly_cluster'
59
59
  autoload :Jira, 'gitlab/qa/scenario/test/integration/jira'
60
60
  autoload :SSHTunnel, 'gitlab/qa/scenario/test/integration/ssh_tunnel'
61
+ autoload :MTLS, 'gitlab/qa/scenario/test/integration/mtls'
61
62
  end
62
63
 
63
64
  module Sanity
@@ -16,8 +16,12 @@ module Gitlab
16
16
 
17
17
  def_delegators :release, :tag, :image, :edition
18
18
 
19
- CERTIFICATES_PATH = File.expand_path('../../../../tls_certificates/gitlab'.freeze, __dir__)
19
+ GITLAB_CERTIFICATES_PATH = File.expand_path('../../../../tls_certificates/gitlab'.freeze, __dir__)
20
+ GITALY_CERTIFICATES_PATH = File.expand_path('../../../../tls_certificates/gitaly/ssl'.freeze, __dir__)
21
+ TRUSTED_CERTIFICATES_PATH = File.expand_path('../../../../tls_certificates/gitaly/trusted-certs'.freeze, __dir__)
22
+
20
23
  SSL_PATH = '/etc/gitlab/ssl'.freeze
24
+ TRUSTED_PATH = '/etc/gitlab/trusted-certs'.freeze
21
25
 
22
26
  def initialize
23
27
  super
@@ -25,7 +29,7 @@ module Gitlab
25
29
  @disable_animations = true
26
30
  @skip_availability_check = false
27
31
 
28
- @volumes[CERTIFICATES_PATH] = SSL_PATH
32
+ @volumes[GITLAB_CERTIFICATES_PATH] = SSL_PATH
29
33
 
30
34
  self.release = 'CE'
31
35
  end
@@ -64,6 +68,16 @@ module Gitlab
64
68
  tls ? '443' : '80'
65
69
  end
66
70
 
71
+ def mtls
72
+ @volumes.delete(GITLAB_CERTIFICATES_PATH)
73
+ @volumes[GITALY_CERTIFICATES_PATH] = SSL_PATH
74
+ set_trusted_certificates
75
+ end
76
+
77
+ def set_trusted_certificates
78
+ @volumes[TRUSTED_CERTIFICATES_PATH] = TRUSTED_PATH
79
+ end
80
+
67
81
  def relative_path
68
82
  @relative_path ||= ''
69
83
  end
@@ -87,12 +101,17 @@ module Gitlab
87
101
  def prepare_gitlab_omnibus_config
88
102
  setup_disable_animations if disable_animations
89
103
  set_formless_login_token
104
+ setup_application_settings_cache_expiry
90
105
  end
91
106
 
92
107
  def setup_disable_animations
93
108
  @environment['GITLAB_OMNIBUS_CONFIG'] = "gitlab_rails['gitlab_disable_animations'] = true; #{@environment['GITLAB_OMNIBUS_CONFIG'] || ''}"
94
109
  end
95
110
 
111
+ def setup_application_settings_cache_expiry
112
+ @environment['GITLAB_OMNIBUS_CONFIG'] = "gitlab_rails['application_settings_cache_seconds'] = 0; #{@environment['GITLAB_OMNIBUS_CONFIG'] || ''}"
113
+ end
114
+
96
115
  def start # rubocop:disable Metrics/AbcSize
97
116
  ensure_configured!
98
117
 
@@ -124,7 +143,7 @@ module Gitlab
124
143
  puts line
125
144
  # TODO, workaround which allows to detach from the container
126
145
  #
127
- Process.kill('INT', wait.pid) if line =~ /gitlab Reconfigured!/
146
+ break if line =~ /gitlab Reconfigured!/
128
147
  end
129
148
  end
130
149
 
@@ -10,6 +10,9 @@ module Gitlab
10
10
  class Specs < Scenario::Template
11
11
  attr_accessor :suite, :release, :network, :args, :volumes, :env, :runner_network
12
12
 
13
+ TRUSTED_CERTIFICATES_PATH = File.expand_path('../../../../tls_certificates/gitaly/trusted-certs'.freeze, __dir__)
14
+ TRUSTED_PATH = '/etc/ssl/certs'.freeze
15
+
13
16
  def initialize
14
17
  @docker = Docker::Engine.new
15
18
  @volumes = {}
@@ -62,6 +65,10 @@ module Gitlab
62
65
  end
63
66
  end
64
67
 
68
+ def mtls
69
+ @volumes[TRUSTED_CERTIFICATES_PATH] = TRUSTED_PATH
70
+ end
71
+
65
72
  private
66
73
 
67
74
  def args_with_flags(args, feature_flag_set)
@@ -23,9 +23,11 @@ module Gitlab
23
23
  )
24
24
 
25
25
  # Workaround for https://gitlab.com/gitlab-org/gitlab/-/issues/295493
26
- gitlab.create_issue_note(
27
- iid: issue.iid,
28
- note: "/relate #{Runtime::Env.qa_issue_url}")
26
+ unless Runtime::Env.qa_issue_url.to_s.empty?
27
+ gitlab.create_issue_note(
28
+ iid: issue.iid,
29
+ note: "/relate #{Runtime::Env.qa_issue_url}")
30
+ end
29
31
 
30
32
  File.write('REPORT_ISSUE_URL', issue.web_url)
31
33
  end
@@ -87,7 +87,8 @@ module Gitlab
87
87
  'JIRA_ADMIN_PASSWORD' => :jira_admin_password,
88
88
  'CACHE_NAMESPACE_NAME' => :cache_namespace_name,
89
89
  'DEPLOY_VERSION' => :deploy_version,
90
- 'GITLAB_QA_USER_AGENT' => :gitlab_qa_user_agent
90
+ 'GITLAB_QA_USER_AGENT' => :gitlab_qa_user_agent,
91
+ 'GEO_FAILOVER' => :geo_failover
91
92
  }.freeze
92
93
 
93
94
  ENV_VARIABLES.each do |env_name, method_name|
@@ -283,6 +284,10 @@ module Gitlab
283
284
  enabled?(ENV['QA_SKIP_PULL'], default: false)
284
285
  end
285
286
 
287
+ def geo_failover?
288
+ enabled?(ENV['GEO_FAILOVER'], default: false)
289
+ end
290
+
286
291
  private
287
292
 
288
293
  def enabled?(value, default: true)
@@ -4,12 +4,20 @@ module Gitlab
4
4
  module Test
5
5
  module Instance
6
6
  ##
7
- # Run test suite against staging.gitlab.com
7
+ # Run test suite against staging.gitlab.com (or geo.staging.gitlab.com during failover)
8
8
  #
9
9
  class Staging < DeploymentBase
10
10
  def deployment_component
11
11
  Component::Staging
12
12
  end
13
+
14
+ def non_rspec_args
15
+ if Runtime::Env.geo_failover?
16
+ [deployment_component::GEO_SECONDARY_ADDRESS]
17
+ else
18
+ [deployment_component::ADDRESS]
19
+ end
20
+ end
13
21
  end
14
22
  end
15
23
  end
@@ -0,0 +1,114 @@
1
+ module Gitlab
2
+ module QA
3
+ module Scenario
4
+ module Test
5
+ module Integration
6
+ class MTLS < Scenario::Template
7
+ def initialize
8
+ @gitlab_name = 'gitlab'
9
+ @gitaly_name = 'gitaly'
10
+ @spec_suite = 'Test::Instance::All'
11
+ @network = 'test'
12
+ @env = {}
13
+ @tag = 'mtls'
14
+ end
15
+
16
+ # rubocop:disable Metrics/AbcSize
17
+ def perform(release, *rspec_args)
18
+ Component::Gitlab.perform do |gitaly|
19
+ gitaly.release = QA::Release.new(release)
20
+ gitaly.name = @gitaly_name
21
+ gitaly.network = @network
22
+ gitaly.skip_availability_check = true
23
+
24
+ gitaly.set_accept_insecure_certs
25
+ gitaly.omnibus_config = gitaly_omnibus
26
+ gitaly.mtls
27
+
28
+ gitaly.instance do
29
+ Component::Gitlab.perform do |gitlab|
30
+ gitlab.release = QA::Release.new(release)
31
+ gitlab.name = @gitlab_name
32
+ gitlab.network = @network
33
+
34
+ gitlab.set_accept_insecure_certs
35
+ gitlab.omnibus_config = gitlab_omnibus
36
+ gitlab.tls = true
37
+ gitlab.set_trusted_certificates
38
+
39
+ gitlab.instance do
40
+ puts "Running mTLS specs!"
41
+
42
+ if @tag
43
+ rspec_args << "--" unless rspec_args.include?('--')
44
+ rspec_args << "--tag" << @tag
45
+ end
46
+
47
+ Component::Specs.perform do |specs|
48
+ specs.suite = @spec_suite
49
+ specs.release = gitlab.release
50
+ specs.network = gitlab.network
51
+ specs.args = [gitlab.address, *rspec_args]
52
+ specs.env = @env
53
+ specs.mtls
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ # rubocop:enable Metrics/AbcSize
61
+
62
+ def gitlab_omnibus
63
+ <<~OMNIBUS
64
+ gitaly['enable'] = false;
65
+
66
+ external_url 'https://#{@gitlab_name}.#{@network}';
67
+
68
+ gitlab_rails['gitaly_token'] = 'abc123secret';
69
+ gitlab_shell['secret_token'] = 'shellsecret';
70
+
71
+ git_data_dirs({
72
+ 'default' => { 'gitaly_address' => 'tls://#{@gitaly_name}.#{@network}:9999' },
73
+ 'storage1' => { 'gitaly_address' => 'tls://#{@gitaly_name}.#{@network}:9999' },
74
+ });
75
+ OMNIBUS
76
+ end
77
+
78
+ def gitaly_omnibus
79
+ <<~OMNIBUS
80
+ gitaly['tls_listen_addr'] = '0.0.0.0:9999';
81
+ gitaly['certificate_path'] = '/etc/gitlab/ssl/gitaly.test.crt';
82
+ gitaly['key_path'] = '/etc/gitlab/ssl/gitaly.test.key';
83
+
84
+ postgresql['enable'] = false;
85
+ redis['enable'] = false;
86
+ nginx['enable'] = false;
87
+ puma['enable'] = false;
88
+ sidekiq['enable'] = false;
89
+ gitlab_workhorse['enable'] = false;
90
+ grafana['enable'] = false;
91
+ gitlab_exporter['enable'] = false;
92
+ alertmanager['enable'] = false;
93
+ prometheus['enable'] = false;
94
+
95
+ gitlab_rails['rake_cache_clear'] = false;
96
+ gitlab_rails['auto_migrate'] = false;
97
+
98
+ gitaly['auth_token'] = 'abc123secret';
99
+ gitlab_shell['secret_token'] = 'shellsecret';
100
+
101
+ gitlab_rails['internal_api_url'] = 'https://#{@gitlab_name}.#{@network}';
102
+
103
+ git_data_dirs({
104
+ 'default' => { 'path' => '/var/opt/gitlab/git-data' },
105
+ 'storage1' => { 'path' => '/mnt/gitlab/git-data' },
106
+ })
107
+ OMNIBUS
108
+ end
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end
114
+ end
@@ -27,7 +27,7 @@ module Gitlab
27
27
  nginx['listen_port'] = 80;
28
28
  nginx['listen_https'] = false;
29
29
  # documentation: https://docs.gitlab.com/omnibus/settings/database.html#seed-the-database-fresh-installs-only
30
- gitlab_rails['initial_root_password'] = '#{Runtime::Env.require_initial_password}'
30
+ gitlab_rails['initial_root_password'] = '#{Runtime::Env.require_initial_password!}'
31
31
 
32
32
  registry_external_url '#{tunnel_registry.url}';
33
33
  registry_nginx['listen_port'] = 80;
@@ -1,5 +1,5 @@
1
1
  module Gitlab
2
2
  module QA
3
- VERSION = '6.18.2'.freeze
3
+ VERSION = '6.21.1'.freeze
4
4
  end
5
5
  end
@@ -0,0 +1,33 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ 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
32
+ 5OPk1+2KXQff+lh0m2IKJcYu3g==
33
+ -----END CERTIFICATE-----
@@ -0,0 +1,52 @@
1
+ -----BEGIN PRIVATE KEY-----
2
+ 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
51
+ nh4iw7J+eIfaBUd7gtbLgkmkz5Bt21g=
52
+ -----END PRIVATE KEY-----
@@ -0,0 +1,33 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ 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
32
+ 5OPk1+2KXQff+lh0m2IKJcYu3g==
33
+ -----END CERTIFICATE-----
@@ -0,0 +1,31 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIFSjCCAzICCQDft0SZAQGuIzANBgkqhkiG9w0BAQsFADBnMQswCQYDVQQGEwJV
3
+ UzELMAkGA1UECAwCQ0ExFjAUBgNVBAcMDVNhbiBGcmFuY2lzY28xDzANBgNVBAoM
4
+ BkdpdExhYjEMMAoGA1UECwwDT3JnMRQwEgYDVQQDDAtnaXRsYWIudGVzdDAeFw0x
5
+ ODEwMjUwOTU0MzRaFw0yODEwMjIwOTU0MzRaMGcxCzAJBgNVBAYTAlVTMQswCQYD
6
+ VQQIDAJDQTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzEPMA0GA1UECgwGR2l0TGFi
7
+ MQwwCgYDVQQLDANPcmcxFDASBgNVBAMMC2dpdGxhYi50ZXN0MIICIjANBgkqhkiG
8
+ 9w0BAQEFAAOCAg8AMIICCgKCAgEAykiE+PF8CBAP/k0NMHiMJ+TqMnupLl5Ypo0N
9
+ TH/Y8qFEqV4MaiGoqHwHiqY3tC0Zshe7uowS7NDnmTH/5DeNOmi/zI+FhTEHJKhP
10
+ DM5Q0MXJrUIi6eGmojB5l/3t3OBnvoFaC0zpkpg5uR8QL5RbB8Gyf5/5eCEbP3/h
11
+ R2q9JFUOEyTYEyv+1K/WegQyaLPtiPtvfTTmx1uEDfP1vuiMKuPOQ/3N8nFky1ny
12
+ 8c0P2wQv6E/qtRafKxaPbA/OmSpx0JGol43EjgOqy5FIJBT+yYP2navvAw+BvZ3k
13
+ 6qiQL6dx5pOGPAd8uxLmcj4In54IZWxs8fxUlNpcLWbo8noVxIQP2j7MAGXwGatM
14
+ eaUnyD5DmHlHS92gvHU3nKagDEuJjnBCCWtaVugeAWuW+8fJHgYbwuRQ8h/5hTWc
15
+ T80cEHDmKB/Uft4QLc65C7LQjKmfeX5qLgufk+dMmWj116csejiTFPCue0/RjSxK
16
+ C/562dbt/ZcScLXymkUiewc7FzHKExquY42I/yudoMYS9EBAyDcDE72WrUcIpECH
17
+ OMIt+EgXoDw1e/aTc5orlBIFjhknnPnP5RtrBj/OdXEgwMfD/N+ZYpY43ZIjBHWM
18
+ Zpj4YxLdBXkFJ/JG632Pp+bOgF5TgzCnV2Je6r1VMAAH8U0B105xAnyl5qtepUO5
19
+ +THpCdUCAwEAATANBgkqhkiG9w0BAQsFAAOCAgEADFyEMU0aLOrNO60PerQ25kE9
20
+ jqzVhySyg6Pwsus7LIKTQLeo9abGmdjcbuqmBRLdxCYHbjbgW07I28YS4x4m7/ay
21
+ YAePaMRb4Qt1yyaWcPIsw57sMnoC8iqRqXJPyr8i9F+RtzoC7Hki6zORxms8TF5C
22
+ FbNB2ZBO/mbe8Lro0G1j5rxrvndQ6/OnwLQFW/VCfDDOIM7TXm6yYyiUpj3MSBay
23
+ LDJaT9N5xMxF82OjcMB0/flWFxI7QmNXTe7M6HQbp05Jyw9VCEAVflI7zkaYY329
24
+ 7XvVJbpf1A3SegqxGlF2gD31cxViYBRV7t0pO6mcwt0/iAzAVicg/qtoPUg8zFwN
25
+ xU89jk+UV5oTQc06u6CbIuF1eYy3MJGmQlCsEd/OOC9zl7xRHBA4ro3CTCH238L6
26
+ lGEi8FRombuPcv3hD9PuW/RAQ5v03lF9D7UVtEHtb2VCZ0EXL8YFRuqQpPvdPqQ+
27
+ znaohk2jKRSttvZCXw5TaWdDctDue/b70cEVPoAzXACjaX/oOau+MJvMaI7i5BXF
28
+ JhBcoXh7FXIgyDszzgGq5DxjCcpy0X5o2TGC5id8zUNBY8ek6UV3mHk2FQzYf+7C
29
+ 8Qvv++R3+Ubk5DryuuWa/R2ybemQja830Fgiab9hgvhhgCOCbmxLIKVrePenMOXc
30
+ vvjQTrP9ZinR50bKUf8=
31
+ -----END CERTIFICATE-----
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: 6.18.2
4
+ version: 6.21.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Grzegorz Bizon
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-01-13 00:00:00.000000000 Z
11
+ date: 2021-02-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: climate_control
@@ -208,7 +208,6 @@ files:
208
208
  - ".rspec"
209
209
  - ".rubocop.yml"
210
210
  - ".rubocop_todo.yml"
211
- - ".travis.yml"
212
211
  - CONTRIBUTING.md
213
212
  - Gemfile
214
213
  - LICENSE
@@ -305,6 +304,7 @@ files:
305
304
  - lib/gitlab/qa/scenario/test/integration/ldap_no_tls.rb
306
305
  - lib/gitlab/qa/scenario/test/integration/ldap_tls.rb
307
306
  - lib/gitlab/qa/scenario/test/integration/mattermost.rb
307
+ - lib/gitlab/qa/scenario/test/integration/mtls.rb
308
308
  - lib/gitlab/qa/scenario/test/integration/object_storage.rb
309
309
  - lib/gitlab/qa/scenario/test/integration/packages.rb
310
310
  - lib/gitlab/qa/scenario/test/integration/praefect.rb
@@ -321,6 +321,10 @@ files:
321
321
  - lib/gitlab/qa/support/http_request.rb
322
322
  - lib/gitlab/qa/support/invalid_response_error.rb
323
323
  - lib/gitlab/qa/version.rb
324
+ - tls_certificates/gitaly/ssl/gitaly.test.crt
325
+ - tls_certificates/gitaly/ssl/gitaly.test.key
326
+ - tls_certificates/gitaly/trusted-certs/gitaly.test.crt
327
+ - tls_certificates/gitaly/trusted-certs/gitlab.test.crt
324
328
  - tls_certificates/gitlab/gitlab.test.crt
325
329
  - tls_certificates/gitlab/gitlab.test.key
326
330
  homepage: http://about.gitlab.com
data/.travis.yml DELETED
@@ -1,5 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.1
5
- before_install: gem install bundler -v 1.12.5