• Our product teams collect and evaluate feedback from a number of different sources. To learn more about how we use customer feedback in the planning process, check out our new feature policy.

      Hey team,

      We have had a customer request 32-bit support for image/container within Bitbucket Pipelines.

      Currently, the lack of support inhibits building processes that utilize Wine in the environment. Specifically, this effects Electron.js applications because they rely on Wine to build an executable. 

      Cheers,

      Ben

            [BCLOUD-22111] 32-bit image/container support for Bitbucket Pipelines

            JBellero added a comment - - edited

            57b7f67f3625 Is there any update on this. We currently have to use another CI/CD tool but would much rather have pipelines working as close to our hosted repo as possible. Meaning since Bitbucket hosts the code and we would rather the pipeline for testing and building docker artifacts remain in Bitbucket. This is currently 100% blocked by what's mentioned in this ticket. Has any progress or analysis started on this?

            Right now we have to use two different tools to do what Bitbucket Pipelines could do in 1. Gitlab CI/CD does not have this issue but I would hate to have to port over because we use Jira connections as well. However, this has been dangling for quite a long time now and we have to make a decision if nothing is going on here.

            JBellero added a comment - - edited 57b7f67f3625 Is there any update on this. We currently have to use another CI/CD tool but would much rather have pipelines working as close to our hosted repo as possible. Meaning since Bitbucket hosts the code and we would rather the pipeline for testing and building docker artifacts remain in Bitbucket. This is currently 100% blocked by what's mentioned in this ticket. Has any progress or analysis started on this? Right now we have to use two different tools to do what Bitbucket Pipelines could do in 1. Gitlab CI/CD does not have this issue but I would hate to have to port over because we use Jira connections as well. However, this has been dangling for quite a long time now and we have to make a decision if nothing is going on here.

            Hello, I would also like to add that this prevents using wine as a way to cross-compile python applications developed in linux into windows using pyinstaller.

            There is a docker image that provides this functionality however it fails due lack of 32bit support.

            Leo.Herszenhaut added a comment - Hello, I would also like to add that this prevents using wine as a way to cross-compile python applications developed in linux into windows using pyinstaller. There is a docker image that provides this functionality however it fails due lack of 32bit support.

            JBellero added a comment - - edited

            Below are some logs for the pipeline that tries to use Wine to build an Win *.exe within a pipeline. Wine is in fact installed in the source container however it was found that it cannot find support for the libs without 32bit compatability.

            Total bundling time: 33.694s
            $ electron-builder build --config electron-builder.config.js --linux --windows -p always
              • electron-builder  version=22.14.13 os=5.10.101
              • loaded configuration  file=/opt/atlassian/pipelines/agent/build/electron-builder.config.js
              • packaging       platform=linux arch=x64 electron=16.0.8 appOutDir=dist/linux-unpacked
              • downloading     url=https://github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-linux-x64.zip size=126 MB parts=8
              • downloaded      url=https://github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-linux-x64.zip duration=1.366s
              • building        target=AppImage arch=x64 file=dist/PushPass-22.3.30-1648600889203.AppImage
              • packaging       platform=win32 arch=x64 electron=16.0.8 appOutDir=dist/win-unpacked
              • downloading     url=https://github.com/electron-userland/electron-builder-binaries/releases/download/appimage-12.0.1/appimage-12.0.1.7z size=1.6 MB parts=1
              • downloaded      url=https://github.com/electron-userland/electron-builder-binaries/releases/download/appimage-12.0.1/appimage-12.0.1.7z duration=640ms
              • downloading     url=https://github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-win32-x64.zip size=85 MB parts=8
              • downloaded      url=https://github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-win32-x64.zip duration=3.543s
              • downloading     url=https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-2.6.0.7z size=5.6 MB parts=1
              • downloaded      url=https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-2.6.0.7z duration=1.119s
              • publishing      publisher=Bitbucket (owner: {{REDACTED}}, slug: {{REDACTED}}, channel: latest)
              • uploading       file={{REDACTED}}-22.3.30-1648600889203.AppImage provider=bitbucket
              ⨯ wine is required, please see https://electron.build/multi-platform-build#linux  
              ⨯ /opt/atlassian/pipelines/agent/build/node_modules/app-builder-bin/linux/x64/app-builder exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE  failedTask=build stackTrace=Error: /opt/atlassian/pipelines/agent/build/node_modules/app-builder-bin/linux/x64/app-builder exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE
                at ChildProcess.<anonymous> (/opt/atlassian/pipelines/agent/build/node_modules/builder-util/src/util.ts:250:14)
                at Object.onceWrapper (events.js:483:26)
                at ChildProcess.emit (events.js:376:20)
                at maybeClose (internal/child_process.js:1055:16)
                at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
            From previous event:
                at processImmediate (internal/timers.js:462:21)
            From previous event:
                at WinPackager.signApp (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/winPackager.ts:376:27)
                at WinPackager.doSignAfterPack (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/platformPackager.ts:327:16)
                at WinPackager.doPack (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/platformPackager.ts:312:7)
                at WinPackager.pack (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/platformPackager.ts:136:5)
                at Packager.doBuild (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/packager.ts:441:9)
                at Object.executeFinally (/opt/atlassian/pipelines/agent/build/node_modules/builder-util/src/promise.ts:12:14)
                at Packager._build (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/packager.ts:376:31)
                at Packager.build (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/packager.ts:337:12)
                at Object.executeFinally (/opt/atlassian/pipelines/agent/build/node_modules/builder-util/src/promise.ts:12:14)
            error Command failed with exit code 1.
            info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

            JBellero added a comment - - edited Below are some logs for the pipeline that tries to use Wine to build an Win *.exe within a pipeline. Wine is in fact installed in the source container however it was found that it cannot find support for the libs without 32bit compatability. Total bundling time: 33.694s $ electron-builder build --config electron-builder.config.js --linux --windows -p always   • electron-builder  version=22.14.13 os=5.10.101   • loaded configuration  file=/opt/atlassian/pipelines/agent/build/electron-builder.config.js   • packaging       platform=linux arch=x64 electron=16.0.8 appOutDir=dist/linux-unpacked   • downloading     url=https: //github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-linux-x64.zip size=126 MB parts=8   • downloaded      url=https: //github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-linux-x64.zip duration=1.366s   • building        target=AppImage arch=x64 file=dist/PushPass-22.3.30-1648600889203.AppImage   • packaging       platform=win32 arch=x64 electron=16.0.8 appOutDir=dist/win-unpacked   • downloading     url=https: //github.com/electron-userland/electron-builder-binaries/releases/download/appimage-12.0.1/appimage-12.0.1.7z size=1.6 MB parts=1   • downloaded      url=https: //github.com/electron-userland/electron-builder-binaries/releases/download/appimage-12.0.1/appimage-12.0.1.7z duration=640ms   • downloading     url=https: //github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-win32-x64.zip size=85 MB parts=8   • downloaded      url=https: //github.com/electron/electron/releases/download/v16.0.8/electron-v16.0.8-win32-x64.zip duration=3.543s   • downloading     url=https: //github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-2.6.0.7z size=5.6 MB parts=1   • downloaded      url=https: //github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-2.6.0.7z duration=1.119s • publishing      publisher=Bitbucket (owner: {{REDACTED}}, slug: {{REDACTED}}, channel: latest)   • uploading       file={{REDACTED}}-22.3.30-1648600889203.AppImage provider=bitbucket   ⨯ wine is required, please see https: //electron.build/multi-platform-build#linux     ⨯ /opt/atlassian/pipelines/agent/build/node_modules/app-builder-bin/linux/x64/app-builder exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE  failedTask=build stackTrace=Error: /opt/atlassian/pipelines/agent/build/node_modules/app-builder-bin/linux/x64/app-builder exited with code ERR_ELECTRON_BUILDER_CANNOT_EXECUTE     at ChildProcess.<anonymous> (/opt/atlassian/pipelines/agent/build/node_modules/builder-util/src/util.ts:250:14)     at Object .onceWrapper (events.js:483:26)     at ChildProcess.emit (events.js:376:20)     at maybeClose (internal/child_process.js:1055:16)     at Process .ChildProcess._handle.onexit (internal/child_process.js:288:5) From previous event:     at processImmediate (internal/timers.js:462:21) From previous event:     at WinPackager.signApp (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/winPackager.ts:376:27)     at WinPackager.doSignAfterPack (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/platformPackager.ts:327:16)     at WinPackager.doPack (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/platformPackager.ts:312:7)     at WinPackager.pack (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/platformPackager.ts:136:5)     at Packager.doBuild (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/packager.ts:441:9)     at Object .executeFinally (/opt/atlassian/pipelines/agent/build/node_modules/builder-util/src/promise.ts:12:14)     at Packager._build (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/packager.ts:376:31)     at Packager.build (/opt/atlassian/pipelines/agent/build/node_modules/app-builder-lib/src/packager.ts:337:12)     at Object .executeFinally (/opt/atlassian/pipelines/agent/build/node_modules/builder-util/src/promise.ts:12:14) error Command failed with exit code 1. info Visit https: //yarnpkg.com/en/docs/cli/run for documentation about this command.

              Unassigned Unassigned
              57b7f67f3625 Ben
              Votes:
              17 Vote for this issue
              Watchers:
              10 Start watching this issue

                Created:
                Updated: