Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
e38f0b1
Support for ruby 3.1 and CI run on main branch (#1)
sanjain-progress Jun 6, 2022
a99a9b0
Publish gem via expeditor
Jun 6, 2022
791c349
Merge pull request #2 from chef/sanjain/INFCT-91-publish-gem-via-expe…
sanjain-progress Jun 13, 2022
317313d
Fix readme URL
Jun 13, 2022
eeb5db3
Merge pull request #3 from chef/feat/bump_version
sanjain-progress Jun 13, 2022
86a143d
Change correct file name
Jun 13, 2022
ba4b1c2
Merge pull request #4 from chef/fix/gemspec_config
sanjain-progress Jun 13, 2022
a6dd1c1
Change chefspec url to chef org
Jun 13, 2022
85d343b
Merge pull request #5 from chef/feat/version_bump
sanjain-progress Jun 13, 2022
77cfa79
Dummy
mimaslanka Jun 13, 2022
1dddea2
Dummy
mimaslanka Jun 13, 2022
0c3ed85
Merge branch 'mimaslanka/dummy' of https://github.com/chef/fauxhai in…
mimaslanka Jun 13, 2022
0020de9
Merge pull request #6 from chef/mimaslanka/dummy
mimaslanka Jun 13, 2022
05f0921
Bump version to 9.3.1 by Chef Expeditor
chef-ci Jun 13, 2022
c766a43
Force action
mimaslanka Jun 13, 2022
c08b704
Merge pull request #7 from chef/mimaslanka/force-action
mimaslanka Jun 13, 2022
fbc06fb
Bump version to 9.3.2 by Chef Expeditor
chef-ci Jun 13, 2022
8f95069
Update CHANGELOG.md to reflect the promotion of 9.3.2
chef-ci Jun 13, 2022
05fd672
Add AlmaLinux 9 data (#8)
vkarve-chef Feb 3, 2023
9238d06
Bump version to 9.3.3 by Chef Expeditor
chef-ci Feb 3, 2023
ced240b
CentOS Stream 8 & 9 data (#10)
ramereth Feb 3, 2023
bf49a98
Bump version to 9.3.4 by Chef Expeditor
chef-ci Feb 3, 2023
a3d2cf2
added oracle platforms (#12)
davidjkling Feb 3, 2023
72dccb5
Bump version to 9.3.5 by Chef Expeditor
chef-ci Feb 3, 2023
93ce373
Update CHANGELOG.md to reflect the promotion of 9.3.5
chef-ci Feb 3, 2023
a7fd92f
Add Rocky Linux 9 data (#9)
vkarve-chef Feb 6, 2023
f02b40c
Bump version to 9.3.6 by Chef Expeditor
chef-ci Feb 6, 2023
5328e18
added sonarqube configuration (#13)
nikhil2611 Mar 31, 2023
d39c2da
Bump version to 9.3.7 by Chef Expeditor
chef-ci Mar 31, 2023
30e3ab7
Update fetcher to pull from correct repository (#14)
ramereth May 5, 2023
af4a454
Bump version to 9.3.8 by Chef Expeditor
chef-ci May 5, 2023
028b392
Update CHANGELOG.md to reflect the promotion of 9.3.8
chef-ci May 5, 2023
1f4b4eb
Add Ubuntu 22.04 (jammy) support
dtseiler Jun 2, 2023
d2093d9
Add platform support for Debian 12
justinswe Jul 17, 2023
720a917
Add Debian 12 to platforms.json
justinswe Jul 17, 2023
26db36e
Add Debian 12 to PLATFORMS.md
justinswe Jul 17, 2023
62ba3de
Add Ubuntu 22.04 (jammy) support
dtseiler Jun 2, 2023
77dd97c
Merge branch 'add_ubuntu_22_04' of github.com:dtseiler/fauxhai into a…
dtseiler Jul 18, 2023
57375fb
Merge pull request #17 from Justin-Fernbaugh/add_debian_12
tpowell-progress Jul 27, 2023
9c95325
Bump version to 9.3.9 by Chef Expeditor
chef-ci Jul 27, 2023
19f104a
Add .buildkite folder to make pipeline_protection happy
tpowell-progress Aug 4, 2023
838d305
Merge pull request #18 from chef/tp/appease-pipeline-protection
tpowell-progress Aug 4, 2023
149dd8b
Bump version to 9.3.10 by Chef Expeditor
chef-ci Aug 4, 2023
7a99aff
Merge branch 'chef:main' into add_ubuntu_22_04
dtseiler Aug 4, 2023
e10557e
Add Ubuntu 22.04 (jammy) support
dtseiler Jun 2, 2023
1669d15
Merge branch 'add_ubuntu_22_04' of github.com:dtseiler/fauxhai into a…
dtseiler Aug 4, 2023
897d4d5
Merge pull request #16 from dtseiler/add_ubuntu_22_04
tpowell-progress Aug 7, 2023
c733ac0
Bump version to 9.3.11 by Chef Expeditor
chef-ci Aug 7, 2023
d99e687
Added WIndows 2022
Nov 15, 2023
6b36264
Added RedHat 9
Nov 15, 2023
77b423e
Merge pull request #21 from jjperry/add_redhat_9
tpowell-progress Nov 21, 2023
ea8d118
Bump version to 9.3.12 by Chef Expeditor
chef-ci Nov 21, 2023
5fba118
Merge remote-tracking branch 'origin/main' into add_windows_2022
Nov 27, 2023
3ddec62
Updated the mocker spec from 2019 to 2022
Nov 27, 2023
be38616
Reverted typo about the correct fauxhai repo.
Nov 27, 2023
1f395f5
Merge pull request #24 from jjperry/add_windows_2022
tpowell-progress Dec 5, 2023
2d85a44
Bump version to 9.3.13 by Chef Expeditor
chef-ci Dec 5, 2023
04ff93d
add_amazon_2023
Dec 6, 2023
04beab8
Add Ubuntu 24.04
nickpegg Mar 21, 2024
953610d
Add code owners for reviews
tpowell-progress Mar 25, 2024
f5a4c67
fix copy and paste error
nickpegg Mar 25, 2024
2dfe1eb
Merge pull request #28 from chef/tp/add-codeowners
tpowell-progress Mar 26, 2024
52c5f4b
Bump version to 9.3.14 by Chef Expeditor
chef-ci Mar 26, 2024
ac25a61
Merge pull request #26 from jjperry/add_amazon_2023
tpowell-progress Mar 26, 2024
abd777c
Bump version to 9.3.15 by Chef Expeditor
chef-ci Mar 26, 2024
5818dc3
Merge pull request #27 from nickpegg/add_ubuntu_24_04
tpowell-progress Mar 26, 2024
983bbe2
Bump version to 9.3.16 by Chef Expeditor
chef-ci Mar 26, 2024
b46fcdc
Update CHANGELOG.md to reflect the promotion of 9.3.16
chef-ci Mar 27, 2024
2b6eb94
plan file for linux and window
Sep 3, 2024
062fed7
plan file for windows
Sep 9, 2024
239d1fd
[CI] Drop EOL rubies
dafyddcrosby Nov 19, 2024
822548d
Update pkg_version dynamically before build phases
Nov 21, 2024
9f4e18c
Merge pull request #33 from dafyddcrosby/rm27rubyci
jaymzh Nov 26, 2024
4cc86c4
Bump version to 9.3.17 by Chef Expeditor
chef-ci Nov 26, 2024
17b584b
Merge pull request #31 from chef/sanjain/chef-14470/hab_package
jaymzh Nov 26, 2024
78dd2b8
Bump version to 9.3.18 by Chef Expeditor
chef-ci Nov 26, 2024
67f89fc
added the release branch
nikhil2611 Dec 19, 2024
e9d742d
Merge pull request #40 from chef/add_release_branch
nikhil2611 Dec 19, 2024
ea63537
Bump version to 9.3.19 by Chef Expeditor
chef-ci Dec 19, 2024
6689451
Habitat package for Fauxhai (#59)
nikhil2611 Jan 29, 2025
93c3921
added HAB_BLDR_CHANNEL env as the build pipeline still using old hab …
nikhil2611 Feb 2, 2025
48ab095
Merge pull request #60 from chef/nikhil/update-config-promote-package
nikhil2611 Feb 4, 2025
e3f1429
Bump version to 9.3.20 by Chef Expeditor
chef-ci Feb 4, 2025
526c49c
Bump version to 9.3.21 by Chef Expeditor
chef-ci Feb 4, 2025
8ab3f3c
Bump version to 9.3.22 by Chef Expeditor
chef-ci Feb 4, 2025
304b5d2
make pipelines public: habitat/test
jaymzh Mar 30, 2025
5ef42d1
Merge pull request #61 from jaymzh/expeditor-public
sean-sype-simmons Apr 15, 2025
b89d01d
Bump version to 9.3.23 by Chef Expeditor
chef-ci Apr 15, 2025
5624001
Potential fix for code scanning alert no. 1: Use of `Kernel.open` or …
ashiqueps Apr 9, 2025
6007ba3
Merge pull request #64 from chef/alert-autofix-1
ashiqueps May 8, 2025
3895b48
Bump version to 9.3.24 by Chef Expeditor
chef-ci May 8, 2025
c12f027
Potential fix for code scanning alert no. 2: Workflow does not contai…
ashiqueps May 8, 2025
5ffd780
Potential fix for code scanning alert no. 3: Workflow does not contai…
ashiqueps May 8, 2025
65eb5a8
Updated the codeowners
ashiqueps May 8, 2025
9e1af0a
Fixed the codeowners
ashiqueps May 8, 2025
7a9768f
Merge pull request #65 from chef/alert-autofix-2
ashiqueps May 9, 2025
3b6416f
Bump version to 9.3.25 by Chef Expeditor
chef-ci May 9, 2025
aa6e228
commenting habitat promotion to release fauxhai
nikhil2611 May 12, 2025
110494d
Merge pull request #66 from chef/nikhil/update-config-to-publish
nikhil2611 May 14, 2025
6e45b1f
Bump version to 9.3.26 by Chef Expeditor
chef-ci May 14, 2025
21f938c
Update CHANGELOG.md to reflect the promotion of 9.3.26
chef-ci May 14, 2025
f2452ca
support for ruby 3.4 (#63)
sanjain-progress May 20, 2025
5fdf358
Bump version to 9.4.0 by Chef Expeditor
chef-ci May 20, 2025
736dfd5
Adding myself to CODEOWNERS
jaymzh May 20, 2025
fbd23d1
Merge pull request #67 from jaymzh/codeowners
sean-sype-simmons May 27, 2025
de0f5e2
Bump version to 9.4.1 by Chef Expeditor
chef-ci May 27, 2025
bd491ae
Habitat authentication token
borisicbs Jun 18, 2025
390bba3
Merge pull request #68 from chef/boris-borisov-progress/CHEF-22787
sean-sype-simmons Jun 30, 2025
3b31380
Bump version to 9.4.2 by Chef Expeditor
chef-ci Jun 30, 2025
d0cbaaa
Add AlmaLinux 10 (#70)
ramereth Jul 1, 2025
39abfaf
Bump version to 9.4.3 by Chef Expeditor
chef-ci Jul 1, 2025
fbf550e
updated ruby version to 3.4 in fauxhai hab pkg
nikhil2611 Jul 7, 2025
80bfce9
Merge pull request #72 from chef/CHEF-21185-fauxhai-ruby-hab-pkg-upgrade
nikhil2611 Jul 8, 2025
cd7ee4c
Bump version to 9.4.4 by Chef Expeditor
chef-ci Jul 8, 2025
cc48f3b
fixing habitat test builds by declaring HAB_ORIGIN after habitat install
nikhil2611 Jul 14, 2025
a6790d9
Merge pull request #73 from chef/nikhil/fix-hab-pkg-test-builds
sanjain-progress Jul 14, 2025
5676072
Bump version to 9.4.5 by Chef Expeditor
chef-ci Jul 14, 2025
5c5044b
update windows hab plans to build on hab base-2025
muthuja Jul 15, 2025
1d44364
Empty-Commit to run checks
muthuja Jul 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file added .buildkite/.keep
Empty file.
9 changes: 9 additions & 0 deletions .buildkite/hooks/pre-command
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash

if [[ $BUILDKITE_ORGANIZATION_SLUG = 'chef-canary' ]]; then
AWS_REGION='us-west-1'
elif [[ $BUILDKITE_ORGANIZATION_SLUG = 'chef' ]] || [[ $BUILDKITE_ORGANIZATION_SLUG = 'chef-oss' ]]; then
AWS_REGION='us-west-2'
fi

export HAB_AUTH_TOKEN=$(aws ssm get-parameter --name 'habitat-prod-auth-token' --with-decryption --query Parameter.Value --output text --region ${AWS_REGION})
9 changes: 9 additions & 0 deletions .expeditor/build.habitat.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
origin: chef

expeditor:
defaults:
buildkite:
retry:
automatic:
limit: 1
89 changes: 89 additions & 0 deletions .expeditor/buildkite/artifact.habitat.test.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
#!/usr/bin/env powershell

#Requires -Version 5
# https://stackoverflow.com/questions/9948517
# TODO: Set-StrictMode -Version Latest
$PSDefaultParameterValues['*:ErrorAction']='Stop'
$ErrorActionPreference = 'Stop'
$env:HAB_BLDR_CHANNEL = 'base-2025'
$env:HAB_REFRESH_CHANNEL = "base-2025"
$env:CHEF_LICENSE = 'accept-no-persist'
$env:HAB_LICENSE = 'accept-no-persist'
$Plan = 'fauxhai'

Write-Host "--- system details"
$Properties = 'Caption', 'CSName', 'Version', 'BuildType', 'OSArchitecture'
Get-CimInstance Win32_OperatingSystem | Select-Object $Properties | Format-Table -AutoSize

Write-Host "--- Installing the version of Habitat required"

function Stop-HabProcess {
$habProcess = Get-Process hab -ErrorAction SilentlyContinue
if ($habProcess) {
Write-Host "Stopping hab process..."
Stop-Process -Name hab -Force
}
}

# Installing Habitat
function Install-Habitat {
Write-Host "Downloading and installing Habitat..."
Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/habitat-sh/habitat/main/components/hab/install.ps1'))
}

try {
hab --version
}
catch {
Set-ExecutionPolicy Bypass -Scope Process -Force

Stop-HabProcess

# Remove the existing hab.exe if it exists and if you have permissions
$habPath = "C:\ProgramData\Habitat\hab.exe"
if (Test-Path $habPath) {
Write-Host "Attempting to remove existing hab.exe..."
Remove-Item $habPath -Force -ErrorAction SilentlyContinue
if (Test-Path $habPath) {
Write-Host "Failed to remove hab.exe, re-running script with elevated permissions."
Start-Process powershell -Verb runAs -ArgumentList "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`""
exit
}
}

Install-Habitat
}
finally {
Write-Host ":habicat: I think I have the version I need to build."
}

# Set HAB_ORIGIN after Habitat installation
Write-Host "HAB_ORIGIN set to 'ci' after installation."
$env:HAB_ORIGIN = 'ci'

Write-Host "--- Generating fake origin key"
hab origin key generate $env:HAB_ORIGIN

Write-Host "--- Building $Plan"
$project_root = "$(git rev-parse --show-toplevel)"
Set-Location $project_root

$env:DO_CHECK=$true; hab pkg build .

. $project_root/results/last_build.ps1

Write-Host "--- Installing $pkg_ident/$pkg_artifact"
hab pkg install -b $project_root/results/$pkg_artifact

Write-Host "+++ Testing $Plan"

Push-Location $project_root

try {
Write-Host "Running unit tests..."
habitat/tests/test.ps1 $pkg_ident
}
finally {
# Ensure we always return to the original directory
Pop-Location
}
74 changes: 74 additions & 0 deletions .expeditor/buildkite/artifact.habitat.test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
#!/usr/bin/env bash

set -eo pipefail

export PLAN='fauxhai'
export CHEF_LICENSE="accept-no-persist"
export HAB_LICENSE="accept-no-persist"
export HAB_BLDR_CHANNEL='base-2025'
export HAB_REFRESH_CHANNEL="base-2025"

echo "--- checking if git is installed"
if ! command -v git &> /dev/null; then
echo "Git is not installed. Installing Git..."
sudo yum install -y git
else
echo "Git is already installed."
git --version
fi

echo "--- add an exception for this directory since detected dubious ownership in repository at /workdir"
git config --global --add safe.directory /workdir

echo "--- git status for this workdir"
git status

echo "--- checking ruby version"
ruby -v

export project_root="$(git rev-parse --show-toplevel)"
echo "The value for project_root is: $project_root"

export HAB_NONINTERACTIVE=true
export HAB_NOCOLORING=true
export HAB_STUDIO_SECRET_HAB_NONINTERACTIVE=true

echo "--- system details"
uname -a

echo "--- Installing Habitat"
id -a
curl https://raw.githubusercontent.com/habitat-sh/habitat/main/components/hab/install.sh | bash

# Set HAB_ORIGIN after Habitat installation
echo "--- Setting HAB_ORIGIN to 'ci' after installation"
export HAB_ORIGIN='ci'

echo "--- :key: Generating fake origin key"
hab origin key generate "$HAB_ORIGIN"


echo "--- Building $PLAN"
cd "$project_root"
DO_CHECK=true hab pkg build .

echo "--- Sourcing 'results/last_build.sh'"
if [ -f ./results/last_build.env ]; then
cat ./results/last_build.env
. ./results/last_build.env
export pkg_artifact
fi
echo "+++ Installing ${pkg_ident:?is undefined}"
echo "++++"
echo $project_root
echo "+++"
hab pkg install -b "${project_root:?is undefined}/results/${pkg_artifact:?is undefined}"

echo "+++ Testing $PLAN"

PATH="$(hab pkg path ci/fauxhai)/bin:$PATH"
export PATH
echo "PATH is $PATH"

echo "--- :mag_right: Testing $PLAN"
${project_root}/habitat/tests/test.sh "$pkg_ident" || error 'failures during test of executables'
82 changes: 82 additions & 0 deletions .expeditor/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Documentation available at https://expeditor.chef.io/docs/getting-started/
---

# Slack channel in Chef Software slack to send notifications about build failures, etc
slack:
notify_channel: chef-ws-notify

# This publish is triggered by the `built_in:publish_rubygems` artifact_action.
rubygems:
- fauxhai-chef

# artifact_channels:
# - unstable
# - chef-dke-lts2024

pipelines:
- verify:
description: Pull Request validation tests
public: true
- habitat/build:
description: Build the Habitat packages for faixhai
env:
- HAB_NONINTERACTIVE: "true"
- HAB_NOCOLORING: "true"
- HAB_STUDIO_SECRET_HAB_NONINTERACTIVE: "true"
- habitat/test:
public: true
description: Execute tests against the habitat artifact
definition: .expeditor/habitat-test.pipeline.yml
trigger: pull_request
env:
- HAB_NONINTERACTIVE: "true"
- HAB_NOCOLORING: "true"
- HAB_STUDIO_SECRET_HAB_NONINTERACTIVE: "true"

release_branches:
- main:
version_constraint: 9.*

github:
# This deletes the GitHub PR branch after successfully merged into the release branch
delete_branch_on_merge: true
# The tag format to use (e.g. v1.0.0)
version_tag_format: "v{{version}}"
# allow bumping the minor release via label
minor_bump_labels:
- "Expeditor: Bump Version Minor"
# allow bumping the major release via label
major_bump_labels:
- "Expeditor: Bump Version Major"

changelog:
rollup_header: Changes not yet released to rubygems.org

subscriptions:
# These actions are taken, in order they are specified, anytime a Pull Request is merged.
- workload: pull_request_merged:{{github_repo}}:{{release_branch}}:*
actions:
- built_in:bump_version:
ignore_labels:
- "Expeditor: Skip Version Bump"
- "Expeditor: Skip All"
- bash:.expeditor/update_version.sh:
only_if: built_in:bump_version
- built_in:update_changelog:
ignore_labels:
- "Expeditor: Skip Changelog"
- "Expeditor: Skip All"
- built_in:build_gem:
only_if: built_in:bump_version
- trigger_pipeline:habitat/build:
ignore_labels:
- "Expeditor: Skip Habitat"
- "Expeditor: Skip All"
only_if: built_in:bump_version

# this works for symantec version promote
- workload: project_promoted:{{agent_id}}:*
actions:
- built_in:rollover_changelog
# - built_in:promote_habitat_packages
- built_in:publish_rubygems
39 changes: 39 additions & 0 deletions .expeditor/habitat-test.pipeline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
expeditor:
defaults:
buildkite:
timeout_in_minutes: 30
retry:
automatic:
limit: 1


steps:

- label: ":linux: Validate Habitat Builds of fauxhai"
commands:
- .expeditor/buildkite/artifact.habitat.test.sh
expeditor:
executor:
docker:
image: ruby:3.4
privileged: true
environment:
- HAB_AUTH_TOKEN

- label: ":windows: Validate Habitat Builds of fauxhai"
commands:
- .expeditor/buildkite/artifact.habitat.test.ps1
expeditor:
executor:
docker:
host_os: windows
shell: ["powershell", "-Command"]
image: rubydistros/windows-2019:3.4
user: 'NT AUTHORITY\SYSTEM'
environment:
- HAB_AUTH_TOKEN
- FORCE_FFI_YAJL=ext
- EXPIRE_CACHE=true
- CHEF_LICENSE=accept-no-persist
- CHEF_LICENSE_SERVER=http://hosted-license-service-lb-8000-606952349.us-west-2.elb.amazonaws.com:8000/
16 changes: 16 additions & 0 deletions .expeditor/run_linux_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#!/bin/bash
#
# setups up the bundler to caching, then run the script

set -ue

export USER="root"
export LANG=C.UTF-8 LANGUAGE=C.UTF-8

echo "--- bundle install"

bundle config --local path vendor/bundle
bundle install --jobs=7 --retry=3

echo "+++ bundle exec task"
bundle exec $@
12 changes: 12 additions & 0 deletions .expeditor/update_version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/sh
#
# After a PR merge, Chef Expeditor will bump the PATCH version in the VERSION file.
# It then executes this file to update any other files/components with that new version.
#

set -evx

sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"$(cat VERSION)\"/" lib/fauxhai/version.rb

# Once Expeditor finishes executing this script, it will commit the changes and push
# the commit as a new tag corresponding to the value in the VERSION file.
10 changes: 10 additions & 0 deletions .expeditor/verify.pipeline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
expeditor:
cached_folders:
- vendor
defaults:
buildkite:
retry:
automatic:
limit: 1
timeout_in_minutes: 30
4 changes: 4 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#Order is important. The last matching pattern has the most precedence.

* @chef/chef-workstation-owners @chef/chef-workstation-approvers @chef/chef-workstation-reviewers @jaymzh
*.md @chef/docs-team
7 changes: 5 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,17 @@ on:
pull_request:
push:
branches:
- master
- main

permissions:
contents: read

jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: [ '2.4', '2.5', '2.6', '2.7', '3.0']
ruby: ['3.1', '3.2', '3.4']
name: Validate JSON on Ruby ${{ matrix.ruby }}
steps:
- uses: actions/checkout@v2
Expand Down
Loading