name: Release Creation

on: 
  release:
    types: [published]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
    
    #- uses: actions/checkout@v3
    - uses: RouxAntoine/checkout@v3.5.4

    # 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: 'system.json'
      env:
        version: ${{steps.get_version.outputs.version-without-v}}
        url: https://www.uberwald.me/gitea/${{gitea.repository}}
        manifest: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/system.json
        download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/rddsystem.zip
    
    - name: Set up Node.js
      uses: actions/setup-node@v2
      with:
        node-version: '18'  # Use the node version your project requires

    - name: Install dependencies
      run: npm install
      
    - name: Build the compendiums
      run: node ./tools/packCompendiumsToDist.mjs

    # Create a zip file with all files required by the module to add to the release
    - run: |
         apt update -y
         apt install -y zip

    - run: zip -r ./rddsystem.zip system.json template.json README.md LICENSE.txt assets/ fonts/ icons lang/ module/ packs/ pic/ sounds/ styles/ templates/ 
    
    - name: setup go
      uses: actions/setup-go@v3
      with:
        go-version: '>=1.20.1'
    
    - name: Use Go Action  
      id: use-go-action
      uses: https://gitea.com/actions/release-action@main
      with:
        files: |-
          ./rddsystem.zip  
          system.json
        api_key: '${{secrets.ALLOW_PUSH_RELEASE}}'

    - name: Publish to Foundry server  
      uses: djlechuck/foundryvtt-publish-package-action@v1
      with:
        token: ${{ secrets.FOUNDRYVTT_RELEASE_TOKEN }}
        id: 'foundryvtt-reve-de-dragon'
        version: ${{github.event.release.tag_name}}
        manifest: 'https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/system.json'
        notes: 'https://www.uberwald.me/gitea/public/foundryvtt-reve-de-dragon/raw/branch/v11/changelog.md'
        compatibility-minimum: '12'
        compatibility-verified: '12'