Repository navigation
[Containerapp] az containerapp env create: Pre-announce future logs destination default change - #10494
Conversation
Keep the default at log-analytics; add an upcoming warning and release coordination for the future azure-monitor default. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
Thank you for your contribution Michael Dai (@michaelkira)! We will review the pull request and get back to you soon. |
There was a problem hiding this comment.
🟢 Approval recommended
The announcement-only changes preserve current behavior and have no identified blocking issues.
No open issues 🎉
What changed in this PR
Pre-announces the future Container Apps logs destination default change without changing current creation behavior.
Changes:
- Registers a future-release warning with migration guidance.
- Tests warning registration, wording, and the unchanged default.
- Adds an upcoming release-history entry.
| File | Description |
|---|---|
| src/containerapp/HISTORY.rst | Documents the upcoming default change. |
| src/containerapp/azext_containerapp/tests/latest/test_containerapp_breaking_change.py | Tests the announcement and preserved default. |
| src/containerapp/azext_containerapp/_breaking_change.py | Registers the warning and migration link. |
Review effort: Balanced
|
Hi Michael Dai (@michaelkira), |
|
/azp run |
|
Azure Pipelines: Successfully started running 2 pipeline(s). |
…tainerapp-logs-preannouncement
Update registry resource request URIs to API 2026-09-01-preview while preserving server-returned operation polling URLs and all recorded responses. All 18 previously failing cassette tests pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
For |
|
Pushed CI fixes in c2cdcab:
Validation on this announcement branch: all 18 previously failing cassette tests passed; the pre-announcement unit test, Pylint/Flake8, and index tests passed. A separate local command-guideline linter reports existing wait/location rules, so I am not claiming that check passed locally. The current default remains log-analytics. New GitHub checks have started; hosted CI results are pending. |
|
Michael Dai (@michaelkira) Please revert the changes to the recording files. The initial CI failure of the integration tests would have been from the branch being out of sync. There are no changes changing the underlying api versions the commands interface with, hence there should be no need to update the recordings. |
|
JaysonTaiMicrosoft Thanks for the feedback. To clarify why we updated the recordings: this was based on a reproduced API-version mismatch, rather than a requirement of the pre-announcement itself.
Failing build: https://dev.azure.com/azclitools/5147fa83-336e-44ef-bbe0-c86b8ae86cbb/_build/results?buildId=363315 We agree that this announcement does not change the API versions used by the commands. The fixture update was intended to unblock CI against the SDK already used by the pipeline, not to introduce an API change. However, the main sync and recording fix were pushed together, so we have not yet isolated whether syncing the latest main alone is now sufficient. We therefore cannot claim the recording edits must remain regardless of the current baseline. Would you prefer that we sync the latest main, remove only our recording edits, and rerun CI first? If the same mismatch persists, we can provide the fresh logs and coordinate a separate upstream fixture fix to keep this announcement PR focused. |
|
JaysonTaiMicrosoft Disposition for the request to revert the recording changes: Won't fix for now. We are retaining the recording updates based on the reproduced ACR API-version mismatch and passing validation documented above. This does not assert that the pre-announcement changes any API version, or that syncing the latest main alone has been ruled out. No code changes are being made in response to this comment. We can revisit the disposition if you require the fixture update to be handled separately before merging. |
|
Michael Dai (@michaelkira) It appears the failures were from the an upgrade in the sdk from azure-cli. Azure/azure-cli#34053. Some scenario tests in the extension call the core As suggested by Greedygre (@Greedygre) please re-record the affected scenario tests as outlined in https://github.com/Azure/azure-cli/blob/dev/doc/authoring_tests.md#automating-tests-for-azure-cli. E.g |
🤖 PR Validation — ️✔️ All clear
This checklist is used to make sure that common guidelines for a pull request are followed.
Related command
az containerapp env createDescription
Pre-announces the future change of the
--logs-destinationdefault fromlog-analyticstoazure-monitorusing the standard breaking-change registration, and adds an upcoming HISTORY entry.This PR does NOT change the current default or create behavior. The warning links to the migration information in #10473. To retain Log Analytics behavior after the eventual change, users should explicitly pass
--logs-destination log-analytics.Release coordination
target_version=Noneemits "in a future release."upcoming; no release/version bump or index update is included. Please schedule publication of the announcement and record the actual version/date in the implementation PR.Validation
python -m pytest src\containerapp\azext_containerapp\tests\latest\test_containerapp_breaking_change.py -q: PASSED (1 test). Verifies the registration, always-displayed tag, future-release wording, migration link, and unchanged handler default.azdev style azext_containerapp: PASSED (Pylint and Flake8).python scripts\ci\test_index.py -q: PASSED (9 tests, 2 skipped).containerapp env create -g test-rg -n test-env -l australiaeast: PASSED. Confirmed the runtime warning is emitted and the handler receiveslog-analytics; the creation decorator was mocked.General Guidelines
azdev style <YOUR_EXT>locally? (pip install azdevrequired)python scripts/ci/test_index.py -qlocally? (pip install azdevrequired)For new extensions:
About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update
src/index.jsonautomatically.You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify
src/index.json.