Skip to content

{CI} Fix homebrew formula test by stripping no_autobump! in local tap#33540

Merged
YangAn-microsoft merged 1 commit into
Azure:devfrom
YangAn-microsoft:fix/homebrew-test-no-autobump
Jun 15, 2026
Merged

{CI} Fix homebrew formula test by stripping no_autobump! in local tap#33540
YangAn-microsoft merged 1 commit into
Azure:devfrom
YangAn-microsoft:fix/homebrew-test-no-autobump

Conversation

@YangAn-microsoft

@YangAn-microsoft YangAn-microsoft commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Description

The Test Homebrew Formula CI job started failing with:

Error: dev/azure-cli/azure-cli: no_autobump! can only be used in official Homebrew taps.

Root cause

The formula generator (scripts/release/homebrew/docker/formula_generate.py) builds azure-cli.rb by downloading the latest upstream homebrew-core formula and patching it (version/url/sha/deps). The upstream formula now contains:

no_autobump! because: :bumped_by_upstream

no_autobump! tells Homebrew''s autobump bot not to auto-bump azure-cli (the Azure CLI team submits full updates itself, since each release also needs the entire dependency resource list regenerated).

This line had been carried into our generated formula harmlessly for a while. The failure was triggered by an external Homebrew change, not by any recent commit in this repo:

  • Homebrew/brew#21982"cask: restrict no_autobump! usage to official Homebrew taps" — merged 2026-04-21 (commit b72c12f). It added a guard to formula.rb/cask/dsl.rb:

    raise ArgumentError, "no_autobump! can only be used in official Homebrew taps." if tap && !tap.official?

    Before this PR, no_autobump! was accepted in any tap (it resolved a long-standing TODO). After the CI image picked up a Homebrew version containing it, the previously-tolerated directive started raising an error.

Our CI test installs the generated formula into a local dummy tap (dev/azure-cli), which is not official, so Homebrew now rejects it.

Note: a GitHub search for this exact error returns only 2 PRs — Homebrew/brew#21982 (which introduced the check) and this one. The failing pattern (generate a formula from a homebrew-core copy, then install it from a local tap) is uncommon, so few projects hit it.

Fix

Strip the no_autobump! line only from the test copy placed in the local dev tap, right before brew install. The directive must remain in the released formula (which is submitted to the official homebrew-core tap), so the generator and the published artifact are left untouched. If upstream later removes the line, the sed becomes a harmless no-op.

Copilot AI review requested due to automatic review settings June 12, 2026 11:11
@azure-client-tools-bot-prd

azure-client-tools-bot-prd Bot commented Jun 12, 2026

