Skip to content

Release

Release #28

Workflow file for this run

name: Release
on:
pull_request:
types:
- closed
branches:
- main
paths:
- "src/**/*"
- assets
- build.project.json
- mantle.yaml
- package.json
workflow_dispatch:
permissions:
contents: write
concurrency:
group: production_environment
cancel-in-progress: true
jobs:
build:
if: ${{ github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged == true) }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
- uses: jdx/mise-action@5ac50f778e26fac95da98d50503682459e86d566 # v3.2
- name: Install Dependencies
uses: ./.github/actions/install-dependencies
with:
install-flags: --filter="catalog:prod,build,types"
- name: Compile
run: pnpm prod:build --verbose
- name: Build project
run: rojo build ./build.project.json --output place.rbxlx
- name: Upload place
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
with:
if-no-files-found: error
name: place
path: place.rbxlx
deploy:
needs: build
if: ${{ github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged == true) }}
runs-on: ubuntu-latest
environment: production
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
- uses: jdx/mise-action@5ac50f778e26fac95da98d50503682459e86d566 # v3.2
- name: Deploy to Roblox
uses: ./.github/actions/deploy
with:
deploy-flags: --allow-purchases
environment: production
expected-ip: ${{ vars.EXPECTED_IP }}
mantle-aws-access-key-id: ${{ secrets.MANTLE_AWS_ACCESS_KEY_ID }}
mantle-aws-secret-access-key: ${{ secrets.MANTLE_AWS_SECRET_ACCESS_KEY }}
mantle-open-cloud-api-key: ${{ secrets.MANTLE_OPEN_CLOUD_API_KEY }}
roblosecurity: ${{ secrets.ROBLOSECURITY }}
secret: ${{ secrets.WG_CONFIG_FILE }}
timeout-minutes: 15
tag:
needs: deploy
if: ${{ github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged == true) }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
with:
fetch-depth: 0
- id: tag_version
name: Bump version and push tag
uses: mathieudutour/github-tag-action@a22cf08638b34d5badda920f9daf6e72c477b07b # v6.2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Download place artifact
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5
with:
name: place
- name: Create a GitHub release
uses: ncipollo/release-action@b7eabc95ff50cbeeedec83973935c8f306dfcd0b # v1
with:
artifacts: place.rbxlx
body: ${{ steps.tag_version.outputs.changelog }}
name: Release ${{ steps.tag_version.outputs.new_tag }}
tag: ${{ steps.tag_version.outputs.new_tag }}