Files
actions/npm-publish/README.md
Ismo Vuorinen 49d232f590 refactor: inline node-setup across Node.js actions
Phase 6A: Remove node-setup abstraction layer and inline Node.js setup.

Changes:
- Replace node-setup calls with direct actions/setup-node@v6.0.0
- Inline package manager detection (lockfile-based)
- Add Corepack enablement and package manager installation
- Use Node.js 22 as default version

Actions migrated (5):
- prettier-lint: Inline Node.js setup + package manager detection
- biome-lint: Inline Node.js setup + package manager detection
- eslint-lint: Inline Node.js setup + package manager detection
- pr-lint: Inline Node.js setup (conditional on package.json)
- npm-publish: Inline Node.js setup + package manager detection

Removed:
- node-setup/action.yml (371 lines)
- node-setup/README.md, rules.yml, CustomValidator.py
- _tests/unit/node-setup/validation.spec.sh
- _tests/integration/workflows/node-setup-test.yml
- validate-inputs/tests/test_node-setup_custom.py

Documentation updates:
- CLAUDE.md: Remove node-setup from action list (26 actions)
- generate_listing.cjs: Remove node-setup mappings
- update-validators.py: Remove node-setup custom validator

Result: 26 actions (down from 27), eliminated internal dependency layer.
2025-11-20 21:17:37 +02:00

66 lines
1.4 KiB
Markdown

# ivuorinen/actions/npm-publish
## Publish to NPM
### Description
Publishes the package to the NPM registry with configurable scope and registry URL.
### Inputs
| name | description | required | default |
| --- | --- | --- | --- |
| `npm_token` | <p>NPM token.</p> | `true` | `""` |
| `registry-url` | <p>Registry URL for publishing.</p> | `false` | `https://registry.npmjs.org/` |
| `scope` | <p>Package scope to use.</p> | `false` | `@ivuorinen` |
| `package-version` | <p>The version to publish.</p> | `false` | `${{ github.event.release.tag_name }}` |
| `token` | <p>GitHub token for authentication</p> | `false` | `""` |
### Outputs
| name | description |
| --- | --- |
| `registry-url` | <p>Registry URL for publishing.</p> |
| `scope` | <p>Package scope to use.</p> |
| `package-version` | <p>The version to publish.</p> |
### Runs
This action is a `composite` action.
### Usage
```yaml
- uses: ivuorinen/actions/npm-publish@main
with:
npm_token:
# NPM token.
#
# Required: true
# Default: ""
registry-url:
# Registry URL for publishing.
#
# Required: false
# Default: https://registry.npmjs.org/
scope:
# Package scope to use.
#
# Required: false
# Default: @ivuorinen
package-version:
# The version to publish.
#
# Required: false
# Default: ${{ github.event.release.tag_name }}
token:
# GitHub token for authentication
#
# Required: false
# Default: ""
```