Provide a channel header menu action and /cleanup-channel slash command so system administrators can remove all messages from a channel, with admin checks enforced on both the web app and server. Configure CI and release workflows for the Forgejo runner and signed plugin bundles. Co-authored-by: Cursor <cursoragent@cursor.com>
49 lines
1.2 KiB
YAML
49 lines
1.2 KiB
YAML
name: release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v*"
|
|
|
|
jobs:
|
|
release:
|
|
runs-on: docker
|
|
container: git.nakama.town/fmartingr/ci-images/ci-base:1.0.0
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- uses: actions/setup-go@v6
|
|
with:
|
|
go-version-file: go.mod
|
|
|
|
- uses: actions/setup-bun@v2
|
|
with:
|
|
bun-version: latest
|
|
|
|
- name: Build plugin
|
|
run: make dist
|
|
|
|
- name: Sign plugin bundle
|
|
env:
|
|
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
|
|
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
|
|
run: |
|
|
echo "$GPG_PRIVATE_KEY" | gpg --batch --import
|
|
for bundle in dist/*.tar.gz; do
|
|
gpg --batch --yes --pinentry-mode loopback \
|
|
--passphrase "$GPG_PASSPHRASE" \
|
|
--detach-sign --armor \
|
|
--output "${bundle}.sig" \
|
|
"$bundle"
|
|
done
|
|
|
|
- uses: actions/forgejo-release@v2.11.1
|
|
with:
|
|
direction: upload
|
|
token: ${{ secrets.FORGEJO_TOKEN }}
|
|
tag: ${{ github.ref_name }}
|
|
release-dir: dist/
|
|
release-dir-include-pattern: "*.tar.gz*"
|
|
prerelease: ${{ contains(github.ref_name, '-rc') }}
|