Skip to content

Conversation

@jiasli
Copy link
Member

@jiasli jiasli commented Mar 31, 2023

Related command
az bicep

Description
azure.cli.command_modules.resource._bicep.ensure_bicep_installation fails to access https://downloads.bicep.azure.com/ on Mariner 2.0:

ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get issuer certificate (_ssl.c:1129)

This leads to CI failure for tests/latest/test_resource_custom.py::TestFormatBicepFile::test_format_bicep_file:

https://dev.azure.com/azclitools/public/_build/results?buildId=45199&view=logs&j=b67de874-13d2-5286-c044-deb7a6e6a9ee&t=f22bcdb8-df09-5097-beed-939fe0350d62&l=13327

2023-03-31T04:48:28.2148390Z /usr/lib64/az/lib/python3.9/site-packages/azure/cli/command_modules/resource/custom.py:3749: in format_bicep_file
2023-03-31T04:48:28.2148754Z     ensure_bicep_installation(cmd.cli_ctx)
2023-03-31T04:48:28.2149027Z _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
2023-03-31T04:48:28.2149150Z 
2023-03-31T04:48:28.2149374Z cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7fe8554d8fd0>
2023-03-31T04:48:28.2149820Z release_tag = 'v0.15.31', target_platform = None, stdout = True
2023-03-31T04:48:28.2149937Z 
2023-03-31T04:48:28.2150152Z     def ensure_bicep_installation(cli_ctx, release_tag=None, target_platform=None, stdout=True):
2023-03-31T04:48:28.2150402Z         system = platform.system()
2023-03-31T04:48:28.2150618Z         installation_path = _get_bicep_installation_path(system)
2023-03-31T04:48:28.2150790Z     
2023-03-31T04:48:28.2150981Z         if os.path.isfile(installation_path):
2023-03-31T04:48:28.2151180Z             if not release_tag:
2023-03-31T04:48:28.2151377Z                 return
2023-03-31T04:48:28.2151538Z     
2023-03-31T04:48:28.2151764Z             installed_version = _get_bicep_installed_version(installation_path)
2023-03-31T04:48:28.2152389Z             target_version = _extract_semver(release_tag)
2023-03-31T04:48:28.2152747Z             if installed_version and target_version and semver.compare(installed_version, target_version) == 0:
2023-03-31T04:48:28.2153042Z                 return
2023-03-31T04:48:28.2153230Z     
2023-03-31T04:48:28.2153452Z         installation_dir = os.path.dirname(installation_path)
2023-03-31T04:48:28.2153753Z         if not os.path.exists(installation_dir):
2023-03-31T04:48:28.2154019Z             os.makedirs(installation_dir)
2023-03-31T04:48:28.2154222Z     
2023-03-31T04:48:28.2154395Z         try:
2023-03-31T04:48:28.2154669Z             release_tag = release_tag if release_tag else get_bicep_latest_release_tag()
2023-03-31T04:48:28.2155123Z             if stdout:
2023-03-31T04:48:28.2155331Z                 if release_tag:
2023-03-31T04:48:28.2155567Z                     print(f"Installing Bicep CLI {release_tag}...")
2023-03-31T04:48:28.2155816Z                 else:
2023-03-31T04:48:28.2156053Z                     print("Installing Bicep CLI...")
2023-03-31T04:48:28.2156337Z             os.environ.setdefault("CURL_CA_BUNDLE", certifi.where())
2023-03-31T04:48:28.2156734Z             request = urlopen(_get_bicep_download_url(system, release_tag, target_platform=target_platform))
2023-03-31T04:48:28.2157097Z             with open(installation_path, "wb") as f:
2023-03-31T04:48:28.2157341Z                 f.write(request.read())
2023-03-31T04:48:28.2157549Z     
2023-03-31T04:48:28.2157852Z             os.chmod(installation_path, os.stat(installation_path).st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH)
2023-03-31T04:48:28.2158170Z     
2023-03-31T04:48:28.2158479Z             use_binary_from_path = cli_ctx.config.get("bicep", "use_binary_from_path", "if_found_in_ci").lower()
2023-03-31T04:48:28.2158841Z             if use_binary_from_path not in ["0", "no", "false", "off"]:
2023-03-31T04:48:28.2159456Z                 _logger.warning("The configuration value of bicep.use_binary_from_path has been set to 'false'.")
2023-03-31T04:48:28.2159878Z                 cli_ctx.config.set_value("bicep", "use_binary_from_path", "false")
2023-03-31T04:48:28.2160129Z     
2023-03-31T04:48:28.2160321Z             if stdout:
2023-03-31T04:48:28.2160748Z                 print(f'Successfully installed Bicep CLI to "{installation_path}".')
2023-03-31T04:48:28.2161002Z             else:
2023-03-31T04:48:28.2161185Z                 _logger.info(
2023-03-31T04:48:28.2161411Z                     "Successfully installed Bicep CLI to %s",
2023-03-31T04:48:28.2161658Z                     installation_path,
2023-03-31T04:48:28.2161855Z                 )
2023-03-31T04:48:28.2162039Z         except IOError as err:
2023-03-31T04:48:28.2162331Z >           raise ClientRequestError(f"Error while attempting to download Bicep CLI: {err}")
2023-03-31T04:48:28.2163050Z E           azure.cli.core.azclierror.ClientRequestError: Error while attempting to download Bicep CLI: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get issuer certificate (_ssl.c:1129)>
2023-03-31T04:48:28.2163399Z 
2023-03-31T04:48:28.2163867Z /usr/lib64/az/lib/python3.9/site-packages/azure/cli/command_modules/resource/_bicep.py:154: ClientRequestError

