name: Build Linux and Release mxPIC on: release: [published] jobs: build-and-release: name: Build Linux & Publish Release # This targets your Docker runner on the Synology NAS runs-on: ubuntu-latest steps: - name: Checkout Code uses: actions/checkout@v4 - name: Set up Python 3.10 uses: actions/setup-python@v5 with: python-version: '3.10' - name: Install Build Dependencies run: | python -m pip install --upgrade pip pip install build wheel mypy Cython setuptools - name: Run Auto-Builder (Compiles Linux C-extensions & Injects .pyi) # This generates the linux_x86_64.whl inside the dist/ folder run: python build_wheel.py - name: Export Technology Manifests run: python scripts/export_technology_manifests.py --dest exported_PDKs - name: Inject Prebuilt Windows Wheel # This copies your locally-built Windows wheel into the dist/ folder # so they sit side-by-side right before the release is published. run: | if [ -d "prebuilt_wheels" ]; then cp prebuilt_wheels/*.whl dist/ || true echo "✅ Windows wheel staged for release." else echo "⚠️ No prebuilt_wheels directory found." fi - name: Create Gitea Release uses: https://gitea.com/actions/release-action@main with: # This command scopes up everything currently sitting in the dist/ folder files: "dist/*.whl" api_key: ${{ secrets.GITEA_TOKEN }}