From a982bd1a77ae7747ab780fa67c4883bfb30d35d8 Mon Sep 17 00:00:00 2001 From: Ricardo Costa Date: Fri, 2 Oct 2026 15:47:15 +0100 Subject: [PATCH 1/2] Require checks before publishing the extension --- .github/workflows/publish.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 225cb0d..3b7b970 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -6,7 +6,11 @@ on: - 'v*' jobs: + checks: + uses: ./.github/workflows/test.yml + publish: + needs: checks runs-on: ubuntu-latest steps: From 00fd1f4fe7bcb840ed2e693504e211a40068465a Mon Sep 17 00:00:00 2001 From: Ricardo Costa Date: Sun, 4 Oct 2026 15:33:00 +0100 Subject: [PATCH 2/2] Publish the extension artifact produced by checks Co-authored-by: Codex --- .github/workflows/publish.yml | 29 +++-------------------------- .github/workflows/test.yml | 7 +++++++ 2 files changed, 10 insertions(+), 26 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4b05d7c..060a7eb 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -14,44 +14,21 @@ jobs: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup Java - uses: actions/setup-java@v4 + - name: Download checked extension + uses: actions/download-artifact@v4 with: - java-version: 21 - distribution: temurin + name: liquid-java-vsix - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 22 - - name: Build Server JAR - working-directory: ./server - run: | - mvn -B -ntp clean package -DskipTests - mkdir -p ../client/server - cp target/language-server-liquidjava.jar ../client/server/ - - - name: Install dependencies and build - working-directory: ./client - run: | - npm install - npm run package - - name: Install vsce run: npm install -g @vscode/vsce - - name: Package extension - working-directory: ./client - run: vsce package --no-dependencies --out liquid-java.vsix - - name: Publish to VS Code Marketplace - working-directory: ./client run: vsce publish --packagePath liquid-java.vsix -p ${{ secrets.VSCE_TOKEN }} - name: Publish to Open VSX Marketplace - working-directory: ./client run: npx ovsx publish liquid-java.vsix --pat ${{ secrets.OVSX_TOKEN }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c63c6f7..da70cb3 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -63,3 +63,10 @@ jobs: unzip -Z1 liquid-java.vsix > /tmp/liquid-java-vsix-files.txt grep -Fx 'extension/dist/server/language-server-liquidjava.jar' /tmp/liquid-java-vsix-files.txt grep -Fx 'extension/media/webview.js' /tmp/liquid-java-vsix-files.txt + + - name: Upload checked extension + uses: actions/upload-artifact@v4 + with: + name: liquid-java-vsix + path: client/liquid-java.vsix + if-no-files-found: error