--- expeditor: defaults: buildkite: retry: automatic: limit: 1 timeout_in_minutes: 30 retry: automatic: limit: 1 steps: ######################################################################### # Tests Ruby 2.6 ######################################################################### - label: "Integration Specs Ubuntu :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:integration expeditor: executor: docker: image: rubydistros/ubuntu-18.04 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - BUNDLE_GEMFILE=/workdir/Gemfile - label: "Functional Specs Ubuntu :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - apt-get install -y cron locales # needed for functional tests to pass - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:functional expeditor: executor: docker: image: rubydistros/ubuntu-18.04 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Unit Specs Ubuntu :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: image: rubydistros/ubuntu-18.04 environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Integration Specs CentOS :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:integration expeditor: executor: docker: image: rubydistros/centos-7 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - BUNDLE_GEMFILE=/workdir/Gemfile - label: "Functional Specs CentOS :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - yum install -y crontabs e2fsprogs util-linux - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:functional expeditor: executor: docker: image: rubydistros/centos-7 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Unit Specs CentOS :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: image: rubydistros/centos-7 environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Integration Specs openSUSE :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:integration expeditor: executor: docker: image: rubydistros/opensuse-15 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - BUNDLE_GEMFILE=/workdir/Gemfile - label: "Functional Specs openSUSE :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - zypper install -y cronie - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:functional expeditor: executor: docker: image: rubydistros/opensuse-15 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Unit Specs openSUSE :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: image: rubydistros/opensuse-15 environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Integration Specs Fedora :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:integration expeditor: executor: docker: image: rubydistros/fedora-latest privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - BUNDLE_GEMFILE=/workdir/Gemfile - label: "Functional Specs Fedora :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - yum install -y crontabs e2fsprogs util-linux - cd /workdir; bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:functional expeditor: executor: docker: image: rubydistros/fedora-latest privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Unit Specs Fedora :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: image: rubydistros/fedora-latest environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - label: "Integration Specs Windows :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_win_integration.ps1 expeditor: executor: docker: host_os: windows environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist shell: ["powershell", "-Command"] - label: "Functional Specs Windows :ruby: 2.6" commands: - scripts/bk_tests/bk_win_functional.ps1 expeditor: executor: windows: privileged: true shell: ["powershell", "-Command"] - label: "Chocolatey Specs Windows :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_run_choco.ps1 expeditor: executor: docker: host_os: windows shell: ["powershell", "-Command"] - label: "Unit Specs Windows :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_win_unit.ps1 expeditor: executor: docker: host_os: windows environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist shell: ["powershell", "-Command"] - label: "Chefstyle :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen ruby_prof - bundle exec rake style expeditor: executor: docker: image: rubydistros/ubuntu-18.04 ######################################################################### # Tests Ruby 2.7 ######################################################################### - label: "Integration Specs :ruby: 2.7" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:integration expeditor: executor: docker: image: ruby:2.7-buster privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - INTEGRATION_SPECS_27=1 # - label: "Functional Specs :ruby: 2.7" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - apt-get install -y cron locales net-tools # needed for functional tests to pass - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:functional expeditor: executor: docker: image: ruby:2.7-buster privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - FUNCTIONAL_SPECS_27=1 - label: "Unit Specs :ruby: 2.7" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: image: ruby:2.7-buster environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist - UNIT_SPECS_27=1 ######################################################################### # EXTERNAL GEM TESTING ######################################################################### - label: "Test chef-sugar gem :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec tasks/bin/run_external_test chef/chef-sugar master rake expeditor: executor: docker: image: rubydistros/ubuntu-18.04 - label: "Test chef-zero gem :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec tasks/bin/run_external_test chef/chef-zero master rake pedant expeditor: executor: docker: image: rubydistros/ubuntu-18.04 environment: - PEDANT_OPTS=--skip-oc_id - CHEF_FS=true - label: "Test cheffish gem :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec tasks/bin/run_external_test chef/cheffish master rake spec expeditor: executor: docker: image: rubydistros/ubuntu-18.04 - label: "Test chefspec gem :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec tasks/bin/run_external_test chefspec/chefspec master rake expeditor: executor: docker: image: rubydistros/ubuntu-18.04 - label: "Test knife-windows gem :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec tasks/bin/run_external_test chef/knife-windows master rake spec expeditor: executor: docker: image: rubydistros/ubuntu-18.04 - label: "Test berkshelf gem :ruby: 2.6" commands: - /workdir/scripts/bk_tests/bk_container_prep.sh - apt-get install -y graphviz - gem install bundler -v 1.17.3 # necessary for berks Gemfile.lock for now - bundle install --jobs=3 --retry=3 --without omnibus_package docgen - bundle exec tasks/bin/run_external_test berkshelf/berkshelf master rake expeditor: executor: docker: image: rubydistros/ubuntu-18.04 ######################################################################### # START TEST KITCHEN ONLY ######################################################################### - label: "Kitchen Tests :amazon: 2" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-amazonlinux-2 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests :amazon: 201X" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-amazonlinux-2 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Ubuntu: 16.04" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-ubuntu-1604 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: UBUNTU: "16.04" KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Ubuntu: 18.04" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-ubuntu-1804 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Ubuntu: 20.04" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-ubuntu-2004 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Debian: 8" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-debian-8 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Debian: 9" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-debian-9 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Debian: 10" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-debian-10 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests CentOS: 6" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-centos-6 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests CentOS: 7" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-centos-7 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests CentOS: 8" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-centos-8 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Oracle Linux: 6" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-oraclelinux-6 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Oracle Linux: 7" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-oraclelinux-7 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests Fedora: latest" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-fedora-latest artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true - label: "Kitchen Tests openSUSE Leap: 15" commands: - scripts/bk_tests/bk_linux_exec.sh - cd kitchen-tests - ~/.asdf/shims/bundle exec kitchen test end-to-end-opensuse-leap-15 artifact_paths: - $PWD/.kitchen/logs/kitchen.log env: KITCHEN_YAML: kitchen.yml expeditor: executor: linux: privileged: true single-use: true