name: Create release on: push: tags: - 'v*.*.*' jobs: create-release: runs-on: ubuntu-latest steps: - name: Get latest code uses: actions/checkout@v4 with: fetch-depth: 0 ref: ${{ github.event.repository.default_branch }} - name: Setup Bun uses: oven-sh/setup-bun@v2 with: bun-version: latest - name: Install package dependencies run: bun install working-directory: package - name: Install web dependencies run: bun install working-directory: web - name: Run web build script run: bun run build working-directory: web - name: Bump package version run: bun .github/actions/bump-package-version.js env: TGT_RELEASE_VERSION: ${{ github.ref_name }} - name: Bump manifest version run: bun .github/actions/bump-manifest-version.js env: TGT_RELEASE_VERSION: ${{ github.ref_name }} - name: Push version bump change uses: EndBug/add-and-commit@v9 with: add: '["fxmanifest.lua", "package/package.json"]' push: true default_author: github_actions message: 'chore: bump version to ${{ github.ref_name }}' - name: Update tag uses: EndBug/latest-tag@v1 with: ref: ${{ github.ref_name }} - name: Publish package to npm registry run: bun publish --access public working-directory: package env: NPM_CONFIG_TOKEN: ${{ secrets.NPM_TOKEN }} - name: Install zip run: sudo apt install zip - name: Bundle files run: | mkdir -p ./temp/ox_lib mkdir -p ./temp/ox_lib/web/ cp ./{LICENSE,README.md,fxmanifest.lua,init.lua} ./temp/ox_lib cp -r ./{imports,resource,locales} ./temp/ox_lib cp -r ./web/build ./temp/ox_lib/web/ cd ./temp && zip -r ../ox_lib.zip ./ox_lib - name: Create release uses: 'marvinpinto/action-automatic-releases@v1.2.1' id: auto_release with: repo_token: ${{ secrets.GITHUB_TOKEN }} prerelease: false files: ox_lib.zip env: CI: false GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}