Sharkey/.github/workflows/package.yml
dependabot[bot] 7d7c1d4db5 chore(deps): bump actions/setup-python from 4.8.0 to 5.0.0
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.8.0 to 5.0.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4.8.0...v5.0.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-06 14:14:37 +01:00

74 lines
2.1 KiB
YAML

name: Publish prebuild
on:
push:
branches:
- stable
release:
types: [published]
workflow_dispatch:
jobs:
build_binaries:
name: Build & ship binaries
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.1
with:
lfs: true
submodules: 'recursive'
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Setup Python
uses: actions/setup-python@v5.0.0
with:
python-version: ${{ matrix.python-version }}
- name: Cache APT Packages
uses: awalsh128/cache-apt-pkgs-action@v1.3.1
with:
packages: "build-essential binfmt-support qemu-user-static ffmpeg tini curl libjemalloc-dev libjemalloc2 uuid-dev libx11-dev libxkbfile-dev execstack libgconf-2-4 libsecret-1-dev"
- name: Set pnpm store path
run: echo "PNPM_STORE_PATH=$(pnpm store path)" >> $GITHUB_ENV
- name: Cache node modules
uses: actions/cache@v3
with:
path: ${{ env.PNPM_STORE_PATH }}
key: pnpm-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
pnpm-${{ runner.os }}-
- name: Build
run: |
corepack enable
corepack prepare pnpm@latest --activate
CI=true pnpm install
CI=true pnpm run build
rm -rdf packages/backend/node_modules
rm -rdf packages/frontend/node_modules
rm -rdf packages/megalodon/node_modules
rm -rdf packages/misskey-js/node_modules
rm -rdf node_modules
CI=true pnpm --prod --no-optional install
tar -czf /tmp/workspace.tar.gz .
- name: Upload linux x64
uses: actions/upload-artifact@v3.1.3
with:
name: sharkey-linux-x64
path: /tmp/workspace.tar.gz