Skip to content

flex-development/npm-url-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

npm-url

github release test module type: esm license conventional commits yarn

Create a URL for the NPM registry

Contents

What is this?

This is a simple action for creating NPM registry URLs.

Use

---
name: publish
on:
  release:
    types:
      - published
jobs:
  preflight:
    runs-on: ubuntu-latest
    outputs:
      environment: ${{ steps.environment.outputs.url }}
      version: ${{ steps.version.outputs.manifest }}
    steps:
      - id: checkout
        name: Checkout ${{ github.ref_name }}
        uses: actions/checkout@v5.0.0
        with:
          persist-credentials: false
          ref: ${{ github.ref }}
      - id: version
        name: Get package version
        uses: flex-development/manver-action@1.0.1
      - id: environment
        name: Get environment url
        uses: flex-development/npm-url-action@1.0.0
        with:
          scope: ${{ github.repository_owner }}
          version: ${{ steps.version.outputs.manifest }}
  npm:
    needs: preflight
    permissions:
      contents: read
      id-token: write
      packages: write
    runs-on: ubuntu-latest
    environment:
      name: npm
      url: ${{ needs.preflight.outputs.environment }}
    steps:
      - id: npmrc
        name: Setup .npmrc file
        uses: actions/setup-node@v5.0.0
        with:
          always-auth: true
          registry-url: https://registry.npmjs.org
          scope: ${{ github.repository_owner }}
      - id: dist-tag
        name: Get dist tag
        uses: flex-development/dist-tag-action@1.1.2
        with:
          target: ${{ needs.preflight.outputs.version }}
      - id: publish
        name: Publish package
        env:
          ARTIFACT: ${{ github.event.release.assets[0].browser_download_url }}
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
        run: npm publish --provenance ${{ steps.dist-tag.outputs.flag }} $ARTIFACT

Inputs

pkg

default: ${{ github.event.repository.name }}

The name of the package (optional).

scope

The scope of the package (optional).

version

The version of the package to include in the URL (optional).

Outputs

url

The public registry URL.

Related

Contribute

See CONTRIBUTING.md.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

Sponsor this project

 

Contributors 3

  •  
  •  
  •