Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove cache and bundler after build to save size #1859

Open
wants to merge 37 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
1c66f14
Hab plan file for windows and linux to build hab pkg
sanghinitin Sep 17, 2024
dbbdd5b
Linux plan change based on appbundler
sanghinitin Sep 18, 2024
192df7f
Gemfile change on lint issue
sanghinitin Sep 25, 2024
788b0d5
Remove bybug file
sanghinitin Sep 26, 2024
30ed862
fixinf chefstyle changes
nikhil2611 Oct 17, 2024
3f276d8
Added pipeline for buliding hab and publish hab pkg
sanghinitin Dec 3, 2024
a536b5d
Change the pipeline to expeditor
sanghinitin Dec 6, 2024
03f8077
Merge pull request #1842 from chef/CHEF-17475_pipeline
nikhil2611 Dec 6, 2024
c9933d8
Testing pipeline
sanghinitin Dec 6, 2024
48aaf6a
Testing pipeline
sanghinitin Dec 6, 2024
299868a
Publish hab on merge
sanghinitin Dec 6, 2024
ea7d6db
Remove pipeline cofing
sanghinitin Dec 6, 2024
fc1d14d
Plan file changed
sanghinitin Dec 6, 2024
d573006
Merge pull request #1843 from chef/test_pipeline
nikhil2611 Dec 6, 2024
48caaf1
Publish test pipeline
sanghinitin Dec 6, 2024
a2a47e5
Publish pipeline change
sanghinitin Dec 6, 2024
71abc00
Merge pull request #1844 from chef/test_publish_pipeline
nikhil2611 Dec 6, 2024
3f8183a
Adding dev channel publish hab channel
sanghinitin Dec 17, 2024
5d4da10
Merge pull request #1845 from chef/add_dev_channel_hab
nikhil2611 Dec 17, 2024
002cd06
adding branch to github
nikhil2611 Dec 19, 2024
b891d73
checking agents creation
nikhil2611 Dec 19, 2024
cf57823
checking agents creation
nikhil2611 Dec 19, 2024
b355fc1
Merge pull request #1848 from chef/nikhil/test-release_branch
nikhil2611 Dec 19, 2024
712c687
Merge branch 'workstation-LTS' into backup/workstation-LTS
nikhil2611 Dec 19, 2024
dc4f08a
Merge pull request #1849 from chef/backup/workstation-LTS
nikhil2611 Dec 19, 2024
99860d7
test verify pipeline creation by expeditor
muthuja Dec 19, 2024
5397791
Merge pull request #1851 from chef/testmuthuja/verifypipeline
muthuja Dec 19, 2024
8bbbb39
test
muthuja Dec 19, 2024
ad8d89b
test
muthuja Dec 19, 2024
f533f39
test
muthuja Dec 19, 2024
3f48e2b
create a pipeline for verify
muthuja Dec 19, 2024
c82f5b8
create a pipeline for verify using expeditor
muthuja Dec 19, 2024
b615b48
Merge pull request #1852 from chef/test/verify/muthuja
muthuja Dec 19, 2024
21c8886
added the channel variable
nikhil2611 Dec 23, 2024
4f052f8
Merge pull request #1854 from chef/nikhil/adding_bldr_channel
nikhil2611 Dec 23, 2024
02790bc
Bump version to 19.0.6 by Chef Expeditor
chef-ci Dec 23, 2024
b38fc8a
Remove cache and bundler after build to save size
sanghinitin Jan 10, 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
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
86 changes: 86 additions & 0 deletions .expeditor/buildkite/artifact.habitat.test.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
#!/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 = "LTS-2024"
$env:HAB_ORIGIN = 'ci'
$env:CHEF_LICENSE = 'accept-no-persist'
$env:HAB_LICENSE = 'accept-no-persist'
$Plan = 'ohai'

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."
}


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
}
70 changes: 70 additions & 0 deletions .expeditor/buildkite/artifact.habitat.test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
#!/usr/bin/env bash

set -eo pipefail

export HAB_ORIGIN='ci'
export PLAN='ohai'
export CHEF_LICENSE="accept-no-persist"
export HAB_LICENSE="accept-no-persist"
export HAB_BLDR_CHANNEL="LTS-2024"

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 "--- 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

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/ohai)/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'
28 changes: 28 additions & 0 deletions .expeditor/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,19 @@
slack:
notify_channel: chef-infra-notify


# This publish is triggered by the `built_in:publish_rubygems` artifact_action.
rubygems:
- ohai
artifact_channels:
- dev

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please confi8rm this is correct. I have seen unstable and chef-dke-lts2024 for other projects.


pipelines:
- verify:
description: Pull Request validation tests
definition: .expeditor/verify.pipeline.yml
public: true

