diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml new file mode 100644 index 0000000..f1d2113 --- /dev/null +++ b/.github/workflows/main.yaml @@ -0,0 +1,37 @@ +name: Node.js CI + +on: + push: + branches: [ master ] + pull_request: + branches: [ '**' ] + +jobs: + build: + + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [15.x, 16.x] + + steps: + - uses: actions/checkout@v3 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v3 + + with: + node-version: ${{ matrix.node-version }} + + - run: npm install -g vsce + - run: npm install + - run: vsce package + + - name: Save Artifact + uses: actions/upload-artifact@v2 + with: + name: 'extension package ${{ matrix.node-version }}' + path: ./coq-elpi-lang-*.vsix + + \ No newline at end of file diff --git a/.github/workflows/vcstore.yaml b/.github/workflows/vcstore.yaml new file mode 100644 index 0000000..43e6463 --- /dev/null +++ b/.github/workflows/vcstore.yaml @@ -0,0 +1,45 @@ +name: Visual Studio store upload + +on: + release: + types: [published] + workflow_dispatch: + inputs: + publish_vsx: + description: 'Upload to the main store' + required: true + default: false + publish_open_vsx: + description: 'Upload to the open vsx store' + required: true + default: false + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Install Node.js + uses: actions/setup-node@v3 + with: + node-version: 16.x + + - run: npm install -g vsce + - run: npm install + - run: vsce package + + - name: Publish + if: success() && (startsWith(github.ref, 'refs/tags/') || ${{ github.event.inputs.publish_vsx }}) + run: npm run deploy + env: + VSCE_PAT: ${{ secrets.VSCE_PAT }} + + - name: Publish to Open VSX Registry + if: success() && (startsWith(github.ref, 'refs/tags/') || ${{ github.event.inputs.publish_open_vsx }}) + uses: HaaLeo/publish-vscode-extension@v1 + with: + pat: ${{ secrets.OPEN_VSX_TOKEN }}