Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions .commitlintrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,20 @@ extends:
rules:
# Type enum - allowed commit types
type-enum:
- 2 # Level: error
- 2 # Level: error
- always
- # Allowed types:
- feat # New feature
- fix # Bug fix
- docs # Documentation only changes
- style # Code style changes (formatting, missing semi-colons, etc)
- refactor # Code refactoring (neither fixes a bug nor adds a feature)
- perf # Performance improvements
- test # Adding or updating tests
- build # Changes to build system or dependencies
- ci # CI/CD configuration changes
- chore # Other changes that don't modify src or test files
- revert # Revert a previous commit
- feat # New feature
- fix # Bug fix
- docs # Documentation only changes
- style # Code style changes (formatting, missing semi-colons, etc)
- refactor # Code refactoring (neither fixes a bug nor adds a feature)
- perf # Performance improvements
- test # Adding or updating tests
- build # Changes to build system or dependencies
- ci # CI/CD configuration changes
- chore # Other changes that don't modify src or test files
- revert # Revert a previous commit

# Type case should be lowercase
type-case:
Expand Down Expand Up @@ -62,17 +62,17 @@ rules:

# Body should have a blank line before it
body-leading-blank:
- 1 # Warning level
- 1 # Warning level
- always

# Footer should have a blank line before it
footer-leading-blank:
- 1 # Warning level
- 1 # Warning level
- always

# Body max line length
body-max-line-length:
- 1 # Warning level
- 1 # Warning level
- always
- 100

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/commit-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all branches and tags
fetch-depth: 0 # Fetch all history for all branches and tags

- name: Setup Node.js
uses: actions/setup-node@v4
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/preview-changelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ jobs:
needs: generate

steps:
- name: Display changelog preview
run: |
echo "=========================================="
echo "CHANGELOG PREVIEW"
echo "=========================================="
echo ""
echo "${{ needs.generate.outputs.changelog }}"
shell: bash
- name: Display changelog preview
run: |
echo "=========================================="
echo "CHANGELOG PREVIEW"
echo "=========================================="
echo ""
echo "${{ needs.generate.outputs.changelog }}"
shell: bash
6 changes: 4 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,8 @@ jobs:
#github #githubactions #devops #automation
embed_url: https://github.com/marketplace/actions/jetbrains-marketplace-publisher
embed_title: JetBrains Marketplace Publisher
embed_description: Publish your JetBrains plugins to the marketplace with ease!
embed_description:
Publish your JetBrains plugins to the marketplace with ease!
secrets:
BLUESKY_USERNAME: ${{ secrets.BLUESKY_USERNAME }}
BLUESKY_APP_PASSWORD: ${{ secrets.BLUESKY_APP_PASSWORD }}
Expand All @@ -93,7 +94,8 @@ jobs:
#github #githubactions #devops #automation
article_url: https://github.com/marketplace/actions/jetbrains-marketplace-publisher
article_title: JetBrains Marketplace Publisher
article_description: Publish your JetBrains plugins to the marketplace with ease!
article_description:
Publish your JetBrains plugins to the marketplace with ease!
secrets:
LINKEDIN_ACCESS_TOKEN: ${{ secrets.LINKEDIN_ACCESS_TOKEN }}
LINKEDIN_CLIENT_ID: ${{ secrets.LINKEDIN_CLIENT_ID }}
39 changes: 27 additions & 12 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,34 @@
# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This file provides guidance to Claude Code (claude.ai/code) when working with
code in this repository.

## Critical Rules

These rules override all other instructions:

1. **NEVER commit directly to main** - Always create a feature branch and submit a pull request
1. **NEVER commit directly to main** - Always create a feature branch and submit
a pull request
2. **Conventional commits** - Format: `type(scope): description`
3. **GitHub Issues for TODOs** - Use `gh` CLI to manage issues, no local TODO files. Use conventional commit format for issue titles
3. **GitHub Issues for TODOs** - Use `gh` CLI to manage issues, no local TODO
files. Use conventional commit format for issue titles
4. **Pull Request titles** - Use conventional commit format (same as commits)
5. **Branch naming** - Use format: `type/scope/short-description` (e.g., `feat/action/new-input`)
5. **Branch naming** - Use format: `type/scope/short-description` (e.g.,
`feat/action/new-input`)
6. **Working an issue** - Always create a new branch from an updated main branch
7. **Check branch status before pushing** - Verify the remote tracking branch still exists. If a PR was merged/deleted, create a new branch from main instead
8. **No co-authors** - Do not add co-author information on commits or pull requests
9. **No "generated by" statements** - Do not add generated-by statements on pull requests
7. **Check branch status before pushing** - Verify the remote tracking branch
still exists. If a PR was merged/deleted, create a new branch from main
instead
8. **No co-authors** - Do not add co-author information on commits or pull
requests
9. **No "generated by" statements** - Do not add generated-by statements on pull
requests

