BinaryBuilder project works on Travis CI, but fails on GitLab CI

Any idea, why the following (Julia 1.0) BinaryBuilder project, GitHub - IHPSystems/pylon_julia_wrapper at feature/travis_ci_2021, builds (using BB) just fine on Travis CI (in 2019 and today in Aug. 2021), but has trouble building on GitLab CI?

The project,

BINARYBUILDER_RUNNER=docker BINARYBUILDER_AUTOMATIC_APPLE=true julia --color=yes build_tarballs.jl --verbose
  • but fails to build tarballs on (a private) GitLab CI running BB in a julia-1.0 container (Julia 1.0 on Debian - on Kubernetes, where the GitLab CI runner is running in privileged mode - it can run docker-in-docker etc.).

Here is the GitLab CI YAML - just a copy of the working Travis CI YAML, except from not defining BINARYBUILDER_DOWNLOADS_CACHE=downloads:

.julia:1.0:
  image: julia:1.0-buster

build:1.0:
  extends:
    - .julia:1.0
  variables:
    BINARYBUILDER_AUTOMATIC_APPLE: "true"
  before_script:
    - julia --project -e 'using Pkg; pkg"add BinaryProvider@0.5.3"; pkg"add BinaryBuilder@0.1.4"; Pkg.build()'
  script:
    - julia --color=yes --project build_tarballs.jl --verbose
    - ls -la products || true

The failure on the GitLab CI runner seems to stem from not being able to write to /workspace/destdir - even a touch $prefix/lib/libfoo.txt in the BB build script fails:

touch: /workspace/destdir/lib/libfoo.txt: Permission denied

I have experimented with setting

  • BINARYBUILDER_RUNNER=privileged,
  • BINARYBUILDER_RUNNER=userns,
  • just setting BINARYBUILDER_USE_SQUASHFS=true
  • and combining BINARYBUILDER_RUNNER=privileged with BINARYBUILDER_USE_SQUASHFS=true (it seems SquashFS images are used on Travis (without setting any env. variables)

Any ideas? What is different/special with Travis?

My last resort (which may come very soon) is trying to upgrade to Julia 1.3+

No

No clue

Note that BinaryBuilder v0.1.4 is 2.5-year old and the package has been largely rewritten since then. The workflow now is completely different. It’s quite unlikely you’ll get any help for that branch of development.

OK - thanks for the quick reply.

Time to get the dust off this project and upgrade… :slight_smile: