-
Notifications
You must be signed in to change notification settings - Fork 4
91 lines (82 loc) · 4.2 KB
/
main.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
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 " - Command: This will display a chat output and a sequencer effect of the word the user selects to the target on their turn. Credit to @motomoto0295 for getting this one rolling" >> release_notes.txt
echo "- Updates:" >> release_notes.txt
echo " - Poetry in Misery: Add support for skill checks." >> release_notes.txt
echo " - Opportunity Attack: Default template on hover to false via Walled Templates. Removed need for Token Attacher if Walled Templates active, in the future token attacher will be removed completely. Fixed visual glitch with template outlines displaying after combat start." >> release_notes.txt
echo "- Bugfixes:" >> release_notes.txt
echo " - Dragon Turtle Dueling Shield: Fix flag not being cleared if OA declined." >> release_notes.txt
echo " - Enervation: A number of bug fixes and updates including support for 1 Action effect expiration, full cover effect expiration, non dfreds CE concentration failing, and item not referencing macroItem correctly." >> 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