Implement PowerShell bridge for Windows PowerPoint COM automation #15
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build and Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*.*.*' | |
| jobs: | |
| build-mac: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: 'npm' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Build app | |
| run: npm run build | |
| - name: Build and package for macOS | |
| run: npm run dist:mac | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Upload macOS artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: macos-files | |
| path: | | |
| dist/*.dmg | |
| dist/*.zip | |
| dist/latest-mac.yml | |
| build-windows: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: 'npm' | |
| - name: Setup Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Build app | |
| run: npm run build | |
| - name: Build and package for Windows | |
| run: npm run dist:win | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Upload Windows artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: windows-files | |
| path: | | |
| dist/*.exe | |
| dist/latest.yml | |
| release: | |
| needs: [build-mac, build-windows] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Download macOS artifacts | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: macos-files | |
| path: ./artifacts/mac | |
| - name: Download Windows artifacts | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: windows-files | |
| path: ./artifacts/win | |
| - name: List files | |
| run: find ./artifacts -type f | |
| - name: Create Release in source repo | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: | | |
| ./artifacts/mac/*.dmg | |
| ./artifacts/mac/*.zip | |
| ./artifacts/win/*.exe | |
| generate_release_notes: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Create Release in public releases repo | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| repository: LAB271/SlideCue-releases | |
| tag_name: ${{ github.ref_name }} | |
| name: SlideCue ${{ github.ref_name }} | |
| files: | | |
| ./artifacts/mac/*.dmg | |
| ./artifacts/mac/*.zip | |
| ./artifacts/mac/*.yml | |
| ./artifacts/win/*.exe | |
| ./artifacts/win/*.yml | |
| generate_release_notes: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.RELEASES_REPO_TOKEN }} |