0.1.0 #216
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Module Builder | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
outputs: | |
release-notes: ${{ steps.set-release-notes.outputs.release-notes }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set Release Notes for Github | |
id: set-release-notes-github | |
run: | | |
echo "- Additions:" >> release_notes.txt | |
echo " - Fireball: Automation to include the excellent cast effects from Eskiemoh. Cast variables are included at the top of the script so they can be easily changed per color preferences." >> release_notes.txt | |
echo " - Triumph: 3rd Party Automation for Abyssal Brews Triumph Horn." >> release_notes.txt | |
echo " - Duskfall Greatsword: Homebrew Automation that grants +2 to AC when being attacked with advantage." >> release_notes.txt | |
echo "- Updates:" >> release_notes.txt | |
echo " - Counterspell: Update to hide cast spell chat card prior to dialog display. Add and subsequently remove a notification message to GM while player dialog present." >> release_notes.txt | |
echo " - Silvery Barbs: Add Homebrew option for attack rolls to only be enabled on a nat 20. Add and subsequently remove a notification message to GM while player dialog present." >> release_notes.txt | |
echo "- Bugfixes:" >> release_notes.txt | |
echo " - Opportunity Attack: Fix potential dialog not progressing if timed out." >> release_notes.txt | |
echo " - Silvery Barbs: Add correct advantage effect expiration for skill checks. Fix to only set re-rolled attack if it is lower than the initial roll. Add homebrew option to only enable on a nat 20 for attack rolls. Correct the hook implementation for player initializations. I consider Silvery Barbs out of beta at this point." >> release_notes.txt | |
echo " - Counterspell: Correct the hook implementation for player initializations." >> release_notes.txt | |
echo " - Stroke of Luck: Fix chat card not displaying correctly on v3+ for attack rolls via re-working the implementation." >> release_notes.txt | |
echo "release-notes-github<<EOF" >> $GITHUB_ENV | |
cat release_notes.txt >> $GITHUB_ENV | |
echo "EOF" >> $GITHUB_ENV | |
- name: Format Release Notes for Discord | |
id: format-release-notes-discord | |
run: | | |
DISCORD_NOTES=$(awk '{printf "%s\\n", $0}' release_notes.txt | sed 's/\\n$//') | |
echo "::set-output name=release-notes-discord::$DISCORD_NOTES" | |
- name: Zip Files | |
working-directory: ./ | |
run: zip -r ./module.zip ./* | |
- name: Get Version | |
shell: bash | |
id: get-version | |
run: echo "version=$(node ./.github/workflows/get-version.js)" >> $GITHUB_OUTPUT | |
- name: Create Release | |
id: create-release | |
uses: ncipollo/release-action@v1 | |
with: | |
allowUpdates: true | |
name: Release ${{ steps.get-version.outputs.version }} | |
draft: false | |
prerelease: false | |
body: ${{ env.release-notes-github }} | |
token: ${{ secrets.GITHUB_TOKEN }} | |
artifacts: './module.zip, ./module.json' | |
tag: ${{ steps.get-version.outputs.version }} | |
- name: Release Foundry Package | |
run: | | |
curl -X POST "https://api.foundryvtt.com/_api/packages/release_version" \ | |
-H "Content-Type: application/json" \ | |
-H "Authorization: ${{ secrets.FOUNDRY_API_TOKEN }}" \ | |
-d '{ | |
"id": "'"gambits-premades"'", | |
"release": { | |
"version": "'"${{ steps.get-version.outputs.version }}"'", | |
"manifest": "'"https://github.com/gambit07/gambits-premades/releases/latest/download/module.json"'", | |
"notes": "'"https://github.com/gambit07/gambits-premades/releases/tag/${{ steps.get-version.outputs.version }}"'", | |
"compatibility": { | |
"minimum": "'"11"'", | |
"verified": "'"11"'", | |
"maximum": "'"11"'" | |
} | |
} | |
}' | |
- name: Post to Discord | |
env: | |
DISCORD_WEBHOOK: ${{ secrets.DISCORD_MIDI_WEBHOOK }} | |
run: | | |
curl -H "Content-Type: application/json" \ | |
-d '{ | |
"embeds": [{ | |
"title": "Gambit'"'"'s Premades Release: ${{ steps.get-version.outputs.version }}", | |
"description": "**To support my continued work on this module!\n<https://ko-fi.com/gambit07> ❤️**\n\n${{ steps.format-release-notes-discord.outputs.release-notes-discord }}\n\nCheck it out through the Foundry package manager or the link below:\n<https://github.com/gambit07/gambits-premades/releases/tag/${{ steps.get-version.outputs.version }}>", | |
"image": { | |
"url": "https://avatars.githubusercontent.com/u/4236874?s=400&u=05d3718580ef87ea13467131a0c1fcaf4956630d&v=4" | |
} | |
}] | |
}' $DISCORD_WEBHOOK |