I have created #21807 to track this issue. This PR temporarily disables job TestRpmPackageMariner.

@jiasli jiasli requested review from bebound and wangzelin007 March 31, 2023 03:46
@azure-client-tools-bot-prd
Copy link

azure-client-tools-bot-prd bot commented Mar 31, 2023

️✔️acr
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️acs
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️advisor
️✔️latest
️✔️3.10
️✔️3.9
️✔️ams
️✔️latest
️✔️3.10
️✔️3.9
️✔️apim
️✔️latest
️✔️3.10
️✔️3.9
️✔️appconfig
️✔️latest
️✔️3.10
️✔️3.9
️✔️appservice
️✔️latest
️✔️3.10
️✔️3.9
️✔️aro
️✔️latest
️✔️3.10
️✔️3.9
️✔️backup
️✔️latest
️✔️3.10
️✔️3.9
️✔️batch
️✔️latest
️✔️3.10
️✔️3.9
️✔️batchai
️✔️latest
️✔️3.10
️✔️3.9
️✔️billing
️✔️latest
️✔️3.10
️✔️3.9
️✔️botservice
️✔️latest
️✔️3.10
️✔️3.9
️✔️cdn
️✔️latest
️✔️3.10
️✔️3.9
️✔️cloud
️✔️latest
️✔️3.10
️✔️3.9
️✔️cognitiveservices
️✔️latest
️✔️3.10
️✔️3.9
️✔️config
️✔️latest
️✔️3.10
️✔️3.9
️✔️configure
️✔️latest
️✔️3.10
️✔️3.9
️✔️consumption
️✔️latest
️✔️3.10
️✔️3.9
️✔️container
️✔️latest
️✔️3.10
️✔️3.9
️✔️core
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️cosmosdb
️✔️latest
️✔️3.10
️✔️3.9
️✔️databoxedge
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️dla
️✔️latest
️✔️3.10
️✔️3.9
️✔️dls
️✔️latest
️✔️3.10
️✔️3.9
️✔️dms
️✔️latest
️✔️3.10
️✔️3.9
️✔️eventgrid
️✔️latest
️✔️3.10
️✔️3.9
️✔️eventhubs
️✔️latest
️✔️3.10
️✔️3.9
️✔️feedback
️✔️latest
️✔️3.10
️✔️3.9
️✔️find
️✔️latest
️✔️3.10
️✔️3.9
️✔️hdinsight
️✔️latest
️✔️3.10
️✔️3.9
️✔️identity
️✔️latest
️✔️3.10
️✔️3.9
️✔️iot
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️keyvault
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️kusto
️✔️latest
️✔️3.10
️✔️3.9
️✔️lab
️✔️latest
️✔️3.10
️✔️3.9
️✔️managedservices
️✔️latest
️✔️3.10
️✔️3.9
️✔️maps
️✔️latest
️✔️3.10
️✔️3.9
️✔️marketplaceordering
️✔️latest
️✔️3.10
️✔️3.9
️✔️monitor
️✔️latest
️✔️3.10
️✔️3.9
️✔️netappfiles
️✔️latest
️✔️3.10
️✔️3.9
️✔️network
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️policyinsights
️✔️latest
️✔️3.10
️✔️3.9
️✔️privatedns
️✔️latest
️✔️3.10
️✔️3.9
️✔️profile
️✔️latest
️✔️3.10
️✔️3.9
️✔️rdbms
️✔️latest
️✔️3.10
️✔️3.9
️✔️redis
️✔️latest
️✔️3.10
️✔️3.9
️✔️relay
️✔️latest
️✔️3.10
️✔️3.9
️✔️resource
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️role
️✔️latest
️✔️3.10
️✔️3.9
️✔️search
️✔️latest
️✔️3.10
️✔️3.9
️✔️security
️✔️latest
️✔️3.10
️✔️3.9
️✔️servicebus
️✔️latest
️✔️3.10
️✔️3.9
️✔️serviceconnector
️✔️latest
️✔️3.10
️✔️3.9
️✔️servicefabric
️✔️latest
️✔️3.10
️✔️3.9
️✔️signalr
️✔️latest
️✔️3.10
️✔️3.9
️✔️sql
️✔️latest
️✔️3.10
️✔️3.9
️✔️sqlvm
️✔️latest
️✔️3.10
️✔️3.9
️✔️storage
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️synapse
️✔️latest
️✔️3.10
️✔️3.9
️✔️telemetry
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9
️✔️util
️✔️latest
️✔️3.10
️✔️3.9
️✔️vm
️✔️2018-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.10
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.10
️✔️3.9
️✔️latest
️✔️3.10
️✔️3.9

@ghost ghost added Auto-Assign Auto assign by bot CI CI labels Mar 31, 2023
@yonzhan
Copy link
Collaborator

yonzhan commented Mar 31, 2023

CI

@ghost ghost requested review from jsntcy, kairu-ms and yonzhan March 31, 2023 03:47
@ghost ghost assigned wangzelin007 Mar 31, 2023
@jiasli jiasli merged commit 16e7d0b into Azure:dev Mar 31, 2023
@jiasli jiasli deleted the disable-mariner-test branch March 31, 2023 07:49
avgale pushed a commit to avgale/azure-cli that referenced this pull request Aug 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Auto-Assign Auto assign by bot CI CI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants