mendix / docker-mendix-buildpack

Build and Run Mendix in Docker
https://www.mendix.com
Apache License 2.0
81 stars 111 forks source link

Project won't build since Atlas 3 #155

Open megapearl opened 1 year ago

megapearl commented 1 year ago

Also posted issue on: https://forum.mendix.com/link/questions/119295 not getting any response. It's a new app (not upgraded from previous mendix version). Build in Mendix Studio Pro v9.19. App is running locally just fine, also no problems when creating 'Deployment Package' from within Mendix Studio. But docker container won't build.

Who can help me out?

root@dockers [ /mnt/homes/donald/Documents/Mendix ]# docker build --build-arg BUILD_PATH=Beer --build-arg ROOTFS_IMAGE=mendix/rootfs:ubi8 --build-arg BUILDER_ROOTFS_IMAGE=mendix/rootfs:bionic --build-arg CF_BUILDPACK=v4.30.2 --tag megapearl/beerapp:v2.1 .
Sending build context to Docker daemon  1.419GB
Step 1/39 : ARG ROOTFS_IMAGE=mendix/rootfs:ubi8
Step 2/39 : ARG BUILDER_ROOTFS_IMAGE=mendix/rootfs:bionic
Step 3/39 : FROM ${BUILDER_ROOTFS_IMAGE} AS builder
 ---> cf95ed7ffb1b
Step 4/39 : ARG BUILD_PATH=project
 ---> Using cache
 ---> fdb93a946a52
Step 5/39 : ARG DD_API_KEY
 ---> Using cache
 ---> 23f3191b881f
Step 6/39 : ARG CF_BUILDPACK=v4.30.2
 ---> Using cache
 ---> 9e8a3bffc158
Step 7/39 : ARG CF_BUILDPACK_URL=https://github.com/mendix/cf-mendix-buildpack/releases/download/${CF_BUILDPACK}/cf-mendix-buildpack.zip
 ---> Using cache
 ---> 172f1bf9afd7
Step 8/39 : ARG EXCLUDE_LOGFILTER=true
 ---> Using cache
 ---> 338caff9e115
Step 9/39 : ARG BLOBSTORE
 ---> Using cache
 ---> f9239628e0c0
Step 10/39 : ARG BUILDPACK_XTRACE
 ---> Using cache
 ---> 4620a4476087
Step 11/39 : ARG USER_UID=1001
 ---> Using cache
 ---> b4680e6ad632
Step 12/39 : RUN mkdir -p /opt/mendix/buildpack /opt/mendix/build &&    ln -s /root /home/vcap &&    echo "Downloading CF Buildpack from ${CF_BUILDPACK_URL}" &&    curl -fsSL ${CF_BUILDPACK_URL} -o /tmp/cf-mendix-buildpack.zip &&     python3 -m zipfile -e /tmp/cf-mendix-buildpack.zip /opt/mendix/buildpack/ &&    rm /tmp/cf-mendix-buildpack.zip &&    chown -R ${USER_UID}:0 /opt/mendix &&    chmod -R g=u /opt/mendix
 ---> Running in 49c594ff6721
Downloading CF Buildpack from https://github.com/mendix/cf-mendix-buildpack/releases/download/v4.30.2/cf-mendix-buildpack.zip
Removing intermediate container 49c594ff6721
 ---> 612d7ace6bed
Step 13/39 : COPY scripts/compilation scripts/git /opt/mendix/buildpack/
 ---> 6479bab3ce07
Step 14/39 : COPY $BUILD_PATH /opt/mendix/build
 ---> b1d1e0919f26
Step 15/39 : RUN chmod +rx /opt/mendix/buildpack/bin/bootstrap-python && /opt/mendix/buildpack/bin/bootstrap-python /opt/mendix/buildpack /tmp/buildcache
 ---> Running in 2407e89fb1cf
 ---> Check if Python dependencies need to be cached...
 ---> Invalidating Python wheels cache...
 ---> Copying bundled Python dependencies to cache...
 ---> Bootstrapping pip...
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
 ---> Using bundled Python dependencies
 ---> Installing Python dependencies to /opt/mendix/buildpack/lib/python3.6/site-packages...
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
 ---> Finished installing Python dependencies
Removing intermediate container 2407e89fb1cf
 ---> dec6ed589993
Step 16/39 : ENV PYTHONPATH "$PYTHONPATH:/opt/mendix/buildpack/lib/:/opt/mendix/buildpack/:/opt/mendix/buildpack/lib/python3.6/site-packages/"
 ---> Running in c77c204af4fe
Removing intermediate container c77c204af4fe
 ---> 29215035d16a
Step 17/39 : ENV NGINX_CUSTOM_BIN_PATH=/usr/sbin/nginx
 ---> Running in 1fbed56c3fc0
Removing intermediate container 1fbed56c3fc0
 ---> f371aed8ad61
Step 18/39 : RUN mkdir -p /tmp/buildcache /tmp/cf-deps /var/mendix/build /var/mendix/build/.local &&    chmod +rx /opt/mendix/buildpack/compilation /opt/mendix/buildpack/git /opt/mendix/buildpack/buildpack/stage.py &&    cd /opt/mendix/buildpack &&    ./compilation /opt/mendix/build /tmp/buildcache /tmp/cf-deps 0 &&    rm -fr /tmp/buildcache /tmp/javasdk /tmp/opt /tmp/downloads /opt/mendix/buildpack/compilation /opt/mendix/buildpack/git &&    ln -s /opt/mendix/.java /opt/mendix/build &&    chown -R ${USER_UID}:0 /opt/mendix /var/mendix &&    chmod -R g=u /opt/mendix /var/mendix
 ---> Running in c2eec0ac946c
INFO: Mendix project compilation phase...
INFO: Preflight check on Mendix version [9.18.0.53394] and stack [None]...
INFO: Preflight check completed
INFO: Building from source...
INFO: Selecting Mono Runtime: 5

   __  __      ____        _ _     _
  |  \/  |    |  _ \      (_) |   | |
  | \  / |_  _| |_) |_   _ _| | __| |
  | |\/| \ \/ /  _ <| | | | | |/ _` |
  | |  | |>  <| |_) | |_| | | | (_| |
  |_|  |_/_/\_\____/ \__,_|_|_|\__,_|

   v9.18.0.53394

Starting build for Mendix Project file: /opt/mendix/build/Beer.mpr
Using the following options:
 * Build target: Package
 * Deployment package file: /tmp/model.mda
Reading project file...
Building project...
Executing step 'Synchronize with file system'
 * Synchronizing with file system...
Executing step 'Initialize'
 * Preparing deployment...
Executing step 'Check prerequisites'
 * Checking for errors...
Executing step 'Clean deployment directory'
 * Cleaning data broker files...
 * Cleaning deployment directory...
 * Cleaning web deployment directory...
 * Cleaning source web deployment directory...
Executing step 'Perform model transformations'
 * Applying model transformations...
Executing step 'Generate deployment files'
 * Writing files...
Executing step 'Prepare deployment'
 * Cleaning web deployment directory...
Executing step 'Build deployment structure'
 * Generating data broker files...
 * Compiling theme files...
 * Exporting a theme...
Executing step 'Clean up'
 * Cleaning up...
**ERROR: An error occurred while compiling Theme files
Theme compilation took longer than the allowed time of 30000ms.
Writing list of app errors...
 * App errors written to file '/tmp/builderrors.json'
**BUILD FAILED
ERROR: MxBuild returned errors: {"errors": [{"message": "An error occurred while compiling Theme files", "details": "Theme compilation took longer than the allowed time of 30000ms."}], "problems": []}
ERROR: Command '['/tmp/opt/mono-5.20.1.27/bin/mono', '--config', '/tmp/opt/mono-5.20.1.27/etc/mono/config', '/opt/mendix/build/.local/mxbuild/modeler/mxbuild.exe', '--target=package', '--output=/tmp/model.mda', '--java-home=/opt/mendix/build/.local/usr/lib/jvm/Adoptium-jdk-11.0.15-Adoptium-x64', '--java-exe-path=/opt/mendix/build/.local/usr/lib/jvm/Adoptium-jdk-11.0.15-Adoptium-x64/bin/java', '--write-errors=/tmp/builderrors.json', '/opt/mendix/build/Beer.mpr']' returned non-zero exit status 3.
Traceback (most recent call last):
  File "./compilation", line 67, in <module>
    exit_code = call_buildpack_compilation()
  File "./compilation", line 40, in call_buildpack_compilation
    return subprocess.check_call(["/opt/mendix/buildpack/buildpack/stage.py", BUILD_PATH, CACHE_PATH, DEPS_DIR, DEPS_IDX])
  File "/usr/lib/python3.6/subprocess.py", line 311, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/opt/mendix/buildpack/buildpack/stage.py', '/opt/mendix/build', '/tmp/buildcache', '/tmp/cf-deps', '0']' returned non-zero exit status 1.
The command '/bin/sh -c mkdir -p /tmp/buildcache /tmp/cf-deps /var/mendix/build /var/mendix/build/.local &&    chmod +rx /opt/mendix/buildpack/compilation /opt/mendix/buildpack/git /opt/mendix/buildpack/buildpack/stage.py &&    cd /opt/mendix/buildpack &&    ./compilation /opt/mendix/build /tmp/buildcache /tmp/cf-deps 0 &&    rm -fr /tmp/buildcache /tmp/javasdk /tmp/opt /tmp/downloads /opt/mendix/buildpack/compilation /opt/mendix/buildpack/git &&    ln -s /opt/mendix/.java /opt/mendix/build &&    chown -R ${USER_UID}:0 /opt/mendix /var/mendix &&    chmod -R g=u /opt/mendix /var/mendix' returned a non-zero code: 1****
root@dockers [ /mnt/homes/donald/Documents/Mendix ]#

How to debug?

Best Regards, Donald.

danniarreza commented 1 year ago

I think I'm experiencing the same kind of error here, running docker on ubuntu-virtualbox. Is there any solution for this?

megapearl commented 1 year ago

Instead of pointing to the source directory I now 'make a deployment package' from mendix and copied that one over to the linux server, unpack it and use the unpacked directory as BUILD_PATH and that one is building fine.

danniarreza commented 1 year ago

Wow, that actually does it. Hugely appreciated good sir! @megapearl