name: Build on: push: tags: - 'v*.*.*' jobs: create-release: name: Build and Create Tagged release runs-on: ubuntu-latest steps: - name: Install archive tools run: sudo apt install zip - name: Checkout source code uses: actions/checkout@v3 with: token: ${{ secrets.PAT_TOKEN }} fetch-depth: 0 ref: ${{ github.event.repository.default_branch }} - name: Install pnpm uses: pnpm/action-setup@v4.0.0 with: version: 9 - name: Get variables id: get_vars run: | echo '::set-output name=SHORT_SHA::$(git rev-parse --short HEAD)' echo '::set-output name=DATE::$(date +'%D')' - name: Setup node uses: actions/setup-node@v2 with: node-version: 18.x cache: 'pnpm' cache-dependency-path: 'pnpm-lock.yaml' - name: Install dependencies run: pnpm i --frozen-lockfile - name: Run build run: pnpm build env: TGT_RELEASE_VERSION: ${{ github.ref_name }} - name: Update repository run: | git config --global user.name "GitHub Actions" git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com" git add . git commit -am '${{ github.ref_name }}' git push - name: Bundle files run: | mkdir -p ./temp/oxmysql/{web,lib} cp ./{LICENSE,README.md,fxmanifest.lua,ui.lua} ./temp/oxmysql cp ./lib/MySQL.lua ./temp/oxmysql/lib cp -r ./dist ./logger ./temp/oxmysql cp -r ./web/build ./temp/oxmysql/web/ cd ./temp && zip -r ../oxmysql.zip ./oxmysql - name: Create Release uses: 'marvinpinto/action-automatic-releases@v1.2.1' id: auto_release with: repo_token: '${{ secrets.GITHUB_TOKEN }}' title: '${{ env.RELEASE_VERSION }}' prerelease: false files: oxmysql.zip env: CI: false GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}