diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 266dd92..f702961 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,7 @@ on: push: branches: - "main" + - "release/**" paths-ignore: - "*.md" @@ -25,3 +26,8 @@ jobs: name: ๐Ÿงช Unit tests needs: build-extension uses: ./.github/workflows/unit_tests.yml + + package: + name: ๐Ÿ“ฆ Package + needs: build-extension + uses: ./.github/workflows/package.yml diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml new file mode 100644 index 0000000..d1e9d9c --- /dev/null +++ b/.github/workflows/package.yml @@ -0,0 +1,36 @@ +name: ๐Ÿ“ฆ Package + +on: + workflow_call: + +jobs: + package: + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Download artifact + uses: actions/download-artifact@v4 + with: + name: sentry-godot-gdextension + path: artifact/ + + - name: Prepare artifact + shell: bash + run: | + # * Fix crashpad_handler permissions, workaround for https://github.com/actions/upload-artifact/issues/38 + chmod +x artifact/addons/sentrysdk/bin/{linux,macos}/crashpad_handler + # * Create release archive + version=$(grep 'VERSION =' SConstruct | cut -d '"' -f 2) + git_short_sha=$(git rev-parse --short HEAD) + archive_file="sentry-godot-gdextension-${version}+${git_short_sha}.zip" + cd artifact/ + mkdir ${GITHUB_WORKSPACE}/out/ + zip -r ${GITHUB_WORKSPACE}/out/${archive_file} ./* + + - name: Upload artifact + uses: actions/upload-artifact@v4 + with: + name: ${{github.sha}} + path: out/*