Skip to content

[Appservice] fix: az webapp config set --generic-configurations silently ignores camelCase properties like webJobsEnabled - #33826

Open
Aditya Pujara (a0x1ab) with Copilot wants to merge 5 commits into
devfrom
copilot/fix-webjobsenabled-issue
Open

[Appservice] fix: az webapp config set --generic-configurations silently ignores camelCase properties like webJobsEnabled#33826
Aditya Pujara (a0x1ab) with Copilot wants to merge 5 commits into
devfrom
copilot/fix-webjobsenabled-issue

Conversation

Copilot AI commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

az webapp config set --generic-configurations 'webJobsEnabled=false' exits 0 but never persists the value. Same silent failure occurs with JSON file input. The property is valid in the ARM API but was dropped before reaching the wire.

Root causes (two interacting bugs in update_site_configs)

  • JSON path: get_json_object() converts all camelCase JSON keys to snake_case. {"webJobsEnabled": false}{'web_jobs_enabled': False}. Since web_jobs_enabled is not a named property in the azure-mgmt-web 11.0.0 SDK model, the subsequent setattr is silently ignored.
  • Key=value path: setattr(configs, 'webJobsEnabled', value) creates a Python instance attribute, not an entry in the underlying MutableMapping dict. In azure-mgmt-web 11.0.0+, SiteConfig is a MutableMapping — the SDK serializes dict keys to the API body, not arbitrary Python attributes.

Fix

  • Replace get_json_object(s) with shell_safe_json_parse(s) to preserve camelCase keys from JSON input.
  • In the processing loop, detect camelCase property names (any uppercase letter present) and use dict-style assignment configs[config_name] = value instead of setattr. Snake_case names continue using setattr so the SDK's property aliases correctly translate them (e.g. request_tracing_enabledrequestTracingEnabled).
  • Extend ipSecurityRestrictions detection to recognize the camelCase form in addition to ip_security_restrictions.

Testing Guide

# Before fix: exits 0, value unchanged
az webapp config set -g <rg> -n <app> --generic-configurations 'webJobsEnabled=false'

# Verify (should now reflect the change)
az rest --method get \
  --uri "https://management.azure.com/subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.Web/sites/<app>/config/web?api-version=2024-11-01" \
  --query properties.webJobsEnabled

Unit tests added in test_webapp_commands_thru_mock.py covering both key=value and JSON input forms.

History Notes

[Appservice] az webapp config set: Fix --generic-configurations silently dropping camelCase site config properties (e.g. webJobsEnabled)


This checklist is used to make sure that common guidelines for a pull request are followed.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@yonzhan

Copy link
Copy Markdown
Collaborator

webapp

Copilot AI changed the title [WIP] Fix webJobsEnabled being ignored in generic configurations [Appservice] fix: az webapp config set --generic-configurations silently ignores camelCase properties like webJobsEnabled Aug 1, 2026
@azure-client-tools-agent

Copy link
Copy Markdown

Live test results — azdev test --live --series (changed test files only)

PASS

Selectors: test_webapp_commands_thru_mock (module)
PR head ref: copilot/fix-webjobsenabled-issue
PR head sha: fae402a1a4ecd8efdb1d4d712133b9a740618e08
PR base ref: dev
New test files in PR: false

Changed test files run
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py

Workflow run: https://github.com/Azure/issue-sentinel/actions/runs/30675159060

