diff --git a/README.md b/README.md index 10d50d0631c128936ddf41d678ba68d511d06120..03b9b3722721747ce15a8c82a10865731e013d29 100644 --- a/README.md +++ b/README.md @@ -123,6 +123,7 @@ Travis uses a .travis.yml file in the root of your repository to learn about you |litmus\\**provision_list**|Allows you to specify the platforms list under test. Default test are ran on platformes defined in provision.yaml file under _travis_deb_ and _travis_el_| |litmus\\**rvm**|Allows you to specify the ruby version under test. Default it is set to _2.5.7_| |litmus\\**install_wget**|Allows you to enable automatic installation of wget on the platform under test. We need this when installing agent on travis_deb platforms. Default it is disabled. | +|litmus\\**complex\\collection**|Allows you to specify multiple collections of `puppet_collection` and `provision_list`, allowing you to set certain OS to only run on certain Puppet versions. | |user|This string needs to be set to the Puppet Forge user name. To enable deployment the secure key also needs to be set.| |secure|This string needs to be set to the encrypted password to enable deployment. See [https://docs.travis-ci.com/user/encryption-keys/#usage](https://docs.travis-ci.com/user/encryption-keys/#usage) for instructions on how to encrypt your password.| diff --git a/config_defaults.yml b/config_defaults.yml index b97f4a32322553bcd3b034c4e5ff7ffadd133a9b..4934cf664f28c539b6d78fef1081c6c41ef855d2 100644 --- a/config_defaults.yml +++ b/config_defaults.yml @@ -87,6 +87,7 @@ common: - master - /^v\d/ use_litmus: false + use_litmus_complex: false litmus: provision_list: [travis_deb, travis_el] puppet_collection: [puppet5, puppet6] diff --git a/moduleroot/.travis.yml.erb b/moduleroot/.travis.yml.erb index 4bd580d71efacaaf09deb0c6a705872a39a65063..e7aa925b8c6c18ab0c57460f214ea4aa3ecec6d5 100644 --- a/moduleroot/.travis.yml.erb +++ b/moduleroot/.travis.yml.erb @@ -112,8 +112,14 @@ jobs: <% end -%> <% end -%> <% if @configs['use_litmus'] - @configs['litmus']['puppet_collection'].each do |puppet_version| - @configs['litmus']['provision_list'].each do |platform|-%> + configs = if @configs['litmus']['complex'] + (@configs['litmus']['complex'] + [{'collection' =>@configs['litmus'] }]) + else + [{'collection' =>@configs['litmus'] }] + end + configs.each do |config| + config['collection']['puppet_collection'].each do |puppet_version| + config['collection']['provision_list'].each do |platform|-%> - before_script: - "bundle exec rake 'litmus:provision_list[<%=platform%>]'" @@ -128,6 +134,7 @@ jobs: script: ["travis_wait 45 bundle exec rake litmus:acceptance:parallel"] services: docker stage: acceptance +<% end -%> <% end -%> <% end -%> <% end -%>