Skip to content

Clipper Github Release #528

Clipper Github Release

Clipper Github Release #528

name: Clipper Github Release
on:
push:
tags:
- '*standardnotes/web*'
workflow_dispatch:
jobs:
build:
defaults:
run:
working-directory: packages/clipper
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Node
uses: actions/setup-node@v3
with:
registry-url: 'https://registry.npmjs.org'
node-version-file: '.nvmrc'
cache: 'yarn'
- name: Install dependencies
run: yarn install --immutable
- name: Export version from package.json
run:
echo "PACKAGE_VERSION=$(grep '"version"' ./package.json | cut -d '"' -f 4 | cut -d "-" -f 1)" >> $GITHUB_ENV
- name: Build web package for clipper
run: BUILD_TARGET=clipper yarn build:web
- name: Build for Chromium (MV3)
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
run: |
EXT_TARGET=chromium yarn build-mv3
cd dist
zip -r standard-notes-clipper-$PACKAGE_VERSION.chromium.zip *
mv standard-notes-clipper-$PACKAGE_VERSION.chromium.zip ../
- name: Build for Firefox (MV2)
env:
PACKAGE_VERSION: ${{ env.PACKAGE_VERSION }}
WEB_EXT_API_KEY: ${{ secrets.AMO_WEB_EXT_API_KEY }}
WEB_EXT_API_SECRET: ${{ secrets.AMO_WEB_EXT_API_SECRET }}
run: |
EXT_TARGET=firefox yarn build-mv2
yarn web-ext sign --source-dir dist --api-key $WEB_EXT_API_KEY --api-secret $WEB_EXT_API_SECRET --channel=listed --use-submission-api
mv web-ext-artifacts/*.xpi standard-notes-clipper-$PACKAGE_VERSION.firefox.xpi
- name: Upload
uses: actions/upload-artifact@v3.0.0
with:
name: assets
path: |
packages/clipper/*.chromium.zip
packages/clipper/*.firefox.xpi
publish:
defaults:
run:
working-directory: packages/clipper
runs-on: ubuntu-latest
needs: [build]
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Node
uses: actions/setup-node@v3
with:
registry-url: 'https://registry.npmjs.org'
node-version-file: '.nvmrc'
cache: 'yarn'
- name: Install dependencies
run: yarn install --immutable
- name: Export version from package.json
run:
echo "PACKAGE_VERSION=$(grep '"version"' ./package.json | cut -d '"' -f 4 | cut -d "-" -f 1)" >> $GITHUB_ENV
- uses: actions/download-artifact@v3
with:
name: assets
path: packages/clipper/artifacts
- name: Generate Release Notes
uses: ./actions/release-notes
with:
package: clipper
id: release-notes
continue-on-error: true
- name: Release
uses: softprops/action-gh-release@v1
with:
token: ${{ secrets.CI_PAT_TOKEN }}
tag_name: "@standardnotes/clipper@${{ env.PACKAGE_VERSION }}"
name: "Clipper ${{ env.PACKAGE_VERSION }}"
body: ${{ steps.release-notes.outputs.result }}
draft: false
prerelease: true
files: packages/clipper/artifacts/*
- name: Publish to Chrome Web Store
uses: trmcnvn/chrome-addon@v2
with:
extension: heapafmadojoodklnkhjanbinemaagok
zip: packages/clipper/artifacts/standard-notes-clipper-${{ env.PACKAGE_VERSION }}.chromium.zip
client-id: ${{ secrets.CHROME_CLIENT_ID }}
client-secret: ${{ secrets.CHROME_CLIENT_SECRET }}
refresh-token: ${{ secrets.CHROME_REFRESH_TOKEN }}