Last 80 lines of azdev output
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_error_handling_no_parameters PASSED [ 21%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_key_value_format PASSED [ 22%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_with_slot_settings PASSED [ 23%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_application_settings_polling_error_handling PASSED [ 24%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config PASSED [ 25%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase PASSED [ 26%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase_json PASSED [ 27%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_valid_linux_create_options PASSED [ 28%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_webapp_github_actions_add PASSED [ 29%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_extended PASSED [ 30%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_latest PASSED [ 31%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_standard PASSED [ 32%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_graceful PASSED [ 34%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_with_instance PASSED [ 35%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_500_raises PASSED [ 36%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_raises_on_windows PASSED [ 37%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_success PASSED [ 38%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_filters PASSED [ 39%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_slot PASSED [ 40%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_no_filename PASSED [ 41%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_filename PASSED [ 42%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_instance PASSED [ 43%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_500_raises PASSED [ 44%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_filename_and_instance_mutually_exclusive PASSED [ 45%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_json_response PASSED [ 46%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_latest PASSED [ 47%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_raises_on_windows PASSED [ 48%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_specific_filename PASSED [ 49%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_with_instance PASSED [ 50%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_transform_troubleshoot_status_output_renders_error_columns PASSED [ 51%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_all_instances PASSED [ 52%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_arm_404_with_instance PASSED [ 53%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_machine_name_as_instance PASSED [ 54%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_raises_on_windows PASSED [ 55%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_report_flag_renders_and_returns_none PASSED [ 56%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_single_instance PASSED [ 57%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_400_invalid_filename_surfaces_message PASSED [ 58%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_404_returns_empty_startup PASSED [ 59%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_500_surfaces_message PASSED [ 60%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_request_exception_surfaces_transport_error PASSED [ 61%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_unknown_instance_raises PASSED [ 62%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_runtime_failed_includes_startup_log_hint PASSED [ 63%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_timeout_includes_startup_log_hint PASSED [ 64%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestCreateAppServicePlanDefaults::test_default_sku_is_p0v3_when_not_specified PASSED [ 65%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_falls_back_when_no_cache PASSED [ 67%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_refreshes_on_401 PASSED [ 68%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers PASSED [ 69%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers_basic_auth PASSED [ 70%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_derives_from_cached_site PASSED [ 71%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_falls_back_when_no_cached_site PASSED [ 72%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_calls_is_flex_when_no_hint PASSED [ 73%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_skips_is_flex_when_hint_provided PASSED [ 74%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_function_app PASSED [ 75%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_unknown PASSED [ 76%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_web_app PASSED [ 77%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_one_deploy_params_repr_does_not_leak_credentials PASSED [ 78%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_exception PASSED [ 79%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_success PASSED [ 80%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_aad_capitalized_key PASSED [ 81%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_basic_auth_lowercase_key PASSED [ 82%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_noop_without_authorization PASSED [ 83%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_lazy_fetch_for_functionapp PASSED [ 84%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_uses_cached_value PASSED [ 85%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_caches_result PASSED [ 86%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_uses_slot_when_set PASSED [ 87%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_falls_back_when_no_cache PASSED [ 88%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_site PASSED [ 89%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_slot_site PASSED [ 90%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_http_when_no_ssl PASSED [ 91%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_https_when_ssl_enabled PASSED [ 92%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_javaNNRuntime_keys PASSED [ 93%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_not_first_selected_by_auto_update PASSED [ 94%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_runtimes_array_complete PASSED [ 95%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_container_settings_data_reads_mapping PASSED [ 96%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_java_runtimes_from_container_settings_reads_mapping PASSED [ 97%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_runtimes_array_entries_flagged_auto_update PASSED [ 98%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_typed_attrs_only_expose_java_8_11_but_mapping_has_all PASSED [100%]

- generated xml file: /home/runner/work/issue-sentinel/issue-sentinel/test-output/results.xml -
============================== 97 passed in 2.87s ==============================

Posted by agent-assist live-test workflow.

@a0x1ab

Copy link
Copy Markdown
Member

Copilot the automated CI and live-test review on this PR found failures. Please look into the requested changes here: #33826 (review) and push a fix.


Posted by agent-assist (autonomous bug-fix pipeline).

@azure-client-tools-agent azure-client-tools-agent Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Automated CI Review — Changes Requested

Live-test result: success (azdev --live passed for the changed test files).

However, CI has a failing check that must be fixed:

  • Check CLI Style — failed (Azure.azure-cli (Check CLI Style)), 1 error reported.
    See the Azure DevOps build log: https://dev.azure.com/azclitools/5147fa83-336e-44ef-bbe0-c86b8ae86cbb/_build/results?buildId=334415
    The style checker's underlying process exited with a non-zero code (Bash exit code 4),
    indicating a code-style violation (e.g. pylint/flake8/black style issue) introduced by
    this PR's changes. Please run the CLI style checks locally (e.g. azdev style /
    python scripts/ci/test_source.py per repo tooling) and fix any reported issues, then
    push a new commit.

Remaining checks (8) were still pending/in-progress at review time and will be
re-evaluated automatically once you push a fix.


Posted by agent-assist (autonomous bug-fix pipeline).

Copilot AI commented Aug 1, 2026

Copy link
Copy Markdown
Contributor Author

Copilot the automated CI and live-test review on this PR found failures. Please look into the requested changes here: #3...

Fixed in commit fix: remove unused get_json_object import causing pylint W0611 style failure.

Root cause: When I replaced get_json_object(s) with shell_safe_json_parse(s) in update_site_configs, the get_json_object import on line 47 became unused. Pylint W0611 (unused-import) is not suppressed in the pylintrc, so it triggered exit code 4 in the azdev style check.

Fix: Removed get_json_object from the import line in custom.py. Verified with pylint --enable=W0611 (10.00/10) and both new unit tests still pass.

@azure-client-tools-agent

Copy link
Copy Markdown

Live test results — azdev test --live --series (changed test files only)

PASS

Selectors: test_webapp_commands_thru_mock (module)
PR head ref: copilot/fix-webjobsenabled-issue
PR head sha: 22354452e648c9b11966cd58b6c519ed8679ea01
PR base ref: dev
New test files in PR: false

Changed test files run
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py

Workflow run: https://github.com/Azure/issue-sentinel/actions/runs/30680420027

Last 80 lines of azdev output
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_error_handling_no_parameters PASSED [ 21%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_key_value_format PASSED [ 22%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_with_slot_settings PASSED [ 23%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_application_settings_polling_error_handling PASSED [ 24%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config PASSED [ 25%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase PASSED [ 26%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase_json PASSED [ 27%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_valid_linux_create_options PASSED [ 28%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_webapp_github_actions_add PASSED [ 29%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_extended PASSED [ 30%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_latest PASSED [ 31%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_standard PASSED [ 32%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_graceful PASSED [ 34%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_with_instance PASSED [ 35%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_500_raises PASSED [ 36%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_raises_on_windows PASSED [ 37%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_success PASSED [ 38%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_filters PASSED [ 39%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_slot PASSED [ 40%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_no_filename PASSED [ 41%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_filename PASSED [ 42%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_instance PASSED [ 43%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_500_raises PASSED [ 44%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_filename_and_instance_mutually_exclusive PASSED [ 45%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_json_response PASSED [ 46%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_latest PASSED [ 47%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_raises_on_windows PASSED [ 48%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_specific_filename PASSED [ 49%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_with_instance PASSED [ 50%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_transform_troubleshoot_status_output_renders_error_columns PASSED [ 51%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_all_instances PASSED [ 52%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_arm_404_with_instance PASSED [ 53%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_machine_name_as_instance PASSED [ 54%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_raises_on_windows PASSED [ 55%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_report_flag_renders_and_returns_none PASSED [ 56%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_single_instance PASSED [ 57%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_400_invalid_filename_surfaces_message PASSED [ 58%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_404_returns_empty_startup PASSED [ 59%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_500_surfaces_message PASSED [ 60%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_request_exception_surfaces_transport_error PASSED [ 61%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_unknown_instance_raises PASSED [ 62%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_runtime_failed_includes_startup_log_hint PASSED [ 63%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_timeout_includes_startup_log_hint PASSED [ 64%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestCreateAppServicePlanDefaults::test_default_sku_is_p0v3_when_not_specified PASSED [ 65%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_falls_back_when_no_cache PASSED [ 67%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_refreshes_on_401 PASSED [ 68%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers PASSED [ 69%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers_basic_auth PASSED [ 70%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_derives_from_cached_site PASSED [ 71%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_falls_back_when_no_cached_site PASSED [ 72%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_calls_is_flex_when_no_hint PASSED [ 73%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_skips_is_flex_when_hint_provided PASSED [ 74%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_function_app PASSED [ 75%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_unknown PASSED [ 76%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_web_app PASSED [ 77%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_one_deploy_params_repr_does_not_leak_credentials PASSED [ 78%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_exception PASSED [ 79%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_success PASSED [ 80%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_aad_capitalized_key PASSED [ 81%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_basic_auth_lowercase_key PASSED [ 82%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_noop_without_authorization PASSED [ 83%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_lazy_fetch_for_functionapp PASSED [ 84%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_uses_cached_value PASSED [ 85%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_caches_result PASSED [ 86%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_uses_slot_when_set PASSED [ 87%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_falls_back_when_no_cache PASSED [ 88%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_site PASSED [ 89%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_slot_site PASSED [ 90%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_http_when_no_ssl PASSED [ 91%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_https_when_ssl_enabled PASSED [ 92%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_javaNNRuntime_keys PASSED [ 93%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_not_first_selected_by_auto_update PASSED [ 94%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_runtimes_array_complete PASSED [ 95%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_container_settings_data_reads_mapping PASSED [ 96%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_java_runtimes_from_container_settings_reads_mapping PASSED [ 97%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_runtimes_array_entries_flagged_auto_update PASSED [ 98%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_typed_attrs_only_expose_java_8_11_but_mapping_has_all PASSED [100%]

- generated xml file: /home/runner/work/issue-sentinel/issue-sentinel/test-output/results.xml -
============================== 97 passed in 3.37s ==============================

Posted by agent-assist live-test workflow.

@azure-client-tools-agent azure-client-tools-agent Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Automated Review Summary — PASS ✅

  • CI checks: 18/18 passed, 0 failed, 0 pending.
  • Live test (Tester): completed successfully (azdev test run against the changed test files for this PR).

No outstanding issues detected. Marking this PR as ready for human review.


Posted by agent-assist (autonomous bug-fix pipeline).

@a0x1ab

Copy link
Copy Markdown
Member

Copilot please review and implement all unaddressed human feedback through Jordan Selig (@seligj95)'s latest comment at #33826 (comment), then push the fix to this PR.

Human review feedback to implement:
Copilot This still fails an actual live repro at head 22354452e648c9b11966cd58b6c519ed8679ea01. Please update the PR to address the serialized request shape and add a regression test that exercises serialization rather than only the SDK mapping.

I ran the PR source against a Linux App Service in Demo Three Subscription. Starting with properties.webJobsEnabled=true, both documented forms exited 0 but left ARM unchanged:

''' text
Before baseline: true
After baseline key=value: true
After PR key=value: true
Reset before PR JSON file: true
After PR JSON file: true
'''

The PR's debug PATCH explains why. It sends the new value at the resource root while the existing value remains under properties:

''' json
{
"properties": {
"...": "...",
"webJobsEnabled": true
},
"webJobsEnabled": "false"
}
'''

Azure ignores the root-level field and returns properties.webJobsEnabled=true. The current tests pass because dict(site_config) contains the key, but that does not verify where it appears in the final request body.

Please ensure both webJobsEnabled=false and {"webJobsEnabled": false} serialize as Boolean false under properties.webJobsEnabled, and add a test that would fail for the payload above.


Posted by agent-assist (autonomous bug-fix pipeline).

@azure-client-tools-agent azure-client-tools-agent Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot finished without pushing a fix after 3 automated attempts for the feedback at #33826 (comment). Leaving this PR for manual follow-up.


Posted by agent-assist (autonomous bug-fix pipeline).

@seligj95

Copy link
Copy Markdown
Contributor

Copilot Retested this PR again in Demo Three Subscription, but the branch head is still unchanged at 22354452e648c9b11966cd58b6c519ed8679ea01, and the live bug remains. Please implement and push the previously requested serialization fix.

Current-head live results:

Before: true
After PR key=value: true
Reset: true
After PR JSON file: true

Both commands still exit 0 while ARM remains properties.webJobsEnabled=true:

--generic-configurations webJobsEnabled=false
--generic-configurations @webjobs-config.json

The existing tests still only verify dict(site_config) and do not validate the final request body. The required fix remains:

  • serialize webJobsEnabled under properties.webJobsEnabled, not at the resource root;
  • convert key/value false to Boolean false, matching the JSON-file form;
  • add a request-serialization regression test that fails if the payload contains root-level webJobsEnabled while properties.webJobsEnabled remains true.

@azure-client-tools-agent

Copy link
Copy Markdown

Started a Copilot task using claude-sonnet-4.6 for human feedback at #33826 (comment): https://github.com/Azure/azure-cli/tasks/f19101c9-96dd-4ffd-af4e-1be6dca9e7ca


Posted by agent-assist (autonomous bug-fix pipeline).

…nfig, coerce bool strings

Co-authored-by: a0x1ab <59631311+a0x1ab@users.noreply.github.com>

Copilot AI commented Aug 4, 2026

Copy link
Copy Markdown
Contributor Author

@copilot Retested this PR again in Demo Three Subscription, but the branch head is still unchanged at 22354452e648c9b11966cd58b6c519ed8679ea01, and the live bug remains. Please implement and push th...

Fixed in commit fix: route generic-configurations camelCase keys to properties.SiteConfig, coerce bool strings.

Root cause: update_configuration takes a SiteConfigResource; the SDK serializer (SdkJSONEncoder) places known flattened properties under "properties" but puts extra dict keys set directly on the SiteConfigResource at the resource root—where ARM silently ignores them.

Changes:

  1. custom.py: When a camelCase key is encountered in generic_configurations, the assignment now goes to configs.properties (the SiteConfig child) rather than directly to configs. If properties is None or absent (fallback), it goes to configs as before.
  2. custom.py: String 'true'/'false' from key=value form are coerced to bool, matching the JSON-file form.
  3. Tests: Updated the two existing camelCase tests to use SiteConfigResource (matching the real get_configuration response) and assert that webJobsEnabled is in properties, not at root, and that boolean coercion works. Added a new serialization regression test (test_update_site_config_generic_configurations_request_body_serialization) that encodes via SdkJSONEncoder and asserts properties.webJobsEnabled=false for both the key=value and JSON-file forms.

@azure-client-tools-agent

Copy link
Copy Markdown

Live test results — azdev test --live --series (changed test files only)

PASS

Selectors: test_webapp_commands_thru_mock (module)
PR head ref: copilot/fix-webjobsenabled-issue
PR head sha: c05dec2fe6f361d8d4a4c01f7a0f8770071dadf6
PR base ref: dev
New test files in PR: false

Changed test files run
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py

Workflow run: https://github.com/Azure/issue-sentinel/actions/runs/30923582515

Last 80 lines of azdev output
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_key_value_format PASSED [ 22%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_with_slot_settings PASSED [ 23%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_application_settings_polling_error_handling PASSED [ 24%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config PASSED [ 25%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase PASSED [ 26%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase_json PASSED [ 27%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_request_body_serialization PASSED [ 28%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_valid_linux_create_options PASSED [ 29%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_webapp_github_actions_add PASSED [ 30%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_extended PASSED [ 31%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_latest PASSED [ 32%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_standard PASSED [ 33%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_graceful PASSED [ 34%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_with_instance PASSED [ 35%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_500_raises PASSED [ 36%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_raises_on_windows PASSED [ 37%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_success PASSED [ 38%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_filters PASSED [ 39%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_slot PASSED [ 40%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_no_filename PASSED [ 41%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_filename PASSED [ 42%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_instance PASSED [ 43%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_500_raises PASSED [ 44%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_filename_and_instance_mutually_exclusive PASSED [ 45%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_json_response PASSED [ 46%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_latest PASSED [ 47%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_raises_on_windows PASSED [ 48%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_specific_filename PASSED [ 50%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_with_instance PASSED [ 51%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_transform_troubleshoot_status_output_renders_error_columns PASSED [ 52%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_all_instances PASSED [ 53%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_arm_404_with_instance PASSED [ 54%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_machine_name_as_instance PASSED [ 55%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_raises_on_windows PASSED [ 56%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_report_flag_renders_and_returns_none PASSED [ 57%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_single_instance PASSED [ 58%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_400_invalid_filename_surfaces_message PASSED [ 59%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_404_returns_empty_startup PASSED [ 60%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_500_surfaces_message PASSED [ 61%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_request_exception_surfaces_transport_error PASSED [ 62%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_unknown_instance_raises PASSED [ 63%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_runtime_failed_includes_startup_log_hint PASSED [ 64%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_timeout_includes_startup_log_hint PASSED [ 65%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestCreateAppServicePlanDefaults::test_default_sku_is_p0v3_when_not_specified PASSED [ 66%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_falls_back_when_no_cache PASSED [ 67%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_refreshes_on_401 PASSED [ 68%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers PASSED [ 69%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers_basic_auth PASSED [ 70%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_derives_from_cached_site PASSED [ 71%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_falls_back_when_no_cached_site PASSED [ 72%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_calls_is_flex_when_no_hint PASSED [ 73%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_skips_is_flex_when_hint_provided PASSED [ 74%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_function_app PASSED [ 75%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_unknown PASSED [ 76%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_web_app PASSED [ 77%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_one_deploy_params_repr_does_not_leak_credentials PASSED [ 78%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_exception PASSED [ 79%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_success PASSED [ 80%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_aad_capitalized_key PASSED [ 81%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_basic_auth_lowercase_key PASSED [ 82%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_noop_without_authorization PASSED [ 83%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_lazy_fetch_for_functionapp PASSED [ 84%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_uses_cached_value PASSED [ 85%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_caches_result PASSED [ 86%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_uses_slot_when_set PASSED [ 87%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_falls_back_when_no_cache PASSED [ 88%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_site PASSED [ 89%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_slot_site PASSED [ 90%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_http_when_no_ssl PASSED [ 91%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_https_when_ssl_enabled PASSED [ 92%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_javaNNRuntime_keys PASSED [ 93%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_not_first_selected_by_auto_update PASSED [ 94%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_runtimes_array_complete PASSED [ 95%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_container_settings_data_reads_mapping PASSED [ 96%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_java_runtimes_from_container_settings_reads_mapping PASSED [ 97%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_runtimes_array_entries_flagged_auto_update PASSED [ 98%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_typed_attrs_only_expose_java_8_11_but_mapping_has_all PASSED [100%]

- generated xml file: /home/runner/work/issue-sentinel/issue-sentinel/test-output/results.xml -
============================== 98 passed in 3.67s ==============================

Posted by agent-assist live-test workflow.

@azure-client-tools-agent

Copy link
Copy Markdown

Live test results — azdev test --live --series (changed test files only)

PASS

Selectors: test_webapp_commands_thru_mock (module)
PR head ref: copilot/fix-webjobsenabled-issue
PR head sha: 5f5596aa66704fec5e61ba2b364bbeffbddaee17
PR base ref: dev
New test files in PR: false

Changed test files run
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py

Workflow run: https://github.com/Azure/issue-sentinel/actions/runs/30926689147

Last 80 lines of azdev output
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_key_value_format PASSED [ 22%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_app_settings_success_with_slot_settings PASSED [ 23%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_application_settings_polling_error_handling PASSED [ 24%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config PASSED [ 25%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase PASSED [ 26%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_camelcase_json PASSED [ 27%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_update_site_config_generic_configurations_request_body_serialization PASSED [ 28%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_valid_linux_create_options PASSED [ 29%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestWebappMocked::test_webapp_github_actions_add PASSED [ 30%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_extended PASSED [ 31%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_latest PASSED [ 32%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestUpdateWebapp::test_update_webapp_platform_release_channel_standard PASSED [ 33%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_graceful PASSED [ 34%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_404_with_instance PASSED [ 35%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_500_raises PASSED [ 36%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_raises_on_windows PASSED [ 37%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_success PASSED [ 38%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_filters PASSED [ 39%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_list_startup_logs_with_slot PASSED [ 40%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_no_filename PASSED [ 41%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_filename PASSED [ 42%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_404_with_instance PASSED [ 43%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_500_raises PASSED [ 44%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_filename_and_instance_mutually_exclusive PASSED [ 45%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_json_response PASSED [ 46%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_latest PASSED [ 47%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_raises_on_windows PASSED [ 48%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_specific_filename PASSED [ 50%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStartupLogsMocked::test_show_startup_log_with_instance PASSED [ 51%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_transform_troubleshoot_status_output_renders_error_columns PASSED [ 52%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_all_instances PASSED [ 53%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_arm_404_with_instance PASSED [ 54%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_machine_name_as_instance PASSED [ 55%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_raises_on_windows PASSED [ 56%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_report_flag_renders_and_returns_none PASSED [ 57%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_single_instance PASSED [ 58%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_400_invalid_filename_surfaces_message PASSED [ 59%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_404_returns_empty_startup PASSED [ 60%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_500_surfaces_message PASSED [ 61%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_summary_request_exception_surfaces_transport_error PASSED [ 62%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestTroubleshootStatusMocked::test_troubleshoot_status_unknown_instance_raises PASSED [ 63%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_runtime_failed_includes_startup_log_hint PASSED [ 64%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestRuntimeFailedHintMocked::test_timeout_includes_startup_log_hint PASSED [ 65%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestCreateAppServicePlanDefaults::test_default_sku_is_p0v3_when_not_specified PASSED [ 66%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_falls_back_when_no_cache PASSED [ 67%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_refreshes_on_401 PASSED [ 68%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers PASSED [ 69%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_check_zip_deployment_status_reuses_cached_headers_basic_auth PASSED [ 70%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_derives_from_cached_site PASSED [ 71%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_or_fetch_scm_url_falls_back_when_no_cached_site PASSED [ 72%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_calls_is_flex_when_no_hint PASSED [ 73%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_get_scm_site_headers_skips_is_flex_when_hint_provided PASSED [ 74%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_function_app PASSED [ 75%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_unknown PASSED [ 76%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_known_is_flex_hint_web_app PASSED [ 77%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_one_deploy_params_repr_does_not_leak_credentials PASSED [ 78%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_exception PASSED [ 79%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_perform_onedeploy_internal_clears_cache_on_success PASSED [ 80%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_aad_capitalized_key PASSED [ 81%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_basic_auth_lowercase_key PASSED [ 82%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeployScmCache::test_populate_cached_scm_headers_noop_without_authorization PASSED [ 83%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_lazy_fetch_for_functionapp PASSED [ 84%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_is_linux_webapp_uses_cached_value PASSED [ 85%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_caches_result PASSED [ 86%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_or_fetch_site_uses_slot_when_set PASSED [ 87%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_falls_back_when_no_cache PASSED [ 88%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_site PASSED [ 89%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_get_visit_url_uses_cached_slot_site PASSED [ 90%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_http_when_no_ssl PASSED [ 91%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestOneDeploySiteCache::test_url_from_site_picks_https_when_ssl_enabled PASSED [ 92%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_javaNNRuntime_keys PASSED [ 93%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_not_first_selected_by_auto_update PASSED [ 94%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_aggregate_runtimes_array_complete PASSED [ 95%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_container_settings_data_reads_mapping PASSED [ 96%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_get_java_runtimes_from_container_settings_reads_mapping PASSED [ 97%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_runtimes_array_entries_flagged_auto_update PASSED [ 98%]
azure-cli/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_webapp_commands_thru_mock.py::TestStackRuntimeJavaSELinux::test_typed_attrs_only_expose_java_8_11_but_mapping_has_all PASSED [100%]

- generated xml file: /home/runner/work/issue-sentinel/issue-sentinel/test-output/results.xml -
============================== 98 passed in 3.01s ==============================

Posted by agent-assist live-test workflow.

@seligj95

Copy link
Copy Markdown
Contributor

Approved from my side. I retested head 5f5596aa66704fec5e61ba2b364bbeffbddaee17 live in Demo Three Subscription. Both --generic-configurations webJobsEnabled=false and the JSON-file form now persist properties.webJobsEnabled=false in ARM. The targeted serialization tests also pass. All temporary resources were deleted and verified absent.

@azure-client-tools-agent azure-client-tools-agent Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Automated Review Summary

Live test: ✅ Passed (azdev test run via live-test.yml)
CI checks: ✅ All 20 checks passed (0 failed, 0 pending)

This PR fixes #33823: az webapp config set --generic-configurations silently ignoring camelCase properties like webJobsEnabled. Both the automated live test and the full CI check suite completed successfully with no failures. No further action needed from the automated pipeline at this time — ready for human maintainer review/merge.


Posted by agent-assist (autonomous bug-fix pipeline).

@azure-client-tools-agent

Copy link
Copy Markdown

Started a Copilot task using claude-sonnet-4.6 for human feedback at #33826 (comment): https://github.com/Azure/azure-cli/tasks/c53e5dfe-a812-4a40-897c-29cafa6bb01f


Posted by agent-assist (autonomous bug-fix pipeline).

@azure-client-tools-agent

Copy link
Copy Markdown

Started a Copilot task using claude-sonnet-4.6 for human feedback at #33826 (comment): https://github.com/Azure/azure-cli/tasks/e42f83a9-6707-4b4b-bc87-76a7c12b9e36


Posted by agent-assist (autonomous bug-fix pipeline).

@azure-client-tools-agent

Copy link
Copy Markdown

Started a Copilot task using claude-sonnet-4.6 for human feedback at #33826 (comment): https://github.com/Azure/azure-cli/tasks/144e62ba-b503-4b97-8f0d-30d618fbf14b


Posted by agent-assist (autonomous bug-fix pipeline).

@azure-client-tools-agent azure-client-tools-agent Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot finished without pushing a fix after 3 automated attempts for the feedback at #33826 (comment). Leaving this PR for manual follow-up.


Posted by agent-assist (autonomous bug-fix pipeline).

@a0x1ab Aditya Pujara (a0x1ab) added agent-assist On-demand trigger for the agent-assist autonomous bug-fix pipeline azure-client-tools-agent Pull request commented on or reviewed by Azure Client Tools Agent and removed agent-assist On-demand trigger for the agent-assist autonomous bug-fix pipeline labels Aug 6, 2026
@microsoft-github-policy-service

Copy link
Copy Markdown
Contributor

🔔 Routing this PR to @Azure/act-identity-squad.

@microsoft-github-policy-service

Copy link
Copy Markdown
Contributor

🔔 Routing this PR to @Azure/act-observability-squad.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

act-identity-squad act-observability-squad ARM az resource/group/lock/tag/deployment/policy/managementapp/account management-group Auto-Assign Auto assign by bot azure-client-tools-agent Pull request commented on or reviewed by Azure Client Tools Agent Web Apps az webapp

Projects

None yet

Development

Successfully merging this pull request may close these issues.

webapp config set generic-configurations silently ignores webJobsEnabled

5 participants