Skip to content

CHEF-34747: Add macOS ARM64 (aarch64-darwin) Habitat plan - #185

Merged
nikhil2611 merged 5 commits into
mainfrom
nikhil/CHEF-34747-macos-arm-build
Jul 21, 2026
Merged

CHEF-34747: Add macOS ARM64 (aarch64-darwin) Habitat plan#185
nikhil2611 merged 5 commits into
mainfrom
nikhil/CHEF-34747-macos-arm-build

Conversation

@nikhil2611

Copy link
Copy Markdown
Contributor

Summary

Add native macOS ARM64 (aarch64-darwin) Habitat build support for knife.

Related Jira Ticket

CHEF-34747

Changes Made

  • Add habitat/aarch64-darwin/plan.sh for native macOS ARM64 builds
  • Use clang/cmake for native compilation (instead of gcc on Linux)
  • Configure SSL certificates via core/cacerts for license verification
  • Support knife plugins (ec2, google, windows) via habitat bundle group
  • Add DYLD_LIBRARY_PATH for libarchive dynamic linking
  • Use awk for binstub patching (BSD sed compatibility)

Testing Performed

  • Built package successfully with HAB_FEAT_NATIVE_PACKAGE_SUPPORT=1 hab pkg build --native-package
  • Verified knife ssl check works
  • Verified knife bootstrap works (SSL cert verification fixed)
  • Existing habitat/tests/test.sh is compatible with macOS

Build Command

HAB_FEAT_NATIVE_PACKAGE_SUPPORT=1 hab pkg build --native-package habitat/aarch64-darwin

@nikhil2611
nikhil2611 requested review from a team and jaymzh as code owners June 29, 2026 12:14
@nikhil2611 nikhil2611 added the ai-assisted Work completed with AI assistance following Progress AI policies label Jun 29, 2026
@nikhil2611
nikhil2611 marked this pull request as draft June 29, 2026 12:22
nikhil2611 and others added 3 commits July 20, 2026 18:41
- Add native macOS ARM64 build support for knife
- Use clang/cmake for native compilation instead of gcc
- Configure SSL certificates via core/cacerts for license verification
- Support knife plugins (ec2, google, windows) via habitat bundle group
- Add DYLD_LIBRARY_PATH for libarchive dynamic linking

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: nikhil2611 <ngupta@progress.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: nikhil2611 <ngupta@progress.com>
- Add habitat-build.yml workflow for macos-14 (ARM64) builds
- Add test.darwin.sh for macOS-specific testing without hab supervisor
- Workflow triggers on PR and push to main branch

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: nikhil2611 <ngupta@progress.com>
@nikhil2611
nikhil2611 force-pushed the nikhil/CHEF-34747-macos-arm-build branch from c4f0178 to 3125e2b Compare July 20, 2026 13:11
sanjain-progress and others added 2 commits July 20, 2026 19:34
…#189)

* Add darwin (macOS aarch64) to Habitat release CI pipeline

Add aarch64-darwin as a build target in .bldr.toml and update the
Buildkite pre-command hook to support macOS workers by retrieving
HAB_AUTH_TOKEN from Vault instead of AWS SSM when the build label
indicates a macOS/darwin platform.

Changes:
- .bldr.toml: Add new file with build_targets including aarch64-darwin
- .buildkite/hooks/pre-command: Detect macOS build labels and use
  vault-util-init + Vault KV to fetch the Habitat auth token, falling
  back to the existing AWS SSM path for Linux/Windows workers

Signed-off-by: Sachin Jain <Sachin.jain@chef.io>

* CHEF-34748: fix final newline for CI check

Signed-off-by: Sachin Jain <Sachin.jain@chef.io>

---------

Signed-off-by: Sachin Jain <Sachin.jain@chef.io>
Co-authored-by: Sachin Jain <Sachin.jain@chef.io>
Signed-off-by: nikhil2611 <ngupta@progress.com>
- Replace blocking approach with approval-based workflow guard
- Add workflow_guard environment requirement for workflow changes
- Update workflow-change-guard.yml to match cookstyle pattern
- Remove unnecessary pull-requests permission from habitat-build.yml
- Workflow changes on pull_request_target now require manual approval

Signed-off-by: nikhil2611 <ngupta@progress.com>
@nikhil2611
nikhil2611 force-pushed the nikhil/CHEF-34747-macos-arm-build branch from ed5d97e to 56edd70 Compare July 20, 2026 14:05
@nikhil2611
nikhil2611 marked this pull request as ready for review July 20, 2026 14:08
@nikhil2611

Copy link
Copy Markdown
Contributor Author

@nikhil2611
nikhil2611 merged commit a553a73 into main Jul 21, 2026
51 checks passed
@nikhil2611
nikhil2611 deleted the nikhil/CHEF-34747-macos-arm-build branch July 21, 2026 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-assisted Work completed with AI assistance following Progress AI policies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants