Skip to content

publish-package

publish-package #116

name: publish-package
on:
workflow_dispatch:
permissions:
contents: write
jobs:
release-plugin:
runs-on: macos-latest
env:
PLUGIN_VERSION:
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- name: Extract version
id: version
working-directory: ./plugin
run: echo "PLUGIN_VERSION=$(jq .Version com.dim.streamdeck.sdPlugin/manifest.json -r)" | rev | cut -c3- | rev >> $GITHUB_ENV
- name: Prepare plugin directory
run: |
mkdir -p plugin/com.dim.streamdeck.sdPlugin/solo-mode
mkdir -p plugin/com.dim.streamdeck.sdPlugin/macro
wget https://github.com/dim-stream-deck/prebuilt-binaries/raw/refs/heads/main/prebuilt/install-sd-solo-mode.exe -P plugin/com.dim.streamdeck.sdPlugin/solo-mode/
wget https://github.com/dim-stream-deck/prebuilt-binaries/raw/refs/heads/main/prebuilt/remove-sd-solo-mode.exe -P plugin/com.dim.streamdeck.sdPlugin/solo-mode/
wget https://github.com/dim-stream-deck/prebuilt-binaries/raw/refs/heads/main/prebuilt/sd-solo-mode.exe -P plugin/com.dim.streamdeck.sdPlugin/solo-mode/
wget https://github.com/dim-stream-deck/prebuilt-binaries/raw/refs/heads/main/prebuilt/macro.exe -P plugin/com.dim.streamdeck.sdPlugin/macro/
- name: Build
working-directory: .
run: bun i && bun run build
env:
VITE_DISCORD: ${{secrets.VITE_DISCORD}}
VITE_PATREON: ${{secrets.VITE_PATREON}}
VITE_AXIOM_DATASET: ${{secrets.VITE_AXIOM_DATASET}}
VITE_AXIOM_TOKEN: ${{secrets.VITE_AXIOM_TOKEN}}
VITE_CHECKPOINTS: ${{secrets.VITE_CHECKPOINTS}}
CHECKPOINT_API: ${{secrets.CHECKPOINT_API}}
CHECKPOINT_API_KEY: ${{secrets.CHECKPOINT_API_KEY}}
CHECKPOINT_HOST: ${{secrets.CHECKPOINT_HOST}}
AXIOM_DATASET: ${{secrets.VITE_AXIOM_DATASET}}
AXIOM_TOKEN: ${{secrets.VITE_AXIOM_TOKEN}}
- name: Publish package
uses: ncipollo/release-action@v1.13.0
with:
name: "${{ env.PLUGIN_VERSION }}"
prerelease: false
makeLatest: true
allowUpdates: true
bodyFile: "./changelogs/${{ env.PLUGIN_VERSION }}.md"
tag: "${{ env.PLUGIN_VERSION }}"
token: "${{ secrets.GITHUB_TOKEN }}"
artifacts: "./plugin/com.dim.streamdeck.streamDeckPlugin"