## Project Overview

This is a GitHub Action that publishes JetBrains plugins to the JetBrains Marketplace. It's a TypeScript-based action that uses the JetBrains Plugin Repository API to upload plugin ZIP files.
This is a GitHub Action that publishes JetBrains plugins to the JetBrains
Marketplace. It's a TypeScript-based action that uses the JetBrains Plugin
Repository API to upload plugin ZIP files.

## Common Commands

Expand Down Expand Up @@ -47,12 +57,17 @@ npm run all

## Architecture

**Single-file action**: The action entry point is `src/index.ts`, which is bundled to `dist/index.js` using `@vercel/ncc`. The action:
1. Reads inputs via `@actions/core` (marketplace PAT, archive path, plugin ID, channel, etc.)
**Single-file action**: The action entry point is `src/index.ts`, which is
bundled to `dist/index.js` using `@vercel/ncc`. The action:

1. Reads inputs via `@actions/core` (marketplace PAT, archive path, plugin ID,
channel, etc.)
2. Validates the ZIP file exists
3. Uploads to `https://plugins.jetbrains.com/plugin/uploadPlugin` via multipart form POST
3. Uploads to `https://plugins.jetbrains.com/plugin/uploadPlugin` via multipart
form POST

**Action configuration**: `action.yml` defines the action metadata and inputs. The action runs on Node 20.
**Action configuration**: `action.yml` defines the action metadata and inputs.
The action runs on Node 20.

**Tests**: Located in `__tests__/` directory, using Jest with ts-jest preset.

Expand Down
26 changes: 15 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,24 @@

🚀 Publish your JetBrains plugins to the marketplace with ease!

This GitHub Action publishes your JetBrains plugin (ZIP archive) to the JetBrains Marketplace.
This GitHub Action publishes your JetBrains plugin (ZIP archive) to the
JetBrains Marketplace.

## 🚀 Usage

You can use the JetBrains Marketplace Publisher GitHub Action by configuring a YAML-based workflow file, e.g. `.github/workflows/deploy.yml`.
You can use the JetBrains Marketplace Publisher GitHub Action by configuring a
YAML-based workflow file, e.g. `.github/workflows/deploy.yml`.

## 📥 Inputs

| Input | Required | Description |
|-------|----------|-------------|
| `marketplace-pat` | Yes | Your Personal Access Token for the JetBrains Marketplace |
| `archive-path` | Yes | Path to the local ZIP package to publish |
| `plugin-id` | No* | Plugin ID from the JetBrains Marketplace URL |
| `plugin-xml-id` | No* | Unique identifier from the `<id>` tag in plugin.xml |
| `channel` | No | Channel to publish to (default: `stable`) |
| `is-hidden` | No | Make the update hidden after approval (default: `false`) |
| Input | Required | Description |
| ----------------- | -------- | -------------------------------------------------------- |
| `marketplace-pat` | Yes | Your Personal Access Token for the JetBrains Marketplace |
| `archive-path` | Yes | Path to the local ZIP package to publish |
| `plugin-id` | No\* | Plugin ID from the JetBrains Marketplace URL |
| `plugin-xml-id` | No\* | Unique identifier from the `<id>` tag in plugin.xml |
| `channel` | No | Channel to publish to (default: `stable`) |
| `is-hidden` | No | Make the update hidden after approval (default: `false`) |

> ⚠️ **Note:** One of `plugin-id` or `plugin-xml-id` is required, but not both.

Expand Down Expand Up @@ -52,7 +54,9 @@ steps:
## 👥 Contributors

<!-- readme: contributors -start -->
[![CalvinAllen](https://avatars.githubusercontent.com/u/41448698?v=4&s=64)](https://github.com/CalvinAllen)

[![CalvinAllen](https://avatars.githubusercontent.com/u/41448698?v=4&s=64)](https://github.com/CalvinAllen)

<!-- readme: contributors -end -->

## 📄 License
Expand Down
Loading