diff options
author | Swati Keshari <62278765+skeshari12@users.noreply.github.com> | 2021-06-16 20:23:47 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-16 20:23:47 +0530 |
commit | 53c35e9abc2b0c233f3cb70e941adf7bcb2bb8a8 (patch) | |
tree | 8b57fa5ce47950713d70ba1b561a346c61765936 /.expeditor | |
parent | 8e0c8efffa986f92d018949630a7de2584379c8a (diff) | |
parent | e2fe8eb41634152e192575c3daf27d338fc8f816 (diff) | |
download | chef-53c35e9abc2b0c233f3cb70e941adf7bcb2bb8a8.tar.gz |
Merge branch 'master' into update-expeditor-configuration
Diffstat (limited to '.expeditor')
-rw-r--r-- | .expeditor/config.yml | 77 | ||||
-rw-r--r-- | .expeditor/habitat-test.pipeline.yml | 6 | ||||
-rw-r--r-- | .expeditor/release.omnibus.yml | 29 | ||||
-rwxr-xr-x | .expeditor/scripts/bk_container_prep.sh | 27 | ||||
-rwxr-xr-x | .expeditor/scripts/bk_linux_exec.sh | 51 | ||||
-rw-r--r-- | .expeditor/scripts/bk_win_functional.ps1 | 33 | ||||
-rw-r--r-- | .expeditor/scripts/bk_win_integration.ps1 | 12 | ||||
-rw-r--r-- | .expeditor/scripts/bk_win_prep.ps1 | 15 | ||||
-rw-r--r-- | .expeditor/scripts/bk_win_unit.ps1 | 9 | ||||
-rw-r--r-- | .expeditor/scripts/ensure-minimum-viable-hab.ps1 | 8 | ||||
-rwxr-xr-x | .expeditor/scripts/install-hab.sh | 24 | ||||
-rw-r--r-- | .expeditor/scripts/verify-plan.ps1 | 37 | ||||
-rwxr-xr-x | .expeditor/scripts/verify-plan.sh | 38 | ||||
-rwxr-xr-x | .expeditor/update_bundler_dep.sh | 29 | ||||
-rwxr-xr-x[-rw-r--r--] | .expeditor/update_dep.sh | 13 | ||||
-rwxr-xr-x | .expeditor/update_version.sh | 1 | ||||
-rw-r--r-- | .expeditor/verify.pipeline.yml | 508 |
17 files changed, 498 insertions, 419 deletions
diff --git a/.expeditor/config.yml b/.expeditor/config.yml index 69fe5b8f72..8df29c65a3 100644 --- a/.expeditor/config.yml +++ b/.expeditor/config.yml @@ -1,8 +1,5 @@ # Documentation available at https://expeditor.chef.io/docs/getting-started/ --- -# the name we use for this project when interacting with expeditor chatbot -project: - alias: chef-16 # The name of the product keys for this product (from mixlib-install) product_key: @@ -147,6 +144,21 @@ subscriptions: - workload: ruby_gem_published:win32-taskscheduler-* actions: - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:win32-certstore-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:win32-event-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:win32-mutex-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:win32-eventlog-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:win32-api-* + actions: + - bash:.expeditor/update_dep.sh - workload: ruby_gem_published:ffi-yajl-* actions: - bash:.expeditor/update_dep.sh @@ -162,3 +174,62 @@ subscriptions: - workload: ruby_gem_published:ffi-libarchive-* actions: - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:plist-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:ffi-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:net-ssh-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:tty-prompt-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:tty-screen-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:tty-table-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:pastel-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:erubis-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:bcrypt_pbkdf-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:ed25519-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:addressable-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:proxifier-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:syslog-logger-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:uuidtools-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:iniparse-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:net-sftp-* + actions: + - bash:.expeditor/update_dep.sh + - workload: ruby_gem_published:fauxhai-ng-* + actions: + - bash:.expeditor/update_dep.sh + # NOTE: The branch of Ohai here needs to be updated when setting up a stable branch of chef/chef + - workload: chef/ohai:master_completed:pull_request_merged:chef/ohai:master:* + actions: + - bash:.expeditor/update_bundler_dep.sh + # NOTE: When the stable branch of chef/chef is being cut you probably want to remove this subscription + - workload: chef/chefstyle:master_completed:pull_request_merged:chef/chefstyle:master:* + actions: + - bash:.expeditor/update_bundler_dep.sh diff --git a/.expeditor/habitat-test.pipeline.yml b/.expeditor/habitat-test.pipeline.yml index 7d2cc8f653..859d4eb1f1 100644 --- a/.expeditor/habitat-test.pipeline.yml +++ b/.expeditor/habitat-test.pipeline.yml @@ -11,7 +11,7 @@ steps: - label: ":linux: Validate Linux" commands: - - sudo ./scripts/ci/install-hab.sh x86_64-linux + - sudo ./.expeditor/scripts/install-hab.sh x86_64-linux - 'echo "--- :hammer_and_wrench: Installing $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64LINUX"' - sudo hab pkg install $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64LINUX - sudo ./habitat/tests/test.sh $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64LINUX @@ -23,7 +23,7 @@ steps: - label: ":linux: Validate Linux (kernel2)" commands: - - sudo ./scripts/ci/install-hab.sh x86_64-linux-kernel2 + - sudo ./.expeditor/scripts/install-hab.sh x86_64-linux-kernel2 - 'echo "--- :hammer_and_wrench: Installing $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64LINUXKERNEL2"' - sudo hab pkg install $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64LINUXKERNEL2 - sudo ./habitat/tests/test.sh $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64LINUXKERNEL2 @@ -35,7 +35,7 @@ steps: - label: ":windows: Validate Habitat Builds of Chef Infra" commands: - - powershell -File ./scripts/ci/ensure-minimum-viable-hab.ps1 + - powershell -File ./.expeditor/scripts/ensure-minimum-viable-hab.ps1 - 'Write-Host "--- :hammer_and_wrench: Installing $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64WINDOWS"' - hab pkg install $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64WINDOWS - powershell -File ./habitat/tests/test.ps1 -PackageIdentifier $EXPEDITOR_PKG_IDENTS_CHEFINFRACLIENTX86_64WINDOWS diff --git a/.expeditor/release.omnibus.yml b/.expeditor/release.omnibus.yml index 9b7f397a33..a9d8aec620 100644 --- a/.expeditor/release.omnibus.yml +++ b/.expeditor/release.omnibus.yml @@ -5,6 +5,8 @@ test-path: omnibus/omnibus-test.sh test-path-windows: omnibus/omnibus-test.ps1 fips-platforms: - el-*-x86_64 + - el-*-ppc64* + - ubuntu-*-x86_64 - windows-* builder-to-testers-map: aix-7.1-powerpc: @@ -15,14 +17,13 @@ builder-to-testers-map: - debian-10-x86_64 debian-10-aarch64: - debian-10-aarch64 - el-6-i686: - - el-6-i686 el-6-x86_64: - el-6-x86_64 el-7-aarch64: - el-7-aarch64 - - el-8-aarch64 - amazon-2-aarch64 + el-8-aarch64: + - el-8-aarch64 el-7-ppc64: - el-7-ppc64 el-7-ppc64le: @@ -32,16 +33,19 @@ builder-to-testers-map: - el-8-s390x el-7-x86_64: - el-7-x86_64 - - el-8-x86_64 - amazon-2-x86_64 + el-8-x86_64: + - el-8-x86_64 freebsd-11-amd64: - freebsd-11-amd64 - freebsd-12-amd64 - mac_os_x-10.13-x86_64: - - mac_os_x-10.13-x86_64 +# - freebsd-13-amd64 + mac_os_x-10.14-x86_64: - mac_os_x-10.14-x86_64 - mac_os_x-10.15-x86_64 - - mac_os_x-11.0-x86_64 + - mac_os_x-11-x86_64 + mac_os_x-11-arm64: + - mac_os_x-11-arm64 sles-12-s390x: - sles-12-s390x - sles-15-s390x @@ -50,15 +54,14 @@ builder-to-testers-map: - sles-15-x86_64 sles-15-aarch64: - sles-15-aarch64 -# solaris2-5.11-i386: -# - solaris2-5.11-i386 -# solaris2-5.11-sparc: -# - solaris2-5.11-sparc + solaris2-5.11-i386: + - solaris2-5.11-i386 + solaris2-5.11-sparc: + - solaris2-5.11-sparc ubuntu-18.04-aarch64: - ubuntu-18.04-aarch64 - ubuntu-20.04-aarch64 - ubuntu-16.04-x86_64: - - ubuntu-16.04-x86_64 + ubuntu-18.04-x86_64: - ubuntu-18.04-x86_64 - ubuntu-20.04-x86_64 windows-2012r2-i386: diff --git a/.expeditor/scripts/bk_container_prep.sh b/.expeditor/scripts/bk_container_prep.sh new file mode 100755 index 0000000000..e065f20579 --- /dev/null +++ b/.expeditor/scripts/bk_container_prep.sh @@ -0,0 +1,27 @@ +# This script gets a container ready to run our various tests in BuildKite + +echo "--- Container Config..." + +source /etc/os-release +echo $PRETTY_NAME + +echo "ruby version:" +ruby -v +echo "bundler version:" +bundle -v + +echo "--- Preparing Container..." + +export FORCE_FFI_YAJL="ext" +export CHEF_LICENSE="accept-no-persist" +export BUNDLE_GEMFILE="/workdir/Gemfile" + +# make sure we have the network tools in place for various network specs +if [ -f /etc/debian_version ]; then + touch /etc/network/interfaces +fi + +# remove default bundler config if there is one +rm -f .bundle/config + +echo "+++ Run tests" diff --git a/.expeditor/scripts/bk_linux_exec.sh b/.expeditor/scripts/bk_linux_exec.sh new file mode 100755 index 0000000000..fbfd376581 --- /dev/null +++ b/.expeditor/scripts/bk_linux_exec.sh @@ -0,0 +1,51 @@ +#!/bin/bash + +# Enable IPv6 in docker +echo "--- Enabling ipv6 on docker" +sudo systemctl stop docker +dockerd_config="/etc/docker/daemon.json" +sudo echo "$(jq '. + {"ipv6": true, "fixed-cidr-v6": "2001:2019:6002::/80", "ip-forward": false}' $dockerd_config)" > $dockerd_config +sudo systemctl start docker + +# Install C and C++ +echo "--- Installing package deps" +sudo yum install -y gcc gcc-c++ openssl-devel readline-devel zlib-devel + +# Install ASDF +echo "--- Installing asdf to ${HOME}/.asdf" +git clone https://github.com/asdf-vm/asdf.git "${HOME}/.asdf" +cd "${HOME}/.asdf"; git checkout "$(git describe --abbrev=0 --tags)"; cd - +. "${HOME}/.asdf/asdf.sh" + +# Install Ruby +ruby_version=$(sed -n '/"ruby"/{s/.*version: "//;s/"//;p;}' omnibus_overrides.rb) +echo "--- Installing Ruby $ruby_version" +asdf plugin add ruby +asdf install ruby $ruby_version +asdf global ruby $ruby_version + +# Set Environment Variables +export BUNDLE_GEMFILE=$PWD/kitchen-tests/Gemfile +export FORCE_FFI_YAJL=ext +export CHEF_LICENSE="accept-silent" + +# Update Gems +echo "--- Installing Gems" +echo 'gem: --no-document' >> ~/.gemrc +sudo iptables -L DOCKER || ( echo "DOCKER iptables chain missing" ; sudo iptables -N DOCKER ) +bundle install --jobs=3 --retry=3 --path=../vendor/bundle + +echo "--- Config information" + +echo "!!!! RUBY VERSION !!!!" +ruby --version +echo "!!!! BUNDLER LOCATION !!!!" +which bundle +echo "!!!! BUNDLER VERSION !!!!" +bundle -v +echo "!!!! DOCKER VERSION !!!!" +docker version +echo "!!!! DOCKER STATUS !!!!" +sudo service docker status + +echo "+++ Running tests" diff --git a/.expeditor/scripts/bk_win_functional.ps1 b/.expeditor/scripts/bk_win_functional.ps1 new file mode 100644 index 0000000000..05f8e57248 --- /dev/null +++ b/.expeditor/scripts/bk_win_functional.ps1 @@ -0,0 +1,33 @@ +Write-Output "--- system details" +$Properties = 'Caption', 'CSName', 'Version', 'BuildType', 'OSArchitecture' +Get-CimInstance Win32_OperatingSystem | Select-Object $Properties | Format-Table -AutoSize + +# chocolatey functional tests fail so delete the chocolatey binary to avoid triggering them +Remove-Item -Path C:\ProgramData\chocolatey\bin\choco.exe -ErrorAction SilentlyContinue + +$ErrorActionPreference = 'Stop' + +Write-Output "--- Enable Ruby 2.7" + +Write-Output "Add Uru to Environment PATH" +$env:PATH = "C:\Program Files (x86)\Uru;" + $env:PATH +[Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine) + +Write-Output "Register Installed Ruby Version 2.7 With Uru" +Start-Process "C:\Program Files (x86)\Uru\uru_rt.exe" -ArgumentList 'admin add C:\ruby27\bin' -Wait +uru 271 +if (-not $?) { throw "Can't Activate Ruby. Did Uru Registration Succeed?" } +ruby -v +if (-not $?) { throw "Can't run Ruby. Is it installed?" } + +Write-Output "--- configure winrm" +winrm quickconfig -q + +Write-Output "--- bundle install" +bundle config set --local without 'omnibus_package' +bundle install --jobs=3 --retry=3 +if (-not $?) { throw "Unable to install gem dependencies" } + +Write-Output "+++ bundle exec rake spec:functional" +bundle exec rake spec:functional +if (-not $?) { throw "Chef functional specs failing." } diff --git a/.expeditor/scripts/bk_win_integration.ps1 b/.expeditor/scripts/bk_win_integration.ps1 new file mode 100644 index 0000000000..6b0debc790 --- /dev/null +++ b/.expeditor/scripts/bk_win_integration.ps1 @@ -0,0 +1,12 @@ +$CurrentDirectory = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent +$PrepScript = Join-Path $CurrentDirectory "bk_win_prep.ps1" +Invoke-Expression $PrepScript + +# Set-Item -Path Env:Path -Value ($Env:Path + ";C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin") +$Env:Path="C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\ruby27\bin;C:\ci-studio-common\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\ProgramData\chocolatey\bin;C:\Program Files\Git\cmd;C:\Users\ContainerAdministrator\AppData\Local\Microsoft\WindowsApps;C:\Go\bin;C:\Users\ContainerAdministrator\go\bin" + +winrm quickconfig -q + +echo "+++ bundle exec rake spec:integration" +bundle exec rake spec:integration +if (-not $?) { throw "Chef integration specs failing." } diff --git a/.expeditor/scripts/bk_win_prep.ps1 b/.expeditor/scripts/bk_win_prep.ps1 new file mode 100644 index 0000000000..37796da468 --- /dev/null +++ b/.expeditor/scripts/bk_win_prep.ps1 @@ -0,0 +1,15 @@ +echo "--- system details" +$Properties = 'Caption', 'CSName', 'Version', 'BuildType', 'OSArchitecture' +Get-CimInstance Win32_OperatingSystem | Select-Object $Properties | Format-Table -AutoSize + +echo "ruby version:" +ruby -v +if (-not $?) { throw "Can't run Ruby. Is it installed?" } + +echo "bundler version: " +bundle --version +if (-not $?) { throw "Can't run Bundler. Is it installed?" } + +echo "--- bundle install" +bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package +if (-not $?) { throw "Unable to install gem dependencies" }
\ No newline at end of file diff --git a/.expeditor/scripts/bk_win_unit.ps1 b/.expeditor/scripts/bk_win_unit.ps1 new file mode 100644 index 0000000000..f1f28ade05 --- /dev/null +++ b/.expeditor/scripts/bk_win_unit.ps1 @@ -0,0 +1,9 @@ +$CurrentDirectory = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent +$PrepScript = Join-Path $CurrentDirectory "bk_win_prep.ps1" +Invoke-Expression $PrepScript + +echo "+++ bundle exec rake" +bundle exec rake spec:unit +if (-not $?) { throw "Chef unit tests failing." } +bundle exec rake component_specs +if (-not $?) { throw "Chef component specs failing." } diff --git a/.expeditor/scripts/ensure-minimum-viable-hab.ps1 b/.expeditor/scripts/ensure-minimum-viable-hab.ps1 new file mode 100644 index 0000000000..10bfeb0fa8 --- /dev/null +++ b/.expeditor/scripts/ensure-minimum-viable-hab.ps1 @@ -0,0 +1,8 @@ +[Version]$hab_version = (hab --version).split(" ")[1].split("/")[0] +if ($hab_version -lt [Version]"0.85.0" ) { + Write-Host "--- :habicat: Installing the version of Habitat required" + install-habitat --version 0.85.0.20190916 + if (-not $?) { throw "Hab version is older than 0.85 and could not update it." } +} else { + Write-Host "--- :habicat: :thumbsup: Minimum required version of Habitat already installed" +} diff --git a/.expeditor/scripts/install-hab.sh b/.expeditor/scripts/install-hab.sh new file mode 100755 index 0000000000..75e910bfab --- /dev/null +++ b/.expeditor/scripts/install-hab.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +set -euo pipefail + +export HAB_LICENSE="accept" +export HAB_NONINTERACTIVE="true" + +hab_target="$1" + +# print error message followed by usage and exit +error () { + local message="$1" + + echo -e "\nERROR: ${message}\n" >&2 + + exit 1 +} + +[[ -n "$hab_target" ]] || error 'no hab target provided' + +echo "--- :habicat: Installing latest version of Habitat" +rm -rf /hab +curl https://raw.githubusercontent.com/habitat-sh/habitat/master/components/hab/install.sh | bash -s -- -t "$hab_target" +hab license accept diff --git a/.expeditor/scripts/verify-plan.ps1 b/.expeditor/scripts/verify-plan.ps1 new file mode 100644 index 0000000000..614d472964 --- /dev/null +++ b/.expeditor/scripts/verify-plan.ps1 @@ -0,0 +1,37 @@ +#!/usr/bin/env powershell + +#Requires -Version 5 + +param( + # The name of the plan that is to be built. + [string]$Plan +) + +$env:HAB_ORIGIN = 'ci' +$Plan = 'chef-infra-client' + +Write-Host "--- :8ball: :windows: Verifying $Plan" + +powershell -File "./.expeditor/scripts/ensure-minimum-viable-hab.ps1" +if (-not $?) { throw "Could not ensure the minimum hab version required is installed." } + +Write-Host "--- :key: Generating fake origin key" +hab origin key generate $env:HAB_ORIGIN + +$project_root = "$(git rev-parse --show-toplevel)" +Set-Location $project_root + +Write-Host "--- :construction: Building $Plan" +$env:DO_CHECK=$true; hab pkg build . +if (-not $?) { throw "unable to build"} + +. results/last_build.ps1 +if (-not $?) { throw "unable to determine details about this build"} + +Write-Host "--- :hammer_and_wrench: Installing $pkg_ident" +hab pkg install results/$pkg_artifact +if (-not $?) { throw "unable to install this build"} + +Write-Host "--- :mag_right: Testing $Plan" +powershell -File "./habitat/tests/test.ps1" -PackageIdentifier $pkg_ident +if (-not $?) { throw "package didn't pass the test suite" } diff --git a/.expeditor/scripts/verify-plan.sh b/.expeditor/scripts/verify-plan.sh new file mode 100755 index 0000000000..b207334267 --- /dev/null +++ b/.expeditor/scripts/verify-plan.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env bash + +set -euo pipefail + +export HAB_ORIGIN='ci' +export PLAN='chef-infra-client' +export CHEF_LICENSE="accept-no-persist" +export HAB_LICENSE="accept-no-persist" +export HAB_NONINTERACTIVE="true" + +# print error message followed by usage and exit +error () { + local message="$1" + + echo -e "\nERROR: ${message}\n" >&2 + + exit 1 +} + +echo "--- :8ball: :linux: Verifying $PLAN" +project_root="$(git rev-parse --show-toplevel)" + +echo "--- :key: Generating fake origin key" +hab origin key generate "$HAB_ORIGIN" + +echo "--- :construction: Building $PLAN (solely for verification testing)" +( + cd "$project_root" || error 'cannot change directory to project root' + DO_CHECK=true hab pkg build . || error 'unable to build' +) + +source "${project_root}/results/last_build.env" || error 'unable to determine details about this build' + +echo "--- :hammer_and_wrench: Installing $pkg_ident" +hab pkg install "${project_root}/results/$pkg_artifact" || error 'unable to install this build' + +echo "--- :mag_right: Testing $PLAN" +${project_root}/habitat/tests/test.sh "$pkg_ident" || error 'failures during test of executables' diff --git a/.expeditor/update_bundler_dep.sh b/.expeditor/update_bundler_dep.sh new file mode 100755 index 0000000000..71575a6c76 --- /dev/null +++ b/.expeditor/update_bundler_dep.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +############################################################################ +# What is this script? +# +# Chef uses a workflow tool called Expeditor to manage version bumps, changelogs +# and releases. When a dependency of chef is released, expeditor is triggered +# against this repository to run this script. It bumps our gem lock files and opens +# a PR. That way humans can do hard work and bots can open gem bump PRs. +############################################################################ + +set -evx + +branch="expeditor/${EXPEDITOR_REPO}_${EXPEDITOR_LATEST_COMMIT}" +git checkout -b "$branch" + +bundle lock --update + +git add . + +# give a friendly message for the commit and make sure it's noted for any future audit of our codebase that no +# DCO sign-off is needed for this sort of PR since it contains no intellectual property +git commit --message "Bump $EXPEDITOR_REPO to $EXPEDITOR_LATEST_COMMIT" --message "This pull request was triggered automatically via Expeditor when $DEPNAME $EXPEDITOR_LATEST_COMMIT was merged." --message "This change falls under the obvious fix policy so no Developer Certificate of Origin (DCO) sign-off is required." + +open_pull_request "$EXPEDITOR_BRANCH" + +# Get back to master and cleanup the leftovers - any changed files left over at the end of this script will get committed to master. +git checkout - +git branch -D "$branch" diff --git a/.expeditor/update_dep.sh b/.expeditor/update_dep.sh index baf950c408..55258c66f8 100644..100755 --- a/.expeditor/update_dep.sh +++ b/.expeditor/update_dep.sh @@ -11,11 +11,14 @@ set -evx +REPONAME=$(echo $EXPEDITOR_REPO | cut -d '/' -f 2) +DEPNAME="${EXPEDITOR_GEM_NAME:-${REPONAME:?Could not find gem name}}" + function new_gem_included() { - git diff | grep -E '^\+' | grep "${EXPEDITOR_GEM_NAME} (${EXPEDITOR_VERSION})" + git diff | grep -E '^\+' | grep "${DEPNAME} (${EXPEDITOR_VERSION})" } -branch="expeditor/${EXPEDITOR_GEM_NAME}_${EXPEDITOR_VERSION}" +branch="expeditor/${EXPEDITOR_BRANCH}_${DEPNAME}_${EXPEDITOR_VERSION}" git checkout -b "$branch" tries=12 @@ -23,10 +26,10 @@ for (( i=1; i<=$tries; i+=1 )); do bundle lock --update new_gem_included && break || sleep 20 if [ $i -eq $tries ]; then - echo "Searching for '${EXPEDITOR_GEM_NAME} (${EXPEDITOR_VERSION})' ${i} times and did not find it" + echo "Searching for '${DEPNAME} (${EXPEDITOR_VERSION})' ${i} times and did not find it" exit 1 else - echo "Searched ${i} times for '${EXPEDITOR_GEM_NAME} (${EXPEDITOR_VERSION})'" + echo "Searched ${i} times for '${DEPNAME} (${EXPEDITOR_VERSION})'" fi done @@ -34,7 +37,7 @@ git add . # give a friendly message for the commit and make sure it's noted for any future audit of our codebase that no # DCO sign-off is needed for this sort of PR since it contains no intellectual property -git commit --message "Bump $EXPEDITOR_GEM_NAME to $EXPEDITOR_VERSION" --message "This pull request was triggered automatically via Expeditor when $EXPEDITOR_GEM_NAME $EXPEDITOR_VERSION was promoted to Rubygems." --message "This change falls under the obvious fix policy so no Developer Certificate of Origin (DCO) sign-off is required." +git commit --message "Bump $DEPNAME to $EXPEDITOR_VERSION" --message "This pull request was triggered automatically via Expeditor when $DEPNAME $EXPEDITOR_VERSION was promoted to Rubygems." --message "This change falls under the obvious fix policy so no Developer Certificate of Origin (DCO) sign-off is required." open_pull_request "$EXPEDITOR_BRANCH" diff --git a/.expeditor/update_version.sh b/.expeditor/update_version.sh index 2a75c4b2f9..95840cadfc 100755 --- a/.expeditor/update_version.sh +++ b/.expeditor/update_version.sh @@ -16,6 +16,7 @@ VERSION=$(cat VERSION) sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"${VERSION}\"/" chef-config/lib/chef-config/version.rb sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"${VERSION}\"/" chef-bin/lib/chef-bin/version.rb sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"${VERSION}\"/" chef-utils/lib/chef-utils/version.rb +sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"${VERSION}\"/" knife/lib/chef/knife/version.rb sed -i -r "s/VersionString\.new\(\".+\"\)/VersionString.new(\"${VERSION}\")/" lib/chef/version.rb # Update the version inside Gemfile.lock diff --git a/.expeditor/verify.pipeline.yml b/.expeditor/verify.pipeline.yml index 5c58574cb3..b1ec9b73f2 100644 --- a/.expeditor/verify.pipeline.yml +++ b/.expeditor/verify.pipeline.yml @@ -7,194 +7,220 @@ expeditor: retry: automatic: limit: 1 - timeout_in_minutes: 30 + timeout_in_minutes: 45 steps: ######################################################################### - # Tests Ruby 2.7 + # Tests Ruby 2.6 ######################################################################### -- label: "Integration Ubuntu 18.04 :ruby: 2.7" +- label: "chef-utils Unit :ruby: 2.6" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh + - cd chef-utils + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package + - bundle exec rake spec + expeditor: + executor: + docker: + image: rubydistros/ubuntu-18.04:2.6 + +- label: "chef-config Unit :ruby: 2.6" + commands: + - /workdir/.expeditor/scripts/bk_container_prep.sh + - cd chef-config + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package + - bundle exec rake spec + expeditor: + executor: + docker: + image: rubydistros/ubuntu-18.04:2.6 + +######################################################################### + # Tests Ruby 3.0 +######################################################################### + +- label: "Integration Ubuntu 18.04 :ruby: 3.0" + commands: + - /workdir/.expeditor/scripts/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:integration expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 + image: rubydistros/ubuntu-18.04:3.0 privileged: true -- label: "Functional Ubuntu 18.04 :ruby: 2.7" +- label: "Functional Ubuntu 18.04 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - apt-get update -y - apt-get install -y cron locales # needed for functional tests to pass - - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:functional expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 + image: rubydistros/ubuntu-18.04:3.0 privileged: true -- label: "Unit Ubuntu 18.04 :ruby: 2.7" +- label: "Unit Ubuntu 18.04 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - /workdir/.expeditor/scripts/bk_container_prep.sh + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 + image: rubydistros/ubuntu-18.04:3.0 -- label: "Integration Ubuntu 20.04 :ruby: 2.7" +- label: "Integration Ubuntu 20.04 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:integration expeditor: executor: docker: - image: rubydistros/ubuntu-20.04:2.7 + image: rubydistros/ubuntu-20.04:3.0 privileged: true -- label: "Functional Ubuntu 20.04 :ruby: 2.7" +- label: "Functional Ubuntu 20.04 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - apt-get update -y - apt-get install -y cron locales # needed for functional tests to pass - - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:functional expeditor: executor: docker: - image: rubydistros/ubuntu-20.04:2.7 + image: rubydistros/ubuntu-20.04:3.0 privileged: true -- label: "Unit Ubuntu 20.04 :ruby: 2.7" +- label: "Unit Ubuntu 20.04 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - /workdir/.expeditor/scripts/bk_container_prep.sh + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: - image: rubydistros/ubuntu-20.04:2.7 + image: rubydistros/ubuntu-20.04:3.0 -- label: "Integration CentOS 7 :ruby: 2.7" +- label: "Integration CentOS 7 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:integration expeditor: executor: docker: - image: rubydistros/centos-7:2.7 + image: rubydistros/centos-7:3.0 privileged: true -- label: "Functional CentOS 7 :ruby: 2.7" +- label: "Functional CentOS 7 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - yum install -y crontabs e2fsprogs util-linux - - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - /workdir/.expeditor/scripts/bk_container_prep.sh + - yum install -y crontabs e2fsprogs + - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:functional expeditor: executor: docker: - image: rubydistros/centos-7:2.7 + image: rubydistros/centos-7:3.0 privileged: true -- label: "Unit CentOS 7 :ruby: 2.7" +- label: "Unit CentOS 7 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - /workdir/.expeditor/scripts/bk_container_prep.sh + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: - image: rubydistros/centos-7:2.7 + image: rubydistros/centos-7:3.0 -- label: "Integration openSUSE 15 :ruby: 2.7" +- label: "Integration openSUSE 15 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - zypper install -y cron insserv-compat - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:integration expeditor: executor: docker: - image: rubydistros/opensuse-15:2.7 + image: rubydistros/opensuse-15:3.0 privileged: true -- label: "Functional openSUSE 15 :ruby: 2.7" +- label: "Functional openSUSE 15 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - zypper install -y cronie insserv-compat - - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:functional expeditor: executor: docker: - image: rubydistros/opensuse-15:2.7 + image: rubydistros/opensuse-15:3.0 privileged: true -- label: "Unit openSUSE 15 :ruby: 2.7" +- label: "Unit openSUSE 15 :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - zypper install -y cron insserv-compat - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: - image: rubydistros/opensuse-15:2.7 + image: rubydistros/opensuse-15:3.0 -- label: "Integration Fedora :ruby: 2.7" +- label: "Integration Fedora :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:integration expeditor: executor: docker: - image: rubydistros/fedora-latest:2.7 + image: rubydistros/fedora-latest:3.0 privileged: true -- label: "Functional Fedora :ruby: 2.7" +- label: "Functional Fedora :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - yum install -y crontabs e2fsprogs util-linux - - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - /workdir/.expeditor/scripts/bk_container_prep.sh + - dnf install -y crontabs e2fsprogs + - cd /workdir; bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:functional expeditor: executor: docker: - image: rubydistros/fedora-latest:2.7 + image: rubydistros/fedora-latest:3.0 privileged: true environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist -- label: "Unit Fedora :ruby: 2.7" +- label: "Unit Fedora :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof + - /workdir/.expeditor/scripts/bk_container_prep.sh + - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec rake spec:unit - bundle exec rake component_specs expeditor: executor: docker: - image: rubydistros/fedora-latest:2.7 + image: rubydistros/fedora-latest:3.0 -- label: "Functional Windows :ruby: 2.7" +- label: "Functional Windows :ruby: 3.0" commands: - - scripts/bk_tests/bk_win_functional.ps1 + - .expeditor/scripts/bk_win_functional.ps1 expeditor: executor: windows: @@ -202,151 +228,82 @@ steps: single-use: true shell: ["powershell", "-Command"] -- label: "Integration Windows :ruby: 2.7" +- label: "Integration Windows :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_win_integration.ps1 + - /workdir/.expeditor/scripts/bk_win_integration.ps1 expeditor: executor: docker: host_os: windows - image: rubydistros/windows-2019:2.7 + image: rubydistros/windows-2019:3.0 environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist shell: ["powershell", "-Command"] -- label: "Chocolatey Windows :ruby: 2.7" - commands: - - /workdir/scripts/bk_tests/bk_run_choco.ps1 - expeditor: - executor: - docker: - host_os: windows - image: rubydistros/windows-2019:2.7 - shell: ["powershell", "-Command"] - -- label: "Unit Windows :ruby: 2.7" +- label: "Unit Windows :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_win_unit.ps1 + - /workdir/.expeditor/scripts/bk_win_unit.ps1 expeditor: executor: docker: host_os: windows - image: rubydistros/windows-2019:2.7 + image: rubydistros/windows-2019:3.0 environment: - FORCE_FFI_YAJL=ext - CHEF_LICENSE=accept-no-persist shell: ["powershell", "-Command"] ######################################################################### -# Tests Ruby 2.6 -######################################################################### - -- label: "Chefstyle :ruby: 2.6" - commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package ruby_prof - - bundle exec rake style - expeditor: - executor: - docker: - image: rubydistros/ubuntu-18.04:2.6 - -- label: "Integration :ruby: 2.6" - commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - - bundle exec rake spec:integration - expeditor: - executor: - docker: - image: rubydistros/ubuntu-18.04:2.6 - privileged: true - -- label: "Functional :ruby: 2.6" - commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - apt-get update -y - - apt-get install -y cron locales net-tools # needed for functional tests to pass - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - - bundle exec rake spec:functional - expeditor: - executor: - docker: - image: rubydistros/ubuntu-18.04:2.6 - privileged: true - -- label: "Unit :ruby: 2.6" - commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - - bundle exec rake spec:unit - - bundle exec rake component_specs - expeditor: - executor: - docker: - image: rubydistros/ubuntu-18.04:2.6 - -######################################################################### # EXTERNAL GEM TESTING ######################################################################### -- label: "chef-sugar gem :ruby: 2.7" - commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh - - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - - bundle exec tasks/bin/run_external_test chef/chef-sugar master rake - expeditor: - executor: - docker: - image: rubydistros/ubuntu-18.04:2.7 - -- label: "chef-zero gem :ruby: 2.7" +- label: "chef-zero gem :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec tasks/bin/run_external_test chef/chef-zero master rake pedant expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 + image: rubydistros/ubuntu-18.04:3.0 environment: - PEDANT_OPTS=--skip-oc_id - CHEF_FS=true -- label: "cheffish gem :ruby: 2.7" +- label: "cheffish gem :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec tasks/bin/run_external_test chef/cheffish master rake spec expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.6 + image: rubydistros/ubuntu-18.04:3.0 -- label: "chefspec gem :ruby: 2.7" +- label: "chefspec gem :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec tasks/bin/run_external_test chefspec/chefspec master rake expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 + image: rubydistros/ubuntu-18.04:3.0 -- label: "knife-windows gem :ruby: 2.7" +- label: "knife-windows gem :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package - bundle exec tasks/bin/run_external_test chef/knife-windows master rake spec expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 + image: rubydistros/ubuntu-18.04:3.0 -- label: "berkshelf gem :ruby: 2.7" +- label: "berkshelf gem :ruby: 3.0" commands: - - /workdir/scripts/bk_tests/bk_container_prep.sh + - /workdir/.expeditor/scripts/bk_container_prep.sh - apt-get update -y - apt-get install -y graphviz - bundle install --jobs=3 --retry=3 --path=vendor/bundle --without omnibus_package @@ -354,251 +311,12 @@ steps: expeditor: executor: docker: - image: rubydistros/ubuntu-18.04:2.7 - -######################################################################### - # START TEST KITCHEN ONLY -######################################################################### - -- label: "Kitchen: Amazon Linux 201X" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/bundle exec kitchen test end-to-end-amazonlinux - artifact_paths: - - $PWD/.kitchen/logs/kitchen.log - env: - KITCHEN_YAML: kitchen.yml - expeditor: - executor: - linux: - privileged: true - single-use: true - -- label: "Kitchen: Amazon Linux 2" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Ubuntu 16.04" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Ubuntu 18.04" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Ubuntu 20.04" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Ubuntu 20.10" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/bundle exec kitchen test end-to-end-ubuntu-2010 - artifact_paths: - - $PWD/.kitchen/logs/kitchen.log - env: - KITCHEN_YAML: kitchen.yml - expeditor: - executor: - linux: - privileged: true - single-use: true - -- label: "Kitchen: Debian 9" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Debian 10" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: CentOS 6" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: CentOS 7" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: CentOS 8" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Oracle Linux 7" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: Oracle Linux 8" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/bundle exec kitchen test end-to-end-oraclelinux-8 - artifact_paths: - - $PWD/.kitchen/logs/kitchen.log - env: - KITCHEN_YAML: kitchen.yml - expeditor: - executor: - linux: - privileged: true - single-use: true - -- label: "Kitchen: Fedora latest" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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: openSUSE Leap: 15" - commands: - - scripts/bk_tests/bk_linux_exec.sh - - cd kitchen-tests - - /opt/omnibus-toolchain/bin/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 - -- label: "Spellcheck" - commands: - - npm install -g cspell - - rake -f tasks/spellcheck.rb spellcheck - soft_fail: true - expeditor: - executor: - docker: + image: rubydistros/ubuntu-18.04:3.0 - label: ":habicat: Linux plan" commands: - - sudo ./scripts/ci/install-hab.sh 'x86_64-linux' - - sudo ./scripts/ci/verify-plan.sh + - sudo ./.expeditor/scripts/install-hab.sh 'x86_64-linux' + - sudo ./.expeditor/scripts/verify-plan.sh timeout_in_minutes: 60 expeditor: executor: @@ -608,8 +326,8 @@ steps: - label: ":habicat: Linux plan (kernel2)" commands: - - sudo ./scripts/ci/install-hab.sh 'x86_64-linux-kernel2' - - sudo ./scripts/ci/verify-plan.sh + - sudo ./.expeditor/scripts/install-hab.sh 'x86_64-linux-kernel2' + - sudo ./.expeditor/scripts/verify-plan.sh timeout_in_minutes: 60 expeditor: executor: @@ -619,7 +337,7 @@ steps: - label: ":habicat: Windows plan" commands: - - ./scripts/ci/verify-plan.ps1 + - ./.expeditor/scripts/verify-plan.ps1 timeout_in_minutes: 60 expeditor: executor: |