Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-25167

The Docker test framework cannot build the office image on ARM64

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Major
    • None
    • 17.10.13
    • Test Framework
    • None
    • Unknown

    Description

      Functional tests using @UITest(office = true) (e.g. the ones of xwiki-platform-office-test-docker) cannot start on an ARM64 machine (e.g. a Mac with an Apple Silicon CPU), while the other Docker-based tests work there.

      The Docker test framework builds a servlet container image embedding LibreOffice, and ServletContainerExecutor always downloads the x86-64 LibreOffice deb packages (deb/x86_64/LibreOffice_<version>_Linux_x86-64_deb.tar.gz). On an ARM64 Docker host the base servlet image is ARM64, so installing them fails and the tests error out in beforeAll:

      Could not build image: The command '/bin/sh -c cd `ls -d /tmp/LibreOffice_${LIBREOFFICE_VERSION}*_Linux_x86-64_deb/DEBS` && apt-get install --no-install-recommends ./*.deb && ln -fs `ls -d /opt/libreoffice*` /opt/libreoffice' returned a non-zero code: 100
      

      with, in the image build output:

      dpkg: error processing archive /tmp/apt-dpkg-install-3Rh8sJ/00-libreoffice26.2-ure_26.2.6.3-3_amd64.deb (--unpack):
       package architecture (amd64) does not match system (arm64)
      

      LibreOffice also publishes aarch64 deb packages (deb/aarch64/LibreOffice_<version>_Linux_aarch64_deb.tar.gz): the image should use the packages matching the architecture of the Docker host. An image built with them was verified to work (the office functional tests pass on an Apple Silicon Mac).

      Attachments

        Issue Links

          Activity

            People

              vmassol Vincent Massol
              vmassol Vincent Massol
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: