Skip to content

Commit

Permalink
Create publish.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
vtt-lair authored Jun 10, 2023
1 parent d83cb23 commit 7c4ecbb
Showing 1 changed file with 63 additions and 0 deletions.
63 changes: 63 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Release Creation

on:
release:
types: [published]

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2

# get part of the tag after the `v`
- name: Extract tag version number
id: get_version
uses: battila7/get-version-action@v2

# Substitute the Manifest and Download URLs in the module.json
- name: Substitute Manifest and Download Links For Versioned Ones
id: sub_manifest_link_version
uses: microsoft/variable-substitution@v1
with:
files: 'module.json'
env:
version: ${{steps.get_version.outputs.version-without-v}}
url: https://github.com/${{github.repository}}
manifest: https://github.com/${{github.repository}}/releases/latest/download/module.json
download: https://github.com/${{github.repository}}/releases/download/${{github.event.release.tag_name}}/module.zip

# Create a zip file with all files required by the module to add to the release
- name: Create zip file
run: zip -r ./module.zip module.json lang/ scripts/ handlebars/

# Create a release for this specific version
- name: Update Release with Files
id: create_version_release
uses: ncipollo/release-action@v1
with:
allowUpdates: true # Set this to false if you want to prevent updating existing releases
name: ${{ github.event.release.name }}
draft: false
prerelease: false
token: ${{ secrets.GH_TOKEN }}
artifacts: './module.json, ./module.zip'
tag: ${{ github.event.release.tag_name }}
body: ${{ github.event.release.body }}

# Install Node
- name: Install node
uses: actions/[email protected]
with:
node-version: 16

# Publish to FoundryVTT
- name: Publish to Foundry VTT Repo
id: publish_foundry_repo
run: npx @ghost-fvtt/foundry-publish
env:
FVTT_MANIFEST_PATH: 'module.json'
FVTT_PACKAGE_ID: ${{ secrets.PACKAGE_ID }}
FVTT_USERNAME: ${{ secrets.FOUNDRY_ADMIN_USER }}
FVTT_PASSWORD: ${{ secrets.FOUNDRY_ADMIN_PW }}

0 comments on commit 7c4ecbb

Please sign in to comment.