diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml new file mode 100644 index 0000000..6bd9876 --- /dev/null +++ b/.github/workflows/main.yaml @@ -0,0 +1,45 @@ +name: Release Creation + +on: + release: + types: [published] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - 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 + - run: zip -r ./module.zip module.json README.md LICENSE styles/ scripts/ templates/ languages/ lib/ img/ packs/ + + # 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: ${{ github.event.release.unpublished }} + prerelease: ${{ github.event.release.prerelease }} + token: ${{ secrets.GITHUB_TOKEN }} + artifacts: './module.json, ./module.zip' + tag: ${{ github.event.release.tag_name }} + body: ${{ github.event.release.body }} \ No newline at end of file diff --git a/.github/workflows/release-creation.yml b/.github/workflows/release-creation.yml deleted file mode 100644 index 073a1fd..0000000 --- a/.github/workflows/release-creation.yml +++ /dev/null @@ -1,54 +0,0 @@ -name: Release Creation - -on: - release: - types: [published] - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@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: ${{github.event.release.tag_name}} - manifest: https://github.com/${{github.repository}}/releases/latest/download/module.json - download: https://github.com/${{github.repository}}/releases/download/${{github.event.release.tag_name}}/CM.zip - - # create a zip file with all files required by the module to add to the release - - run: zip -r ./CM.zip module.json scripts/ templates/ lang/ styles/ - - # 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.GITHUB_TOKEN }} - artifacts: './module.json, ./CM.zip' - tag: ${{ github.event.release.tag_name }} - body: ${{ github.event.release.body }} - - # Update the 'latest' release - - name: Create Release - id: create_latest_release - uses: ncipollo/release-action@v1 - if: endsWith(github.ref, 'master') - with: - allowUpdates: true - name: Latest - draft: false - prerelease: false - token: ${{ secrets.GITHUB_TOKEN }} - artifacts: './module.json,./CM.zip' - tag: latest - body: ${{ github.event.release.body }} diff --git a/module.json b/module.json index e647011..93b0513 100644 --- a/module.json +++ b/module.json @@ -62,5 +62,5 @@ "socket": true, "url": "https://github.com/jessev14/dnd5e-character-monitor", "manifest": "https://github.com/jessev14/dnd5e-character-monitor/releases/latest/download/module.json", - "download": "https://github.com/jessev14/dnd5e-character-monitor/releases/download/1.0.0/CM.zip" + "download": "https://github.com/jessev14/dnd5e-character-monitor/releases/download/1.0.0/module.zip" } \ No newline at end of file