Skip to content

Commit a4a08a5

Browse files
authored
Merge pull request puppetlabs#1250 from glennsarti/manage-travis
(PDK-1501) Allow Travis CI config to be templated
2 parents 8be72ad + 5c7e2c8 commit a4a08a5

File tree

7 files changed

+147
-65
lines changed

7 files changed

+147
-65
lines changed

.rubocop.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ GetText/DecorateString:
2727
Description: We don't want to decorate test output.
2828
Exclude:
2929
- spec/**/*
30+
Enabled: false
3031
RSpec/BeforeAfterAll:
3132
Description: Beware of using after(:all) as it may cause state to leak between tests.
3233
A necessary evil in acceptance testing.
@@ -89,6 +90,12 @@ Style/MethodCalledOnDoEndBlock:
8990
Enabled: true
9091
Style/StringMethods:
9192
Enabled: true
93+
GetText/DecorateFunctionMessage:
94+
Enabled: false
95+
GetText/DecorateStringFormattingUsingInterpolation:
96+
Enabled: false
97+
GetText/DecorateStringFormattingUsingPercent:
98+
Enabled: false
9299
Layout/EndOfLine:
93100
Enabled: false
94101
Layout/IndentHeredoc:

.sync.yml

Lines changed: 87 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,93 @@
44
- ---.project
55

66
.travis.yml:
7-
unmanaged: true
7+
branches:
8+
- release
9+
includes:
10+
-
11+
bundler_args:
12+
dist: trusty
13+
env: PLATFORMS=deb_puppet5
14+
rvm: 2.5.3
15+
before_script:
16+
- bundle exec rake 'litmus:provision_list[travis_deb]'
17+
- bundle exec rake 'litmus:install_agent[puppet5]'
18+
- bundle exec rake litmus:install_module
19+
script:
20+
- bundle exec rake litmus:acceptance:parallel
21+
services: docker
22+
sudo: required
23+
stage: acceptance
24+
-
25+
bundler_args:
26+
dist: trusty
27+
env: PLATFORM=deb_puppet6
28+
rvm: 2.5.3
29+
before_script:
30+
- bundle exec rake 'litmus:provision_list[travis_deb]'
31+
- bundle exec rake 'litmus:install_agent[puppet6]'
32+
- bundle exec rake litmus:install_module
33+
script:
34+
- bundle exec rake litmus:acceptance:parallel
35+
services: docker
36+
sudo: required
37+
stage: acceptance
38+
-
39+
bundler_args:
40+
dist: trusty
41+
env: PLATFORMS=el7_puppet5
42+
rvm: 2.5.3
43+
before_script:
44+
- bundle exec rake 'litmus:provision_list[travis_el7]'
45+
- bundle exec rake 'litmus:install_agent[puppet5]'
46+
- bundle exec rake litmus:install_module
47+
script:
48+
- bundle exec rake litmus:acceptance:parallel
49+
services: docker
50+
sudo: required
51+
stage: acceptance
52+
-
53+
bundler_args:
54+
dist: trusty
55+
env: PLATFORM=el7_puppet6
56+
rvm: 2.5.3
57+
before_script:
58+
- bundle exec rake 'litmus:provision_list[travis_el7]'
59+
- bundle exec rake 'litmus:install_agent[puppet6]'
60+
- bundle exec rake litmus:install_module
61+
script:
62+
- bundle exec rake litmus:acceptance:parallel
63+
services: docker
64+
sudo: required
65+
stage: acceptance
66+
-
67+
bundler_args:
68+
dist: trusty
69+
env: PLATFORMS=el6_puppet5
70+
rvm: 2.5.3
71+
before_script:
72+
- bundle exec rake 'litmus:provision_list[travis_el6]'
73+
- bundle exec rake 'litmus:install_agent[puppet5]'
74+
- bundle exec rake litmus:install_module
75+
script:
76+
- bundle exec rake litmus:acceptance:parallel
77+
services: docker
78+
sudo: required
79+
stage: acceptance
80+
-
81+
bundler_args:
82+
dist: trusty
83+
env: PLATFORMS=el6_puppet6
84+
rvm: 2.5.3
85+
before_script:
86+
- bundle exec rake 'litmus:provision_list[travis_el6]'
87+
- bundle exec rake 'litmus:install_agent[puppet6]'
88+
- bundle exec rake litmus:install_module
89+
script:
90+
- bundle exec rake litmus:acceptance:parallel
91+
services: docker
92+
sudo: required
93+
stage: acceptance
894

995
Gemfile:
1096
optional:

.travis.yml

Lines changed: 38 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -24,100 +24,79 @@ matrix:
2424
fast_finish: true
2525
include:
2626
-
27-
bundler_args:
27+
env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
28+
stage: static
29+
-
30+
env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec
31+
rvm: 2.4.5
32+
stage: spec
33+
-
34+
env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
35+
rvm: 2.5.3
36+
stage: spec
37+
-
38+
env: DEPLOY_TO_FORGE=yes
39+
stage: deploy
40+
-
41+
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
42+
bundler_args:
2843
dist: trusty
2944
env: PLATFORMS=deb_puppet5
3045
rvm: 2.5.3
31-
before_script:
32-
- bundle exec rake 'litmus:provision_list[travis_deb]'
33-
- bundle exec rake 'litmus:install_agent[puppet5]'
34-
- bundle exec rake litmus:install_module
35-
script:
36-
- bundle exec rake litmus:acceptance:parallel
46+
script: ["bundle exec rake litmus:acceptance:parallel"]
3747
services: docker
38-
sudo: required
3948
stage: acceptance
49+
sudo: required
4050
-
41-
bundler_args:
51+
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
52+
bundler_args:
4253
dist: trusty
4354
env: PLATFORM=deb_puppet6
4455
rvm: 2.5.3
45-
before_script:
46-
- bundle exec rake 'litmus:provision_list[travis_deb]'
47-
- bundle exec rake 'litmus:install_agent[puppet6]'
48-
- bundle exec rake litmus:install_module
49-
script:
50-
- bundle exec rake litmus:acceptance:parallel
56+
script: ["bundle exec rake litmus:acceptance:parallel"]
5157
services: docker
52-
sudo: required
5358
stage: acceptance
59+
sudo: required
5460
-
55-
bundler_args:
61+
before_script: ["bundle exec rake 'litmus:provision_list[travis_el7]'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
62+
bundler_args:
5663
dist: trusty
5764
env: PLATFORMS=el7_puppet5
5865
rvm: 2.5.3
59-
before_script:
60-
- bundle exec rake 'litmus:provision_list[travis_el7]'
61-
- bundle exec rake 'litmus:install_agent[puppet5]'
62-
- bundle exec rake litmus:install_module
63-
script:
64-
- bundle exec rake litmus:acceptance:parallel
66+
script: ["bundle exec rake litmus:acceptance:parallel"]
6567
services: docker
66-
sudo: required
6768
stage: acceptance
69+
sudo: required
6870
-
69-
bundler_args:
71+
before_script: ["bundle exec rake 'litmus:provision_list[travis_el7]'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
72+
bundler_args:
7073
dist: trusty
7174
env: PLATFORM=el7_puppet6
7275
rvm: 2.5.3
73-
before_script:
74-
- bundle exec rake 'litmus:provision_list[travis_el7]'
75-
- bundle exec rake 'litmus:install_agent[puppet6]'
76-
- bundle exec rake litmus:install_module
77-
script:
78-
- bundle exec rake litmus:acceptance:parallel
76+
script: ["bundle exec rake litmus:acceptance:parallel"]
7977
services: docker
80-
sudo: required
8178
stage: acceptance
79+
sudo: required
8280
-
83-
bundler_args:
81+
before_script: ["bundle exec rake 'litmus:provision_list[travis_el6]'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
82+
bundler_args:
8483
dist: trusty
8584
env: PLATFORMS=el6_puppet5
8685
rvm: 2.5.3
87-
before_script:
88-
- bundle exec rake 'litmus:provision_list[travis_el6]'
89-
- bundle exec rake 'litmus:install_agent[puppet5]'
90-
- bundle exec rake litmus:install_module
91-
script:
92-
- bundle exec rake litmus:acceptance:parallel
86+
script: ["bundle exec rake litmus:acceptance:parallel"]
9387
services: docker
94-
sudo: required
9588
stage: acceptance
89+
sudo: required
9690
-
97-
bundler_args:
91+
before_script: ["bundle exec rake 'litmus:provision_list[travis_el6]'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
92+
bundler_args:
9893
dist: trusty
9994
env: PLATFORMS=el6_puppet6
10095
rvm: 2.5.3
101-
before_script:
102-
- bundle exec rake 'litmus:provision_list[travis_el6]'
103-
- bundle exec rake 'litmus:install_agent[puppet6]'
104-
- bundle exec rake litmus:install_module
105-
script:
106-
- bundle exec rake litmus:acceptance:parallel
96+
script: ["bundle exec rake litmus:acceptance:parallel"]
10797
services: docker
108-
sudo: required
10998
stage: acceptance
110-
-
111-
env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
112-
stage: static
113-
-
114-
env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec
115-
rvm: 2.4.5
116-
stage: spec
117-
-
118-
env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
119-
rvm: 2.5.3
120-
stage: spec
99+
sudo: required
121100
branches:
122101
only:
123102
- master

Gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,4 +72,4 @@ extra_gemfiles.each do |gemfile|
7272
eval(File.read(gemfile), binding)
7373
end
7474
end
75-
# vim: syntax=ruby
75+
# vim: syntax=ruby

Rakefile

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,17 @@ end
1616

1717
def changelog_project
1818
return unless Rake.application.top_level_tasks.include? "changelog"
19-
returnVal = nil || JSON.load(File.read('metadata.json'))['source'].match(%r{.*/([^/]*)})[1]
20-
raise "unable to find the changelog_project in .sync.yml or the name in metadata.json" if returnVal.nil?
19+
20+
returnVal = nil
21+
returnVal ||= begin
22+
metadata_source = JSON.load(File.read('metadata.json'))['source']
23+
metadata_source_match = metadata_source && metadata_source.match(%r{.*\/([^\/]*?)(?:\.git)?\Z})
24+
25+
metadata_source_match && metadata_source_match[1]
26+
end
27+
28+
raise "unable to find the changelog_project in .sync.yml or calculate it from the source in metadata.json" if returnVal.nil?
29+
2130
puts "GitHubChangelogGenerator project:#{returnVal}"
2231
returnVal
2332
end

metadata.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,6 @@
8383
],
8484
"description": "MySQL module",
8585
"template-url": "https://github.com/puppetlabs/pdk-templates/#master",
86-
"template-ref": "1.12.0-0-g55d9ae2",
87-
"pdk-version": "1.12.0"
86+
"template-ref": "1.14.1-0-g0b5b39b",
87+
"pdk-version": "1.14.0"
8888
}

spec/default_facts.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
# Facts specified here will override the values provided by rspec-puppet-facts.
44
---
55
ipaddress: "172.16.254.254"
6+
ipaddress6: "FE80:0000:0000:0000:AAAA:AAAA:AAAA"
67
is_pe: false
78
macaddress: "AA:AA:AA:AA:AA:AA"

0 commit comments

Comments
 (0)