name: Ontime build on: push: tags: [ "*" ] workflow_dispatch: jobs: build_macos: runs-on: macOS-latest steps: - uses: actions/checkout@v4 - name: Use Node.js uses: actions/setup-node@v4 with: node-version: 20 - name: Setup pnpm uses: pnpm/action-setup@v3 with: version: 9 - name: Install dependencies run: pnpm install --frozen-lockfile - name: Build project packages env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} run: pnpm build - name: Electron - Build app env: APPLE_ID: ${{ secrets.APPLEID }} APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLEIDPASS }} APPLE_TEAM_ID: ${{ secrets.TEAMID }} CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }} CSC_LINK: ${{ secrets.CSC_LINK }} run: pnpm dist-mac timeout-minutes: 60 - name: Release uses: softprops/action-gh-release@v1 with: files: | ./apps/electron/dist/ontime-macOS-x64.dmg ./apps/electron/dist/ontime-macOS-arm64.dmg env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} build_windows: runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Use Node.js uses: actions/setup-node@v4 with: node-version: 20 - name: Setup pnpm uses: pnpm/action-setup@v3 with: version: 9 - name: Install dependencies run: pnpm install --frozen-lockfile - name: Build project packages env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} run: pnpm build - name: Electron - Build app run: pnpm dist-win - name: Release uses: softprops/action-gh-release@v1 with: files: './apps/electron/dist/ontime-win64.exe' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} build_ubuntu: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Use Node.js uses: actions/setup-node@v4 with: node-version: 20 - name: Setup pnpm uses: pnpm/action-setup@v3 with: version: 9 - name: Install dependencies run: pnpm install --frozen-lockfile - name: Build project packages env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} run: pnpm build - name: Electron - Build app run: pnpm dist-linux - name: Release uses: softprops/action-gh-release@v1 with: files: './apps/electron/dist/ontime-linux.AppImage' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}