name: Build and Publish on Tag on: push: tags: - 'v*' jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: ['lts/*'] steps: - uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v2 with: node-version: ${{ matrix.node-version }} - run: npm i -g grunt-cli - run: npm install - run: grunt publish-windows: runs-on: windows-latest steps: - uses: actions/checkout@v2 - name: Set up Node.js uses: actions/setup-node@v2 with: node-version: 'lts/*' - name: Install dependencies run: npm install - name: Fix dependencies before run: node ./scripts/fix-packages-publish.js before - name: Publish Windows application run: npm run publish-windows env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Fix dependencies after run: node ./scripts/fix-packages-publish.js after - name: Upload Windows build to GitHub Release uses: softprops/action-gh-release@v1 with: tag_name: ${{ github.ref_name }} files: | dist/*.exe dist/*.msi dist/*.blockmap dist/latest.yml env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} package-and-release-macos: runs-on: macos-latest steps: - uses: actions/checkout@v2 - name: Set up Node.js uses: actions/setup-node@v2 with: node-version: 'lts/*' - name: Install dependencies run: | npm install npm install dmg-license - name: Fix dependencies before run: node ./scripts/fix-packages-publish.js before # - name: Decode and Install Certificates # env: # CERTIFICATE_P12_BASE64: ${{ secrets.CERTIFICATE_P12_BASE64 }} # CERTIFICATE_P12_PASSWORD: ${{ secrets.CERTIFICATE_P12_PASSWORD }} # run: | # echo $CERTIFICATE_P12_BASE64 | base64 --decode > certificate.p12 # security create-keychain -p actions temp.keychain # security import certificate.p12 -k ~/Library/Keychains/temp.keychain -P "$CERTIFICATE_P12_PASSWORD" -T /usr/bin/codesign # security list-keychains -s temp.keychain # security default-keychain -s temp.keychain # security unlock-keychain -p actions temp.keychain # security set-key-partition-list -S apple-tool:,apple: -s -k actions temp.keychain # - name: Build and package macOS app # env: # APPLE_ID: ${{ secrets.APPLE_ID }} # APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} # APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_APP_SPECIFIC_PASSWORD }} # DEBUG: "*" # run: npm run publish-macos - name: Fix dependencies after run: node ./scripts/fix-packages-publish.js after - name: Upload macOS build to GitHub Release uses: softprops/action-gh-release@v1 with: tag_name: ${{ github.ref_name }} files: | dist/*.dmg dist/*.zip dist/*.blockmap dist/latest-mac.yml env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}