name: release on: push: branches: - main jobs: release: runs-on: ubuntu-latest env: GITEA_SERVER_URL: https://git.jc2009.com GITEA_REPOSITORY: client-commons/media-assets GITEA_SHA: ${{ github.sha }} steps: - name: Clone repository run: | set -e rm -rf repo git clone https://git.jc2009.com/client-commons/media-assets.git repo cd repo git rev-parse HEAD echo "Music files after clone:" find music -type f -name "*.mp3" -exec ls -lh {} \; echo "MP3 file headers:" find music -type f -name "*.mp3" -exec sh -c 'echo "---- $1"; head -c 80 "$1"; echo' _ {} \; - name: Show workspace working-directory: repo run: | pwd ls -la find . -maxdepth 2 -type f | sort | head -80 - name: Build stable zip working-directory: repo run: | set -e rm -rf dist mkdir -p dist/media-assets cp -R README.md dist/media-assets/ cp -R manifest.json dist/media-assets/ cp -R music dist/media-assets/ cp -R fonts dist/media-assets/ cp -R watermark dist/media-assets/ python3.12 - <<'PY' from pathlib import Path from zipfile import ZipFile, ZIP_DEFLATED root = Path("dist/media-assets") out = Path("dist/media-assets.zip") if out.exists(): out.unlink() with ZipFile(out, "w", ZIP_DEFLATED) as zf: for path in sorted(root.rglob("*")): if path.is_file(): zf.write(path, path.relative_to("dist")) print("created {} size={}".format(out, out.stat().st_size)) PY ls -lh dist/media-assets.zip - name: Publish stable release asset working-directory: repo env: GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }} run: | set -e python3.12 scripts/publish_gitea_release_asset.py \ --tag vlatest \ --title "media-assets latest" \ --file dist/media-assets.zip \ --asset-name media-assets.zip