Update README.md #2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy to Chrome Web Store | |
| on: | |
| push: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 2 | |
| - name: Check if version changed | |
| id: version-check | |
| run: | | |
| # 前回のコミットとの差分をチェック | |
| if git diff HEAD~1 HEAD --name-only | grep -q "package.json"; then | |
| # package.jsonが変更された場合、バージョンフィールドが変更されたかチェック | |
| if git diff HEAD~1 HEAD package.json | grep -q '"version"'; then | |
| echo "version-changed=true" >> $GITHUB_OUTPUT | |
| echo "Version changed, proceeding with deployment" | |
| else | |
| echo "version-changed=false" >> $GITHUB_OUTPUT | |
| echo "package.json changed but version unchanged, skipping deployment" | |
| fi | |
| else | |
| echo "version-changed=false" >> $GITHUB_OUTPUT | |
| echo "package.json not changed, skipping deployment" | |
| fi | |
| - name: Setup Node.js | |
| if: steps.version-check.outputs.version-changed == 'true' | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '18' | |
| - name: Setup pnpm | |
| if: steps.version-check.outputs.version-changed == 'true' | |
| uses: pnpm/action-setup@v2 | |
| with: | |
| version: 8 | |
| - name: Install dependencies | |
| if: steps.version-check.outputs.version-changed == 'true' | |
| run: pnpm install | |
| - name: Build extension | |
| if: steps.version-check.outputs.version-changed == 'true' | |
| run: pnpm build | |
| - name: Create zip file | |
| if: steps.version-check.outputs.version-changed == 'true' | |
| run: | | |
| cd dist | |
| zip -r ../extension.zip . | |
| cd .. | |
| - name: Upload to Chrome Web Store | |
| if: steps.version-check.outputs.version-changed == 'true' | |
| uses: mnao305/chrome-extension-upload@v5.0.0 | |
| with: | |
| file-path: extension.zip | |
| extension-id: ${{ secrets.CHROME_EXTENSION_ID }} | |
| client-id: ${{ secrets.CHROME_CLIENT_ID }} | |
| client-secret: ${{ secrets.CHROME_CLIENT_SECRET }} | |
| refresh-token: ${{ secrets.CHROME_REFRESH_TOKEN }} | |
| publish: true | |
| publish-target: trustedTesters |