We are using Bitbucket pipelines to build and deploy our Javascript application (angular). We use the sonarcloud-scan and sonarcloud-quality-gate pipes to scan our project on every build.
This worked for us until we updated our pipelines to use bitbucket cloud arm64 images (runtime.cloud.arch: arm) and these pipes started failing because of incompatible architecture.
Am I missing something (some config etc.)? Or these pipes don’t support arm64? Should I expect an update to those pipes in the future if they don’t support?
The details are as follows:
- ALM used Bitbucket Cloud
- CI system used Bitbucket Cloud
- Languages of the repository JavaScript (Angular)
- Error observed
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
exec /usr/local/bin/python3: exec format error
- Steps to reproduce
Have either of the following in your bitbucket-pipelines.yml file and run a pipeline on bitbucket with arch: arm
- pipe: sonarsource/sonarcloud-scan:4.1.0
- pipe: sonarsource/sonarcloud-quality-gate:0.2.0
So example bitbuket-pipelines.yml would look something like follows:
pipelines:
default:
- step:
name: Build
caches:
- sonar
- node
runtime:
cloud:
arch: arm
script:
- npm install
- ng build --configuration="staging"
- npm run lint
- pipe: sonarsource/sonarcloud-scan:4.1.0
- pipe: sonarsource/sonarcloud-quality-gate:0.2.0
- Potential workaround: Only workaround is not using arm image in the build.