diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml new file mode 100644 index 0000000..6e2beb2 --- /dev/null +++ b/.github/workflows/publish.yaml @@ -0,0 +1,55 @@ +name: Publish Extension + +on: + push: + tags: + - "*" + +jobs: + test: + strategy: + matrix: + os: [macos-latest, ubuntu-latest, windows-latest] + runs-on: ${{ matrix.os }} + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Install Node.js + uses: actions/setup-node@v3 + with: + node-version: 20.x + cache: yarn + - name: Install dependencies + run: yarn install --frozen-lockfile + - name: Build extension + run: yarn compile + - name: Install PlaydateSDK (macOS) + run: ./scripts/installSDKMacOS.sh + if: runner.os == 'macOS' + - name: Install PlaydateSDK (Linux) + run: ./scripts/installSDKLinux.sh + if: runner.os == 'Linux' + - name: Run tests (Linux) + run: xvfb-run -a yarn test:ci + if: runner.os == 'Linux' + - name: Run tests + run: yarn test:ci + if: runner.os != 'Linux' + + publish: + needs: test + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Install Node.js + uses: actions/setup-node@v3 + with: + node-version: 20.x + cache: yarn + - name: Install dependencies + run: yarn install --frozen-lockfile + - name: Package extension + run: npx vsce package --yarn + - name: Publish to VSCode Marketplace + run: npx vsce publish --yarn -p ${{ secrets.VSCE_PAT }} diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..0317576 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v20.19.5 diff --git a/package.json b/package.json index e31ac42..38621e4 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "playdate-debug", "displayName": "Playdate Debug", - "version": "1.19.0", + "version": "1.20.0", "publisher": "midouest", "description": "Unofficial Playdate debug extension for macOS, Windows and Ubuntu", "icon": "images/icon@2x.png",