Skip to content

Release

Release #112

Workflow file for this run

name: Release
on:
push:
tags:
- '*'
jobs:
build:
# strategy:
# matrix:
# os: [ubuntu-latest, macos-latest, windows-latest]
# runs-on: ${{ matrix.os }}
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: 18
- name: Install pnpm
run: npm install -g pnpm
- name: Set desktop app package version
run: pnpm pkg set version=${{ github.ref_name }} --prefix apps/sentry-client-desktop
- name: Set cli version
run: sed -i'' -e 's/VERSION_NUMBER/${{ github.ref_name }}/g' packages/core/src/utils/version.ts
- name: Install dependencies
run: pnpm install
- name: Build monorepo
run: pnpm run build
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
APP_VERSION: ${{ github.ref_name }}
- name: Upload sentry-client-desktop artifacts
uses: actions/upload-artifact@v2
with:
# name: release-desktop-${{ matrix.os }}
name: release-desktop-ubuntu-latest
path: apps/sentry-client-desktop/release
- name: zip cli artifacts
run: |
cd apps/cli/release
zip sentry-node-cli-macos.zip sentry-node-cli-macos
zip sentry-node-cli-linux.zip sentry-node-cli-linux
# if: matrix.os == 'ubuntu-latest'
- name: Create directory for signed builds
shell: bash
run: mkdir apps/cli/release/signed-builds
# if: matrix.os == 'ubuntu-latest'
- name: Sign build Windows CLI zip
uses: sslcom/actions-codesigner@develop
with:
command: sign
username: ${{ secrets.SSL_USERNAME }}
password: ${{ secrets.SSL_PASSWORD }}
totp_secret: ${{ secrets.SSL_TOTP_SECRET }}
file_path: apps/cli/release/sentry-node-cli-win.exe
output_path: apps/cli/release/signed-builds
# if: matrix.os == 'ubuntu-latest'
- name: Upload cli artifacts
uses: actions/upload-artifact@v2
with:
name: release-cli
path: apps/cli/release
# if: matrix.os == 'ubuntu-latest'
# Popular action to deploy to GitHub Pages:
# Docs: https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus
# - name: Deploy to GitHub Pages
# uses: peaceiris/actions-gh-pages@v3
# with:
# github_token: ${{ secrets.GITHUB_TOKEN }}
# # Build output to publish to the `gh-pages` branch:
# publish_dir: ./apps/web-connect/dist
# # The following lines assign commit authorship to the official
# # GH-Actions bot for deploys to `gh-pages` branch:
# # https://github.com/actions/checkout/issues/13#issuecomment-724415212
# # The GH actions bot is used by default if you didn't specify the two fields.
# # You can swap them out with your own user credentials.
# user_name: github-actions[bot]
# user_email: 41898282+github-actions[bot]@users.noreply.github.com
# if: matrix.os == 'ubuntu-latest'
# sign-desktop-windows:
# needs: build
# runs-on: ubuntu-latest
#
# steps:
# - name: Download artifacts
# uses: actions/download-artifact@v2
# with:
# name: release-desktop-windows-latest
# path: release-desktop-windows-latest
#
# - name: Create directory for signed builds
# shell: bash
# run: mkdir release-desktop-windows-latest/signed-builds
#
# - name: Sign build Windows exe
# uses: sslcom/actions-codesigner@develop
# with:
# command: sign
# username: ${{ secrets.SSL_USERNAME }}
# password: ${{ secrets.SSL_PASSWORD }}
# totp_secret: ${{ secrets.SSL_TOTP_SECRET }}
# file_path: release-desktop-windows-latest/sentry-client-windows.exe
# output_path: release-desktop-windows-latest/signed-builds
#
# - name: Upload signed artifacts
# uses: actions/upload-artifact@v2
# with:
# name: release-signed-desktop-windows-latest
# path: release-desktop-windows-latest
checksum-and-release:
# needs: sign-desktop-windows
needs: build
runs-on: macos-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v2
# - name: Generate checksum
# run: |
# CHECKSUM=$(shasum -a 512 release-signed-desktop-windows-latest/signed-builds/sentry-client-windows.exe | cut -f1 -d\ | xxd -r -p | base64)
# CHECKSUM=$(echo "$CHECKSUM" | tr -d '\r\n')
# echo "SHA512 Checksum: $CHECKSUM"
# cat release-signed-desktop-windows-latest/latest.yml
# sed -i '' -e "s#^sha512:.*#sha512: $CHECKSUM#" "release-signed-desktop-windows-latest/latest.yml"
# sed -i '' -e "s#^ sha512:.*# sha512: $CHECKSUM#" "release-signed-desktop-windows-latest/latest.yml"
- name: Release
uses: softprops/action-gh-release@v1
with:
# files: |
# release-desktop-macos-latest/latest-mac.yml
# release-desktop-macos-latest/sentry-client-macos.dmg.blockmap
# release-desktop-macos-latest/sentry-client-macos.dmg
# release-desktop-ubuntu-latest/latest-linux.yml
# release-desktop-ubuntu-latest/sentry-client-linux.AppImage
# release-signed-desktop-windows-latest/latest.yml
# release-signed-desktop-windows-latest/sentry-client-windows.exe.blockmap
# release-signed-desktop-windows-latest/signed-builds/sentry-client-windows.exe
# release-cli/sentry-node-cli-macos.zip
# release-cli/sentry-node-cli-linux.zip
# release-cli/signed-builds/sentry-node-cli-win.exe
files: |
release-desktop-ubuntu-latest/latest-linux.yml
release-desktop-ubuntu-latest/sentry-client-linux.AppImage
release-cli/sentry-node-cli-macos.zip
release-cli/sentry-node-cli-linux.zip
release-cli/signed-builds/sentry-node-cli-win.exe
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}