Simplify release to single zip with all fabrication outputs

Creates ${PROJECT_NAME}_${VERSION}.zip containing all gerbers,
BOMs, images, placement files, 3D models, etc.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Tim Hadwen
2026-02-02 22:22:53 +10:00
parent 6894ca56c7
commit 3778a453e8

View File

@@ -392,15 +392,18 @@ upload_packages:
artifacts: true artifacts: true
script: script:
- apt-get update && apt-get -y install zip - apt-get update && apt-get -y install zip
- zip -r Fabrication/All.zip Fabrication/ - |
# Create single release zip with all fabrication outputs
RELEASE_ZIP="${PROJECT_NAME}_${VERSION}.zip"
zip -r "Fabrication/${RELEASE_ZIP}" Fabrication/
echo "Created release package: ${RELEASE_ZIP}"
- echo 'import urllib.request,sys,os;f=open(sys.argv[1],"rb");req=urllib.request.Request(sys.argv[2],data=f.read(),method="PUT");req.add_header("JOB-TOKEN",os.environ["CI_JOB_TOKEN"]);urllib.request.urlopen(req);print("Uploaded",sys.argv[1])' > /tmp/upload.py - echo 'import urllib.request,sys,os;f=open(sys.argv[1],"rb");req=urllib.request.Request(sys.argv[2],data=f.read(),method="PUT");req.add_header("JOB-TOKEN",os.environ["CI_JOB_TOKEN"]);urllib.request.urlopen(req);print("Uploaded",sys.argv[1])' > /tmp/upload.py
- | - |
for zipfile in $(find Fabrication/ -maxdepth 1 -name '*.zip'); do # Upload release package
basename=$(basename "$zipfile" .zip) RELEASE_ZIP="${PROJECT_NAME}_${VERSION}.zip"
url="${PACKAGE_REGISTRY_URL}/${VERSION}/${basename}-${VERSION}.zip" url="${PACKAGE_REGISTRY_URL}/${VERSION}/${RELEASE_ZIP}"
echo "Uploading: $zipfile to $url" echo "Uploading: Fabrication/${RELEASE_ZIP} to $url"
python3 /tmp/upload.py "$zipfile" "$url" python3 /tmp/upload.py "Fabrication/${RELEASE_ZIP}" "$url"
done
artifacts: artifacts:
when: always when: always
paths: paths: