mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-05-28 13:16:34 +08:00
- Include assets for plugins (for ROLLUP_PLUGIN_COMPILER=1 only) - Include compressed assets, with highest gz/br compression ratios - Update core to use the new bundle format, and the new compressed files
69 lines
2.3 KiB
YAML
Vendored
69 lines
2.3 KiB
YAML
Vendored
name: Publish Assets
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- stable
|
|
- release/*
|
|
- precompile-asset-improvements
|
|
tags:
|
|
- beta
|
|
- v*
|
|
|
|
concurrency:
|
|
group: publish-assets-${{ format('{0}-{1}', github.run_number, github.job) }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
publish-assets:
|
|
if: github.repository == 'discourse/discourse'
|
|
runs-on: 'cdck-linux-8-core'
|
|
container: discourse/discourse_test:release
|
|
timeout-minutes: 30
|
|
|
|
steps:
|
|
- name: Install gh cli
|
|
run: |
|
|
# https://github.com/cli/cli/blob/trunk/docs/install_linux.md#debian-ubuntu-linux-raspberry-pi-os-apt
|
|
(type -p wget >/dev/null || (sudo apt update && sudo apt install wget -y)) \
|
|
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
|
|
&& out=$(mktemp) && wget -nv -O$out https://cli.github.com/packages/githubcli-archive-keyring.gpg \
|
|
&& cat $out | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
|
|
&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
|
|
&& sudo mkdir -p -m 755 /etc/apt/sources.list.d \
|
|
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
|
|
&& sudo apt update \
|
|
&& sudo apt install gh -y
|
|
- name: Set working directory owner
|
|
run: chown root:root .
|
|
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 1
|
|
|
|
- name: Setup Git
|
|
run: |
|
|
git config --global user.email "ci@ci.invalid"
|
|
git config --global user.name "Discourse CI"
|
|
|
|
- name: Symlink vendor/bundle from image
|
|
run: |
|
|
ln -s /var/www/discourse/vendor/bundle vendor/bundle
|
|
|
|
- name: Setup gems
|
|
run: |
|
|
bundle config --local path vendor/bundle
|
|
bundle config --local deployment true
|
|
bundle config --local without development
|
|
bundle install --jobs $(($(nproc) - 1))
|
|
bundle clean
|
|
|
|
- name: pnpm install
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: build and release assets
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.DISCOURSE_ASSETS_RELEASE_TOKEN }}
|
|
run: |
|
|
script/publish_built_assets.rb
|