github:
# This deletes the GitHub PR branch after successfully merged into the release branch
delete_branch_on_merge: true
Expand All @@ -21,6 +30,7 @@ github:
major_bump_labels:
- "Expeditor: Bump Version Major"


# Which Github branches to build Omnibus releases from, and what versions
# (as determined by the value in the VERSION file) those branches are responsible
# for building.
Expand Down Expand Up @@ -55,8 +65,26 @@ subscriptions:
- "Expeditor: Skip All"
- built_in:build_gem:
only_if: built_in:bump_version
- trigger_pipeline:habitat/publish:
only_if: built_in:bump_version
ignore_labels:
- "Expeditor: Skip Habitat"
- "Expeditor: Skip All"
- trigger_pipeline:habitat/build-test:
only_if: built_in:bump_version
ignore_labels:
- "Expeditor: Skip Habitat"
- "Expeditor: Skip All"
- workload: pull_request_opened:{{github_repo}}:{{release_branch}}:*
actions:
- trigger_pipeline:verify

- workload: project_promoted:{{agent_id}}:*
actions:
- built_in:rollover_changelog
- built_in:publish_rubygems
- workload: buildkite_hab_build_group_published:{{agent_id}}:*
actions:
# when all of the hab package publish to the unstable channel, test and promote them
- trigger_pipeline:habitat/build-test
- built_in:promote_habitat_packages
36 changes: 36 additions & 0 deletions .expeditor/habitat-test.pipeline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
expeditor:
defaults:
buildkite:
timeout_in_minutes: 30
retry:
automatic:
limit: 1


steps:

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

- label: ":windows: Validate Habitat Builds of ohai"
commands:
- .expeditor/buildkite/artifact.habitat.test.ps1
expeditor:
executor:
docker:
host_os: windows
shell: ["powershell", "-Command"]
image: rubydistros/windows-2019:3.1
user: 'NT AUTHORITY\SYSTEM'
environment:
- 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/
19 changes: 19 additions & 0 deletions .expeditor/verify.pipeline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
expeditor:
cached_folders:
- vendor
defaults:
buildkite:
retry:
automatic:
limit: 1
timeout_in_minutes: 30

steps:
- label: run-lint-and-specs-ruby-3.1
command:
- .expeditor/run_linux_tests.sh rake chefstyle
expeditor:
executor:
docker:
image: ruby:3.1-buster
7 changes: 4 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
# Change Log

<!-- latest_release 19.0.5 -->
## [v19.0.5](https://github.com/chef/ohai/tree/v19.0.5) (2024-10-29)
<!-- latest_release 19.0.6 -->
## [v19.0.6](https://github.com/chef/ohai/tree/v19.0.6) (2024-12-23)

#### Merged Pull Requests
- Unit tests for freebsd network plugin; plus fixes [#1841](https://github.com/chef/ohai/pull/1841) ([jaymzh](https://github.com/jaymzh))
- added the channel variable [#1854](https://github.com/chef/ohai/pull/1854) ([nikhil2611](https://github.com/nikhil2611))
<!-- latest_release -->

<!-- release_rollup since=18.1.3 -->
### Changes not yet released to rubygems.org

#### Merged Pull Requests
- added the channel variable [#1854](https://github.com/chef/ohai/pull/1854) ([nikhil2611](https://github.com/nikhil2611)) <!-- 19.0.6 -->
- Unit tests for freebsd network plugin; plus fixes [#1841](https://github.com/chef/ohai/pull/1841) ([jaymzh](https://github.com/jaymzh)) <!-- 19.0.5 -->
- FreeBSD: Permit underscores in interface names [#1837](https://github.com/chef/ohai/pull/1837) ([feld](https://github.com/feld)) <!-- 19.0.4 -->
- Migrate from Chefstyle to Cookstyle gem [#1833](https://github.com/chef/ohai/pull/1833) ([dafyddcrosby](https://github.com/dafyddcrosby)) <!-- 19.0.3 -->
Expand Down
5 changes: 3 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# frozen_string_literal: true

source "https://rubygems.org"

gemspec

# pull these gems from main of chef/chef so that we're testing against what we will release
# pull these gems from main of chef/chef so that we"re testing against what we will release
gem "appbundler"
gem "chef-config", git: "https://github.com/chef/chef", branch: "main", glob: "chef-config/chef-config.gemspec"
gem "chef-utils", git: "https://github.com/chef/chef", branch: "main", glob: "chef-utils/chef-utils.gemspec"

# NOTE: do not submit PRs to add pry as a dep, add to your Gemfile.local
group :development do
gem "cookstyle", ">= 7.32.8"
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
19.0.5
19.0.6
Loading
Loading