diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml new file mode 100644 index 000000000..b3d4cd3f6 --- /dev/null +++ b/.github/workflows/package.yml @@ -0,0 +1,60 @@ +name: Publish prebuild + +on: + push: + branches: + - stable + paths: + - packages/** + - locales/** + release: + types: [published] + workflow_dispatch: + +jobs: + push_to_registry: + name: Push Docker image to GHCR + runs-on: ubuntu-latest + strategy: + matrix: + node-version: [20.x] + python-version: [3.11.x] + if: github.repository == 'transfem-org/Sharkey' + permissions: + contents: read + packages: write + + steps: + - name: Check out the repo + uses: actions/checkout@v4.1.0 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + + - name: Setup Python + uses: actions/setup-python@v4.7.1 + with: + python-version: ${{ matrix.python-version }} + + - name: Cache APT Packages + uses: awalsh128/cache-apt-pkgs-action@v1.3.0 + with: + packages: "build-essential uuid-dev libx11-dev libxkbfile-dev execstack libgconf-2-4 libsecret-1-dev" + + - name: Cache node modules + uses: actions/cache@v3 + with: + path: ~/.npm + key: v1-npm-deps-${{ hashFiles('**/package-lock.json') }} + restore-keys: v1-npm-deps- + + - name: Build + run: | + corepack enable pnpm@latest + pnpm install + npm install -g pkg + pnpm run build + cd packages/backend + pkg --public ./built/boot/entry.js