Merge pull request #395 from glennsarti/manage-travis
(PDK-1501) Allow Travis CI config to be templated
This commit is contained in:
@@ -14,7 +14,6 @@ AllCops:
|
|||||||
- "**/Rakefile"
|
- "**/Rakefile"
|
||||||
- pkg/**/*
|
- pkg/**/*
|
||||||
- spec/fixtures/**/*
|
- spec/fixtures/**/*
|
||||||
- spec/**/*
|
|
||||||
- vendor/**/*
|
- vendor/**/*
|
||||||
- "**/Puppetfile"
|
- "**/Puppetfile"
|
||||||
- "**/Vagrantfile"
|
- "**/Vagrantfile"
|
||||||
@@ -28,6 +27,7 @@ GetText/DecorateString:
|
|||||||
Description: We don't want to decorate test output.
|
Description: We don't want to decorate test output.
|
||||||
Exclude:
|
Exclude:
|
||||||
- spec/**/*
|
- spec/**/*
|
||||||
|
Enabled: false
|
||||||
RSpec/BeforeAfterAll:
|
RSpec/BeforeAfterAll:
|
||||||
Description: Beware of using after(:all) as it may cause state to leak between tests.
|
Description: Beware of using after(:all) as it may cause state to leak between tests.
|
||||||
A necessary evil in acceptance testing.
|
A necessary evil in acceptance testing.
|
||||||
@@ -89,6 +89,12 @@ Style/MethodCalledOnDoEndBlock:
|
|||||||
Enabled: true
|
Enabled: true
|
||||||
Style/StringMethods:
|
Style/StringMethods:
|
||||||
Enabled: true
|
Enabled: true
|
||||||
|
GetText/DecorateFunctionMessage:
|
||||||
|
Enabled: false
|
||||||
|
GetText/DecorateStringFormattingUsingInterpolation:
|
||||||
|
Enabled: false
|
||||||
|
GetText/DecorateStringFormattingUsingPercent:
|
||||||
|
Enabled: false
|
||||||
Layout/EndOfLine:
|
Layout/EndOfLine:
|
||||||
Enabled: false
|
Enabled: false
|
||||||
Layout/IndentHeredoc:
|
Layout/IndentHeredoc:
|
||||||
|
|||||||
60
.sync.yml
60
.sync.yml
@@ -7,7 +7,65 @@
|
|||||||
unmanaged: true
|
unmanaged: true
|
||||||
|
|
||||||
.travis.yml:
|
.travis.yml:
|
||||||
unmanaged: true
|
branches:
|
||||||
|
- release
|
||||||
|
includes:
|
||||||
|
-
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=deb_puppet5
|
||||||
|
rvm: 2.5.1
|
||||||
|
before_script:
|
||||||
|
- bundle exec rake 'litmus:provision_list[travis_deb]'
|
||||||
|
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
|
||||||
|
- bundle exec rake 'litmus:install_agent[puppet5]'
|
||||||
|
- bundle exec rake litmus:install_module
|
||||||
|
script:
|
||||||
|
- bundle exec rake litmus:acceptance:parallel
|
||||||
|
services: docker
|
||||||
|
sudo: required
|
||||||
|
stage: acceptance
|
||||||
|
-
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=deb_puppet6
|
||||||
|
rvm: 2.5.1
|
||||||
|
before_script:
|
||||||
|
- bundle exec rake 'litmus:provision_list[travis_deb]'
|
||||||
|
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
|
||||||
|
- bundle exec rake 'litmus:install_agent[puppet6]'
|
||||||
|
- bundle exec rake litmus:install_module
|
||||||
|
script:
|
||||||
|
- bundle exec rake litmus:acceptance:parallel
|
||||||
|
services: docker
|
||||||
|
-
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=el_puppet5
|
||||||
|
rvm: 2.5.1
|
||||||
|
before_script:
|
||||||
|
- bundle exec rake 'litmus:provision_list[travis_el]'
|
||||||
|
- bundle exec rake 'litmus:install_agent[puppet5]'
|
||||||
|
- bundle exec rake litmus:install_module
|
||||||
|
script:
|
||||||
|
- bundle exec rake litmus:acceptance:parallel
|
||||||
|
services: docker
|
||||||
|
sudo: required
|
||||||
|
stage: acceptance
|
||||||
|
-
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=el_puppet6
|
||||||
|
rvm: 2.5.1
|
||||||
|
before_script:
|
||||||
|
- bundle exec rake 'litmus:provision_list[travis_el]'
|
||||||
|
- bundle exec rake 'litmus:install_agent[puppet6]'
|
||||||
|
- bundle exec rake litmus:install_module
|
||||||
|
script:
|
||||||
|
- bundle exec rake litmus:acceptance:parallel
|
||||||
|
services: docker
|
||||||
|
sudo: required
|
||||||
|
stage: acceptance
|
||||||
|
|
||||||
appveyor.yml:
|
appveyor.yml:
|
||||||
delete: true
|
delete: true
|
||||||
|
|||||||
91
.travis.yml
91
.travis.yml
@@ -23,59 +23,6 @@ stages:
|
|||||||
matrix:
|
matrix:
|
||||||
fast_finish: true
|
fast_finish: true
|
||||||
include:
|
include:
|
||||||
-
|
|
||||||
bundler_args:
|
|
||||||
dist: trusty
|
|
||||||
env: PLATFORMS=deb_puppet5
|
|
||||||
rvm: 2.5.1
|
|
||||||
before_script:
|
|
||||||
- bundle exec rake 'litmus:provision_list[travis_deb]'
|
|
||||||
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
|
|
||||||
- bundle exec rake 'litmus:install_agent[puppet5]'
|
|
||||||
- bundle exec rake litmus:install_module
|
|
||||||
script:
|
|
||||||
- bundle exec rake litmus:acceptance:parallel
|
|
||||||
services: docker
|
|
||||||
sudo: required
|
|
||||||
-
|
|
||||||
bundler_args:
|
|
||||||
dist: trusty
|
|
||||||
env: PLATFORMS=deb_puppet6
|
|
||||||
rvm: 2.5.1
|
|
||||||
before_script:
|
|
||||||
- bundle exec rake 'litmus:provision_list[travis_deb]'
|
|
||||||
- bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
|
|
||||||
- bundle exec rake 'litmus:install_agent[puppet6]'
|
|
||||||
- bundle exec rake litmus:install_module
|
|
||||||
script:
|
|
||||||
- bundle exec rake litmus:acceptance:parallel
|
|
||||||
services: docker
|
|
||||||
-
|
|
||||||
bundler_args:
|
|
||||||
dist: trusty
|
|
||||||
env: PLATFORMS=el_puppet5
|
|
||||||
rvm: 2.5.1
|
|
||||||
before_script:
|
|
||||||
- bundle exec rake 'litmus:provision_list[travis_el]'
|
|
||||||
- bundle exec rake 'litmus:install_agent[puppet5]'
|
|
||||||
- bundle exec rake litmus:install_module
|
|
||||||
script:
|
|
||||||
- bundle exec rake litmus:acceptance:parallel
|
|
||||||
services: docker
|
|
||||||
sudo: required
|
|
||||||
-
|
|
||||||
bundler_args:
|
|
||||||
dist: trusty
|
|
||||||
env: PLATFORMS=el_puppet6
|
|
||||||
rvm: 2.5.1
|
|
||||||
before_script:
|
|
||||||
- bundle exec rake 'litmus:provision_list[travis_el]'
|
|
||||||
- bundle exec rake 'litmus:install_agent[puppet6]'
|
|
||||||
- bundle exec rake litmus:install_module
|
|
||||||
script:
|
|
||||||
- bundle exec rake litmus:acceptance:parallel
|
|
||||||
services: docker
|
|
||||||
sudo: required
|
|
||||||
-
|
-
|
||||||
env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
|
env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
|
||||||
stage: static
|
stage: static
|
||||||
@@ -90,6 +37,44 @@ matrix:
|
|||||||
-
|
-
|
||||||
env: DEPLOY_TO_FORGE=yes
|
env: DEPLOY_TO_FORGE=yes
|
||||||
stage: deploy
|
stage: deploy
|
||||||
|
-
|
||||||
|
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=deb_puppet5
|
||||||
|
rvm: 2.5.1
|
||||||
|
script: ["bundle exec rake litmus:acceptance:parallel"]
|
||||||
|
services: docker
|
||||||
|
stage: acceptance
|
||||||
|
sudo: required
|
||||||
|
-
|
||||||
|
before_script: ["bundle exec rake 'litmus:provision_list[travis_deb]'", "bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=deb_puppet6
|
||||||
|
rvm: 2.5.1
|
||||||
|
script: ["bundle exec rake litmus:acceptance:parallel"]
|
||||||
|
services: docker
|
||||||
|
-
|
||||||
|
before_script: ["bundle exec rake 'litmus:provision_list[travis_el]'", "bundle exec rake 'litmus:install_agent[puppet5]'", "bundle exec rake litmus:install_module"]
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=el_puppet5
|
||||||
|
rvm: 2.5.1
|
||||||
|
script: ["bundle exec rake litmus:acceptance:parallel"]
|
||||||
|
services: docker
|
||||||
|
stage: acceptance
|
||||||
|
sudo: required
|
||||||
|
-
|
||||||
|
before_script: ["bundle exec rake 'litmus:provision_list[travis_el]'", "bundle exec rake 'litmus:install_agent[puppet6]'", "bundle exec rake litmus:install_module"]
|
||||||
|
bundler_args:
|
||||||
|
dist: trusty
|
||||||
|
env: PLATFORMS=el_puppet6
|
||||||
|
rvm: 2.5.1
|
||||||
|
script: ["bundle exec rake litmus:acceptance:parallel"]
|
||||||
|
services: docker
|
||||||
|
stage: acceptance
|
||||||
|
sudo: required
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
|
|||||||
3
Gemfile
3
Gemfile
@@ -24,6 +24,7 @@ group :development do
|
|||||||
gem "json", '= 1.8.1', require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.1.9')
|
gem "json", '= 1.8.1', require: false if Gem::Version.new(RUBY_VERSION.dup) == Gem::Version.new('2.1.9')
|
||||||
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
gem "json", '= 2.0.4', require: false if Gem::Requirement.create('~> 2.4.2').satisfied_by?(Gem::Version.new(RUBY_VERSION.dup))
|
||||||
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))
|
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))
|
||||||
|
gem "rb-readline", '= 0.5.5', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
||||||
gem "puppet-module-posix-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
|
gem "puppet-module-posix-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
|
||||||
gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
|
gem "puppet-module-posix-dev-r#{minor_version}", '~> 0.3', require: false, platforms: [:ruby]
|
||||||
gem "puppet-module-win-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
gem "puppet-module-win-default-r#{minor_version}", '~> 0.3', require: false, platforms: [:mswin, :mingw, :x64_mingw]
|
||||||
@@ -70,4 +71,4 @@ extra_gemfiles.each do |gemfile|
|
|||||||
eval(File.read(gemfile), binding)
|
eval(File.read(gemfile), binding)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
# vim: syntax=ruby
|
# vim: syntax=ruby
|
||||||
|
|||||||
13
Rakefile
13
Rakefile
@@ -15,8 +15,17 @@ end
|
|||||||
|
|
||||||
def changelog_project
|
def changelog_project
|
||||||
return unless Rake.application.top_level_tasks.include? "changelog"
|
return unless Rake.application.top_level_tasks.include? "changelog"
|
||||||
returnVal = nil || JSON.load(File.read('metadata.json'))['source'].match(%r{.*/([^/]*)})[1]
|
|
||||||
raise "unable to find the changelog_project in .sync.yml or the name in metadata.json" if returnVal.nil?
|
returnVal = nil
|
||||||
|
returnVal ||= begin
|
||||||
|
metadata_source = JSON.load(File.read('metadata.json'))['source']
|
||||||
|
metadata_source_match = metadata_source && metadata_source.match(%r{.*\/([^\/]*?)(?:\.git)?\Z})
|
||||||
|
|
||||||
|
metadata_source_match && metadata_source_match[1]
|
||||||
|
end
|
||||||
|
|
||||||
|
raise "unable to find the changelog_project in .sync.yml or calculate it from the source in metadata.json" if returnVal.nil?
|
||||||
|
|
||||||
puts "GitHubChangelogGenerator project:#{returnVal}"
|
puts "GitHubChangelogGenerator project:#{returnVal}"
|
||||||
returnVal
|
returnVal
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -80,6 +80,6 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"template-url": "https://github.com/puppetlabs/pdk-templates/#master",
|
"template-url": "https://github.com/puppetlabs/pdk-templates/#master",
|
||||||
"template-ref": "heads/master-0-gb096033",
|
"template-ref": "1.14.1-0-g0b5b39b",
|
||||||
"pdk-version": "1.11.1"
|
"pdk-version": "1.14.0"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,5 +3,6 @@
|
|||||||
# Facts specified here will override the values provided by rspec-puppet-facts.
|
# Facts specified here will override the values provided by rspec-puppet-facts.
|
||||||
---
|
---
|
||||||
ipaddress: "172.16.254.254"
|
ipaddress: "172.16.254.254"
|
||||||
|
ipaddress6: "FE80:0000:0000:0000:AAAA:AAAA:AAAA"
|
||||||
is_pe: false
|
is_pe: false
|
||||||
macaddress: "AA:AA:AA:AA:AA:AA"
|
macaddress: "AA:AA:AA:AA:AA:AA"
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
require 'spec_helper'
|
require 'spec_helper'
|
||||||
|
|
||||||
url = 'http://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz'
|
|
||||||
|
|
||||||
describe 'java::download', type: :define do
|
describe 'java::download', type: :define do
|
||||||
|
let(:url) { 'http://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz' }
|
||||||
|
|
||||||
context 'with CentOS 64-bit' do
|
context 'with CentOS 64-bit' do
|
||||||
let(:facts) { { kernel: 'Linux', os: { family: 'RedHat', architecture: 'x86_64', name: 'CentOS', release: { full: '6.0' } } } }
|
let(:facts) { { kernel: 'Linux', os: { family: 'RedHat', architecture: 'x86_64', name: 'CentOS', release: { full: '6.0' } } } }
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@ describe 'java::download', type: :define do
|
|||||||
version_major: '8u201',
|
version_major: '8u201',
|
||||||
version_minor: 'b09',
|
version_minor: 'b09',
|
||||||
java_se: 'jdk',
|
java_se: 'jdk',
|
||||||
url: $url,
|
url: url,
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
let(:title) { 'jdk8' }
|
let(:title) { 'jdk8' }
|
||||||
@@ -48,7 +48,7 @@ describe 'java::download', type: :define do
|
|||||||
basedir: '/usr/java',
|
basedir: '/usr/java',
|
||||||
manage_symlink: true,
|
manage_symlink: true,
|
||||||
symlink_name: 'java_home',
|
symlink_name: 'java_home',
|
||||||
url: $url,
|
url: url,
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
let(:title) { 'jdk6' }
|
let(:title) { 'jdk6' }
|
||||||
@@ -61,7 +61,7 @@ describe 'java::download', type: :define do
|
|||||||
let(:facts) { { kernel: 'Linux', os: { family: 'Debian', architecture: 'amd64', name: 'Ubuntu', release: { full: '16.04' } } } }
|
let(:facts) { { kernel: 'Linux', os: { family: 'Debian', architecture: 'amd64', name: 'Ubuntu', release: { full: '16.04' } } } }
|
||||||
|
|
||||||
context 'when passing URL to url parameter' do
|
context 'when passing URL to url parameter' do
|
||||||
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: $url } }
|
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: url } }
|
||||||
let(:title) { 'jdk8' }
|
let(:title) { 'jdk8' }
|
||||||
|
|
||||||
it { is_expected.to contain_archive('/tmp/jdk-8u201-linux-x64.tar.gz') }
|
it { is_expected.to contain_archive('/tmp/jdk-8u201-linux-x64.tar.gz') }
|
||||||
@@ -72,7 +72,7 @@ describe 'java::download', type: :define do
|
|||||||
let(:facts) { { kernel: 'Linux', os: { family: 'Debian', architecture: 'amd64', name: 'Debian', release: { full: '10.0' } } } }
|
let(:facts) { { kernel: 'Linux', os: { family: 'Debian', architecture: 'amd64', name: 'Debian', release: { full: '10.0' } } } }
|
||||||
|
|
||||||
context 'when passing URL to url parameter' do
|
context 'when passing URL to url parameter' do
|
||||||
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: $url } }
|
let(:params) { { ensure: 'present', version_major: '8u201', version_minor: 'b09', java_se: 'jdk', url: url } }
|
||||||
let(:title) { 'jdk8' }
|
let(:title) { 'jdk8' }
|
||||||
|
|
||||||
it { is_expected.to contain_archive('/tmp/jdk-8u201-linux-x64.tar.gz') }
|
it { is_expected.to contain_archive('/tmp/jdk-8u201-linux-x64.tar.gz') }
|
||||||
|
|||||||
Reference in New Issue
Block a user