-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
GDL-9 publish npm package to registry
- Loading branch information
Showing
3 changed files
with
129 additions
and
23 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
--- | ||
name: Release | ||
|
||
run-name: release ${{ inputs.tag }} | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
tag: | ||
description: 'Tag to be released' | ||
required: true | ||
|
||
jobs: | ||
publish: | ||
permissions: | ||
packages: write | ||
id-token: write | ||
contents: read | ||
env: | ||
VERSION: ${{ inputs.tag }} | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
- name: Set env vars | ||
run: | | ||
echo PKG_VERSION="$(jq -r .version < package.json)" >> $GITHUB_ENV | ||
echo PKG_NAME="$(jq -r .name < package.json)" >> $GITHUB_ENV | ||
echo PKG_BASENAME="$(basename $(jq -r .name < package.json))" >> $GITHUB_ENV | ||
- name: Ensure the branch is protected | ||
run: | | ||
if [[ "${{ github.ref_protected }}" = "false" ]]; then | ||
echo "::error::The branch ${{ github.ref }} is not protected" | ||
exit 1 | ||
fi | ||
- name: Ensure tag has not been released | ||
run: | | ||
TAG_EXISTS=$(git tag -l "${{ inputs.tag }}") | ||
if [[ -n "$TAG_EXISTS" ]]; then | ||
echo "::error::The tag ${{ inputs.tag }} already exists" | ||
exit 1 | ||
fi | ||
- name: Ensure version is properly set | ||
run: | | ||
if ! [[ "$PKG_VERSION" = "$VERSION" ]]; then | ||
echo "::error file=package.json,line=$(sed -n '/"version":/=' package.json)::The tag $VERSION must match the version $PKG_VERSION specified in package.json" | ||
exit 1 | ||
fi | ||
- name: Setup node with GitHub Packages | ||
uses: actions/setup-node@v4 | ||
with: | ||
cache: yarn | ||
node-version: '16' | ||
registry-url: https://npm.pkg.github.com | ||
- name: install dependencies | ||
run: yarn install --frozen-lockfile | ||
- name: Publish to GitHub Packages | ||
run: npm publish --provenance | ||
env: | ||
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
- name: Setup node with npmjs.org | ||
uses: actions/setup-node@v4 | ||
with: | ||
registry-url: https://registry.npmjs.org | ||
- name: Publish to npmjs.org | ||
run: npm publish --provenance | ||
env: | ||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | ||
- name: Create Release | ||
uses: softprops/action-gh-release@v2 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
with: | ||
tag_name: ${{ inputs.tag }} | ||
name: Release ${{ inputs.tag }} | ||
target_commitish: ${{ github.sha }} | ||
append_body: | | ||
Github Packages: https://github.com/${{ github.repository }}/pkgs/npm/${{ env.PKG_BASENAME }} | ||
npmjs: https://www.npmjs.com/package/${{ env.PKG_NAME }}/v/${{ env.PKG_VERSION }} |
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,49 @@ | ||
{ | ||
"name": "eslint-config-scality", | ||
"name": "@scality/eslint-config", | ||
"version": "7.10.2", | ||
"description": "ESLint config for Scality's Node.js coding guidelines", | ||
"bin": { | ||
"mdlint": "./bin/mdlint.js" | ||
"mdlint": "bin/mdlint.js" | ||
}, | ||
"main": "index.js", | ||
"scripts": { | ||
"test": "npm run --silent lint && npm run --silent lint_md", | ||
"lint": "node_modules/.bin/eslint -c index.js $(git ls-files '*.js')", | ||
"lint": "eslint -c index.js $(git ls-files '*.js')", | ||
"lint_md": "node bin/mdlint.js $(git ls-files '*.md')" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/scality/Guidelines" | ||
"url": "git+https://github.com/scality/Guidelines.git" | ||
}, | ||
"dependencies": { | ||
"commander": "1.3.2", | ||
"markdownlint": "^0.25.1" | ||
}, | ||
"bugs": { | ||
"url": "https://github.com/scality/Guidelines/issues" | ||
}, | ||
"devDependencies": { | ||
"babel-eslint": "6.1.2", | ||
"eslint": "^8.7.0", | ||
"eslint-config-airbnb": "6.2.0" | ||
}, | ||
"keywords": [ | ||
"eslint", | ||
"eslintconfig", | ||
"config", | ||
"airbnb", | ||
"scality", | ||
"javascript", | ||
"markdown", | ||
"scality", | ||
"styleguide" | ||
], | ||
"author": "Giorgio Regni", | ||
"author": "Scality Object Squad <object-squad@scality.com>", | ||
"license": "Apache-2.0", | ||
"homepage": "https://github.com/scality/Guidelines", | ||
"engines": { | ||
"node": ">=16" | ||
} | ||
}, | ||
"publishConfig": { | ||
"access": "public" | ||
}, | ||
"files": [ | ||
"bin", | ||
"*.[c]js" | ||
] | ||
} |