gitlab/cerbero: Do not add tmp files to cerbero-deps tarball
authorNirbheek Chauhan <nirbheek@centricular.com>
Wed, 4 Mar 2020 00:07:12 +0000 (05:37 +0530)
committerNirbheek Chauhan <nirbheek.chauhan@gmail.com>
Wed, 4 Mar 2020 14:33:16 +0000 (14:33 +0000)
This is where the WINEPREFIX is now in Cerbero. This used to be
share/wine, but was moved to var/tmp/wine for clarity. It was causing
two problems:

1. The size of these generated files are ~1GB, which were ~500MB after
   tar.gz, and they were completely useless since they can just be
   regenerated by Wine the next time it's run. Let's not waste egress
   bandwidth.

2. Random build failures because wineserver and associated processes
   would not always exit before we started tarring up the prefix, then
   write to the directory on exit while tar was reading the directory
   causing `tar -czf` to fail:

```
$ tar -C ${CERBERO_HOME} -czf $CERBERO_DEPS build-tools build-tools.cache dist/${ARCH} ${ARCH}.cache
tar: build-tools/share/wine: file changed as we read it
Uploading artifacts...
manifest.xml: found 1 matching files
cerbero-build/logs: found 461 matching files
cerbero-build/cerbero-deps.log: found 1 matching files
cerbero-deps.tar.gz: found 1 matching files
Uploading artifacts to coordinator... ok            id=1807197 responseStatus=201 Created token=4_qFUP8z
ERROR: Job failed: exit code 1
```

gitlab/ci_template.yml

index 30c2b06..daea1e6 100644 (file)
@@ -556,7 +556,7 @@ build msys2 :
     - test "x${CERBERO_OVERRIDDEN_DIST_DIR}" != "x"
           && mkdir -p ${CERBERO_HOME}/dist/${ARCH}
           && rsync -aH ${CERBERO_OVERRIDDEN_DIST_DIR}/ ${CERBERO_HOME}/dist/${ARCH}
-    - tar -C ${CERBERO_HOME} -czf $CERBERO_DEPS
+    - tar -C ${CERBERO_HOME} --exclude=var/tmp -czf $CERBERO_DEPS
               build-tools build-tools.cache
               dist/${ARCH} ${ARCH}.cache
   only: