Skip to content

v0.0.1

v0.0.1 #1

name: Pasarguard Standalone Release
on:
release:
types:
- published
workflow_dispatch:
jobs:
build-bundle:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Fetch bundled panel env template
run: |
set -euo pipefail
mkdir -p dist/pasarguard-assets
curl -fsSL https://raw.githubusercontent.com/pasarguard/panel/main/.env.example -o dist/pasarguard-assets/.env.example
curl -fsSL https://raw.githubusercontent.com/pasarguard/panel/main/docker-compose.yml -o dist/pasarguard-assets/pasarguard-sqlite.yml
- name: Build standalone bundle
run: |
set -euo pipefail
BUNDLE_ROOT="dist/pasarguard-standalone"
mkdir -p "$BUNDLE_ROOT/lib" "$BUNDLE_ROOT/iran-sanction" "$BUNDLE_ROOT/docker-compose" "$BUNDLE_ROOT/pasarguard-assets" "$BUNDLE_ROOT/pg-node-assets"
cp pasarguard.sh "$BUNDLE_ROOT/"
cp pg-node.sh "$BUNDLE_ROOT/"
cp iran-sanction/pasarguard-standalone.sh "$BUNDLE_ROOT/iran-sanction/"
cp iran-sanction/pg-node-standalone.sh "$BUNDLE_ROOT/iran-sanction/"
cp iran-sanction/mirror.sh "$BUNDLE_ROOT/iran-sanction/"
cp lib/common.sh "$BUNDLE_ROOT/lib/"
cp lib/system.sh "$BUNDLE_ROOT/lib/"
cp lib/docker.sh "$BUNDLE_ROOT/lib/"
cp lib/github.sh "$BUNDLE_ROOT/lib/"
cp lib/env.sh "$BUNDLE_ROOT/lib/"
cp lib/pasarguard-backup.sh "$BUNDLE_ROOT/lib/"
cp lib/pasarguard-restore.sh "$BUNDLE_ROOT/lib/"
cp docker-compose/pasarguard-mysql.yml "$BUNDLE_ROOT/docker-compose/"
cp docker-compose/pasarguard-mariadb.yml "$BUNDLE_ROOT/docker-compose/"
cp docker-compose/pasarguard-postgresql.yml "$BUNDLE_ROOT/docker-compose/"
cp docker-compose/pasarguard-timescaledb.yml "$BUNDLE_ROOT/docker-compose/"
cp docker-compose/node.yml "$BUNDLE_ROOT/docker-compose/"
cp dist/pasarguard-assets/pasarguard-sqlite.yml "$BUNDLE_ROOT/docker-compose/pasarguard-sqlite.yml"
cp pg-node-assets/.env.example "$BUNDLE_ROOT/pg-node-assets/"
cp dist/pasarguard-assets/.env.example "$BUNDLE_ROOT/pasarguard-assets/.env.example"
tar -czf dist/pasarguard-standalone.tar.gz -C dist pasarguard-standalone
- name: Upload workflow artifact
uses: actions/upload-artifact@v4
with:
name: pasarguard-standalone
path: dist/pasarguard-standalone.tar.gz
- name: Upload release asset
if: github.event_name == 'release'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release upload "${{ github.event.release.tag_name }}" dist/pasarguard-standalone.tar.gz --clobber