Skip to content

Commit 9b958c7

Browse files
authored
Merge pull request puppetlabs#1964 from glennsarti/manage-travis
(PDK-1501) Allow Travis CI config to be templated
2 parents 009e4e0 + a80408f commit 9b958c7

File tree

7 files changed

+106
-56
lines changed

7 files changed

+106
-56
lines changed

.rubocop.yml

+7
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

+56-7
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,62 @@
77
- ---.project
88

99
.travis.yml:
10-
global_env:
11-
- PARALLEL_TEST_PROCESSORS=16
12-
docker_sets:
13-
- set: docker/centos-7
14-
- set: docker/ubuntu-14.04
15-
docker_defaults:
16-
bundler_args: ""
10+
includes:
11+
-
12+
bundler_args:
13+
dist: trusty
14+
env: PLATFORMS=deb_puppet5
15+
rvm: 2.5.3
16+
before_script:
17+
- bundle exec rake 'litmus:provision_list[travis_deb]'
18+
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='*'
19+
- bundle exec rake 'litmus:install_agent[puppet5]'
20+
- bundle exec rake litmus:install_module
21+
script:
22+
- bundle exec rake litmus:acceptance:parallel
23+
services: docker
24+
sudo: required
25+
-
26+
bundler_args:
27+
dist: trusty
28+
env: PLATFORMS=deb_puppet6
29+
rvm: 2.5.3
30+
before_script:
31+
- bundle exec rake 'litmus:provision_list[travis_deb]'
32+
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='*'
33+
- bundle exec rake 'litmus:install_agent[puppet6]'
34+
- bundle exec rake litmus:install_module
35+
script:
36+
- bundle exec rake litmus:acceptance:parallel
37+
services: docker
38+
sudo: required
39+
-
40+
bundler_args:
41+
dist: trusty
42+
env: PLATFORMS=el7_puppet5
43+
rvm: 2.5.3
44+
before_script:
45+
- bundle exec rake 'litmus:provision_list[travis_el7]'
46+
- bundle exec rake 'litmus:install_agent[puppet5]'
47+
- bundle exec rake litmus:install_module
48+
script:
49+
- bundle exec rake litmus:acceptance:parallel
50+
services: docker
51+
sudo: required
52+
-
53+
bundler_args:
54+
dist: trusty
55+
env: PLATFORMS=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+
1766
secure: ""
1867
branches:
1968
- release

.travis.yml

+26-44
Original file line numberDiff line numberDiff line change
@@ -24,73 +24,55 @@ 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 bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='*'", "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 bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='*'
34-
- bundle exec rake 'litmus:install_agent[puppet5]'
35-
- bundle exec rake litmus:install_module
36-
script:
37-
- bundle exec rake litmus:acceptance:parallel
46+
script: ["bundle exec rake litmus:acceptance:parallel"]
3847
services: docker
3948
sudo: required
4049
-
41-
bundler_args:
50+
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='*'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
51+
bundler_args:
4252
dist: trusty
4353
env: PLATFORMS=deb_puppet6
4454
rvm: 2.5.3
45-
before_script:
46-
- bundle exec rake 'litmus:provision_list[travis_deb]'
47-
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='*'
48-
- bundle exec rake 'litmus:install_agent[puppet6]'
49-
- bundle exec rake litmus:install_module
50-
script:
51-
- bundle exec rake litmus:acceptance:parallel
55+
script: ["bundle exec rake litmus:acceptance:parallel"]
5256
services: docker
5357
sudo: required
5458
-
55-
bundler_args:
59+
before_script: ["bundle exec rake 'litmus:provision_list[travis_el7]'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
60+
bundler_args:
5661
dist: trusty
5762
env: PLATFORMS=el7_puppet5
5863
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
64+
script: ["bundle exec rake litmus:acceptance:parallel"]
6565
services: docker
6666
sudo: required
6767
-
68-
bundler_args:
68+
before_script: ["bundle exec rake 'litmus:provision_list[travis_el7]'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
69+
bundler_args:
6970
dist: trusty
7071
env: PLATFORMS=el7_puppet6
7172
rvm: 2.5.3
72-
before_script:
73-
- bundle exec rake 'litmus:provision_list[travis_el7]'
74-
- bundle exec rake 'litmus:install_agent[puppet6]'
75-
- bundle exec rake litmus:install_module
76-
script:
77-
- bundle exec rake litmus:acceptance:parallel
73+
script: ["bundle exec rake litmus:acceptance:parallel"]
7874
services: docker
7975
sudo: required
80-
-
81-
env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
82-
stage: static
83-
-
84-
env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec
85-
rvm: 2.4.5
86-
stage: spec
87-
-
88-
env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
89-
rvm: 2.5.3
90-
stage: spec
91-
-
92-
env: DEPLOY_TO_FORGE=yes
93-
stage: deploy
9476
branches:
9577
only:
9678
- master

Gemfile

+3-1
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,15 @@ end
1616

1717
ruby_version_segments = Gem::Version.new(RUBY_VERSION.dup).segments
1818
minor_version = ruby_version_segments[0..1].join('.')
19+
1920
group :development do
2021
gem "fast_gettext", '1.1.0', require: false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.1.0')
2122
gem "fast_gettext", require: false if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.1.0')
2223
gem "json_pure", '<= 2.0.1', require: false if Gem::Version.new(RUBY_VERSION.dup) < Gem::Version.new('2.0.0')
2324
gem "json", '= 1.8.1', require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.1.9')
2425
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
2526
gem "json", '= 2.1.0', require: false if Gem::Requirement.create(['>= 2.5.0', '< 2.7.0']).satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
27+
gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
2628
gem "puppet-module-posix-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
2729
gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
2830
gem "puppet-module-win-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw]
@@ -69,4 +71,4 @@ extra_gemfiles.each do |gemfile|
6971
eval(File.read(gemfile), binding)
7072
end
7173
end
72-
# vim: syntax=ruby
74+
# vim: syntax=ruby

Rakefile

+11-2
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

+2-2
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181
}
8282
],
8383
"description": "Module for Apache configuration",
84-
"pdk-version": "1.11.1",
84+
"pdk-version": "1.14.0",
8585
"template-url": "https://github.com/puppetlabs/pdk-templates/#master",
86-
"template-ref": "heads/master-0-gb096033"
86+
"template-ref": "heads/master-0-g0b5b39b"
8787
}

spec/default_facts.yml

+1
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)