Copy link
Copy Markdown
️✔️AzureCLI-FullTest
️✔️acr
️✔️latest
️✔️3.12
️✔️3.14
️✔️acs
️✔️latest
️✔️3.12
️✔️3.14
️✔️advisor
️✔️latest
️✔️3.12
️✔️3.14
️✔️ams
️✔️latest
️✔️3.12
️✔️3.14
️✔️apim
️✔️latest
️✔️3.12
️✔️3.14
️✔️appconfig
️✔️latest
️✔️3.12
️✔️3.14
️✔️appservice
️✔️latest
️✔️3.12
️✔️3.14
️✔️aro
️✔️latest
️✔️3.12
️✔️3.14
️✔️backup
️✔️latest
️✔️3.12
️✔️3.14
️✔️batch
️✔️latest
️✔️3.12
️✔️3.14
️✔️batchai
️✔️latest
️✔️3.12
️✔️3.14
️✔️billing
️✔️latest
️✔️3.12
️✔️3.14
️✔️botservice
️✔️latest
️✔️3.12
️✔️3.14
️✔️cdn
️✔️latest
️✔️3.12
️✔️3.14
️✔️cloud
️✔️latest
️✔️3.12
️✔️3.14
️✔️cognitiveservices
️✔️latest
️✔️3.12
️✔️3.14
️✔️compute_recommender
️✔️latest
️✔️3.12
️✔️3.14
️✔️computefleet
️✔️latest
️✔️3.12
️✔️3.14
️✔️config
️✔️latest
️✔️3.12
️✔️3.14
️✔️configure
️✔️latest
️✔️3.12
️✔️3.14
️✔️consumption
️✔️latest
️✔️3.12
️✔️3.14
️✔️container
️✔️latest
️✔️3.12
️✔️3.14
️✔️containerapp
️✔️latest
️✔️3.12
️✔️3.14
️✔️core
️✔️latest
️✔️3.12
️✔️3.14
️✔️cosmosdb
️✔️latest
️✔️3.12
️✔️3.14
️✔️databoxedge
️✔️latest
️✔️3.12
️✔️3.14
️✔️dls
️✔️latest
️✔️3.12
️✔️3.14
️✔️dms
️✔️latest
️✔️3.12
️✔️3.14
️✔️eventgrid
️✔️latest
️✔️3.12
️✔️3.14
️✔️eventhubs
️✔️latest
️✔️3.12
️✔️3.14
️✔️feedback
️✔️latest
️✔️3.12
️✔️3.14
️✔️find
️✔️latest
️✔️3.12
️✔️3.14
️✔️hdinsight
️✔️latest
️✔️3.12
️✔️3.14
️✔️identity
️✔️latest
️✔️3.12
️✔️3.14
️✔️iot
️✔️latest
️✔️3.12
️✔️3.14
️✔️keyvault
️✔️latest
️✔️3.12
️✔️3.14
️✔️lab
️✔️latest
️✔️3.12
️✔️3.14
️✔️managedservices
️✔️latest
️✔️3.12
️✔️3.14
️✔️maps
️✔️latest
️✔️3.12
️✔️3.14
️✔️marketplaceordering
️✔️latest
️✔️3.12
️✔️3.14
️✔️monitor
️✔️latest
️✔️3.12
️✔️3.14
️✔️mysql
️✔️latest
️✔️3.12
️✔️3.14
️✔️netappfiles
️✔️latest
️✔️3.12
️✔️3.14
️✔️network
️✔️latest
️✔️3.12
️✔️3.14
️✔️policyinsights
️✔️latest
️✔️3.12
️✔️3.14
️✔️postgresql
️✔️latest
️✔️3.12
️✔️3.14
️✔️privatedns
️✔️latest
️✔️3.12
️✔️3.14
️✔️profile
️✔️latest
️✔️3.12
️✔️3.14
️✔️rdbms
️✔️latest
️✔️3.12
️✔️3.14
️✔️redis
️✔️latest
️✔️3.12
️✔️3.14
️✔️relay
️✔️latest
️✔️3.12
️✔️3.14
️✔️resource
️✔️latest
️✔️3.12
️✔️3.14
️✔️role
️✔️latest
️✔️3.12
️✔️3.14
️✔️search
️✔️latest
️✔️3.12
️✔️3.14
️✔️security
️✔️latest
️✔️3.12
️✔️3.14
️✔️servicebus
️✔️latest
️✔️3.12
️✔️3.14
️✔️serviceconnector
️✔️latest
️✔️3.12
️✔️3.14
️✔️servicefabric
️✔️latest
️✔️3.12
️✔️3.14
️✔️signalr
️✔️latest
️✔️3.12
️✔️3.14
️✔️sql
️✔️latest
️✔️3.12
️✔️3.14
️✔️sqlvm
️✔️latest
️✔️3.12
️✔️3.14
️✔️storage
️✔️latest
️✔️3.12
️✔️3.14
️✔️synapse
️✔️latest
️✔️3.12
️✔️3.14
️✔️telemetry
️✔️latest
️✔️3.12
️✔️3.14
️✔️util
️✔️latest
️✔️3.12
️✔️3.14
️✔️vm
️✔️latest
️✔️3.12
️✔️3.14

@azure-client-tools-bot-prd

azure-client-tools-bot-prd Bot commented Jun 12, 2026

Copy link
Copy Markdown
️✔️AzureCLI-BreakingChangeTest
️✔️Non Breaking Changes

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes the Test Homebrew Formula CI job failure caused by upstream changes to the homebrew-core azure-cli formula: the upstream formula now includes no_autobump!, which newer Homebrew versions only allow in official taps. Since the CI installs the generated formula via a local dummy tap (dev/azure-cli), Homebrew rejects it unless that directive is removed in the local-tap copy.

Changes:

  • Strip the no_autobump! line from the formula only after it’s copied into the local dummy tap used by CI.
  • Leave the generated/released formula artifact unchanged so the directive remains present for submission to the official homebrew-core tap.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@yonzhan

yonzhan commented Jun 13, 2026

Copy link
Copy Markdown
Collaborator

CI

@naga-nandyala naga-nandyala self-requested a review June 14, 2026 23:53

@naga-nandyala naga-nandyala left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM
No risk as we are only removing this from the internal test step on CI and not from actual formula.

@YangAn-microsoft YangAn-microsoft merged commit 4fcfe46 into Azure:dev Jun 15, 2026
64 checks passed
@YangAn-microsoft YangAn-microsoft deleted the fix/homebrew-test-no-autobump branch June 15, 2026 03:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants