Make fastzip StageDirectory configurable
Our jobs are running inside a VM with 1GiB memory and therefore a 512MiB /tmp
tmpfs.
The fastzip archiver is hard coded to use the default directory for temporary files (On Unix systems, it returns $TMPDIR if non-empty, else /tmp.
). Unfortunately 512MiB isn't enough for the amount of artifacts (~1,6GiB) we have and it is failing with:
ERROR: Uploading artifacts as "archive" to coordinator... error error=couldn't execute POST against https://gitlab.archlinux.org/api/v4/jobs/33600/artifacts?artifact_format=zip&artifact_type=archive: Post "https://gitlab.archlinux.org/api/v4/jobs/33600/artifacts?artifact_format=zip&artifact_type=archive": write /tmp/fastzip2377467977/fastzip_03: no space left on device id=33600 token=6dsJVNKU
full log here
Our workaround for the time being, is setting $TMPDIR
to /var/tmp
for the upload_artifacts_on_success
and upload_artifacts_on_failure
substages in our custom executor. It is a bit hacky so a cleaner way to set the StageDirectory
would be appreciated.