az pipelines runs artifact download failed with error code -4 on Mac(apple M4 pro)
- Dominant language
- Python
- Stars
- 4.6k
- Forks
- 3.5k
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 60
Description
### Describe the bug
When trying to run command `az pipelines runs artifact download --debug --run-id 1234 --artifact-name artifact --path /project/downloads/artifactName` inside podman container with Ubuntu 24.04 as a base image, the command fails with error code -4.
### Related command
`az pipelines runs artifact download`
### Errors
INFO: cli.azext_devops.dev.common.artifacttool: Downloaded 0.0 MB out of 986.3 MB (0%).
DEBUG: cli.azext_devops.dev.common.exception_handler: handling generic error
DEBUG: cli.azure.cli.core.azclierror: Traceback (most recent call last):
File "/opt/az/lib/python3.11/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/az/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 664, in execute
raise ex
File "/opt/az/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 731, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/az/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 723, in _run_job
return cmd_copy.exception_handler(ex)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.azure/cliextensions/azure-devops/azext_devops/dev/common/exception_handler.py", line 31, in azure_devops_exception_handler
reraise(*sys.exc_info())
File "/opt/az/lib/python3.11/site-packages/six.py", line 719, in reraise
raise value
File "/opt/az/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 701, in _run_job
result = cmd_copy(params)
^^^^^^^^^^^^^^^^
File "/opt/az/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 334, in __call__
return self.handler(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/az/lib/python3.11/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
return op(**command_args)
^^^^^^^^^^^^^^^^^^
File "/home/user/.azure/cliextensions/azure-devops/azext_devops/dev/pipelines/runs_artifacts.py", line 27, in run_artifact_download
return artifact_tool.download_pipeline_artifact(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.azure/cliextensions/azure-devops/azext_devops/dev/common/artifacttool.py", line 25, in download_pipeline_artifact
return self.run_artifacttool(organization, args, "Downloading")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.azure/cliextensions/azure-devops/azext_devops/dev/common/artifacttool.py", line 67, in run_artifacttool
proc = self._tool_invoker.run(command_args, new_env, initial_progress_message, _process_stderr)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.azure/cliextensions/azure-devops/azext_devops/dev/common/external_tool.py", line 79, in run
return self.wait()
^^^^^^^^^^^
File "/home/user/.azure/cliextensions/azure-devops/azext_devops/dev/common/external_tool.py", line 51, in wait
### Issue script & Debug output
above error
### Expected behavior
`az pipelines runs artifact download` succeeds and pipeline artifact is downloaded
### Environment Summary
azure-cli 2.87.0
core 2.87.0
telemetry 1.1.0
Extensions:
azure-devops 1.0.1
Dependencies:
msal 1.36.0
azure-mgmt-resource 24.0.0
Python location '/opt/az/bin/python3'
Config directory '/home/user/.azure'
Extensions directory '/home/user/.azure/cliextensions'
Python (Linux) 3.13.13 (main, May 26 2026, 06:39:46) [GCC 13.3.0]
### Additional context
After inspecting debug logs we noticed that azure cli is downloading the following version of artifacttool - **ArtifactTool_linux-arm64_0.2.550**,
so we tried to use the artifacttool directly like this:
**~/.azure/azuredevops/cli/tools/artifacttool/ArtifactTool_linux-arm64_0.2.550/artifacttool pipelineartifact download --service https://dev.azure.com/orgName --patvar AZURE_DEVOPS_EXT_ARTIFACTTOOL_PATVAR --project project-uuid --pipeline-id 1234 --artifact-name package --path /tmp/package**
**Output:**
`{"@t":"2026-06-09T08:33:12.3198805Z","@m":"Getting artifact 'package' from pipeline '1234' from project 'project-uuid' in organization 'https://dev.azure.com/...'}
{"@t":"2026-06-09T08:33:13.5206499Z","@m":"The manifest ID for artifact 'package' is 'xyz'.","@i":"xxx","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:13.520Z"}
{"@t":"2026-06-09T08:33:17.0355325Z","@m":"ApplicationInsightsTelemetrySender will correlate events with X-TFS-Session session-id","@i":"abc","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:17.035Z"}
{"@t":"2026-06-09T08:33:17.0357646Z","@m":"Downloading artifact 'package' with manifest ID 'xyz' to path '/tmp/package'.","@i":"xyz","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:17.035Z"}
{"@t":"2026-06-09T08:33:17.0369744Z","@m":"DedupManifestArtifactClient will correlate http requests with X-TFS-Session session-id","@i":"123","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:17.036Z"}
{"@t":"2026-06-09T08:33:17.3292673Z","@m":"Downloaded 0.0 MB out of 986.3 MB (0%).","@i":"123a","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:17.329Z"}
{"@t":"2026-06-09T08:33:22.3325414Z","@m":"Downloaded 0.0 MB out of 986.3 MB (0%).","@i":"123a","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:22.332Z"}
{"@t":"2026-06-09T08:33:27.3347752Z","@m":"Downloaded 0.0 MB out of 986.3 MB (0%).","@i":"123a","SourceContext":"ArtifactTool.Commands.PipelineArtifactDownloadCommand","UtcTimestamp":"2026-06-09 08:33:27.334Z"}
Illegal instruction (core dumped)`
Contributor guide
Assessment
This issue has not been assessed yet.