npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@worksome/jira-branch-name-validator

v1.7.2

Published

A GitHub action for validating if the branch name is contains JIRA id

Downloads

3

Readme

JIRA Branch Name Validation Action

A GitHub action for validating if the branch name contains a JIRA id (as format) and whether the same JIRA id is contained in the PR title and commit message(s).

The same code is npm-packaged and used for local pre-commit validation of the branch name, only (via git hooks / husky). The PR title and commits are not checked locally because they are not relevant at this step in the workflow (PR doesn't have to exist when still developing locally and local commit messages can be whatever the developer wants - i.e. before squash and push).

Inputs

branch-name

Required The name of the branch to validate against.

pr-title

Required The title of the PR to validate

commits

Required The Github API response JSON containing the commits of the PR


Example usage

uses: worksome/jira-branch-name-validator-action@main
with:
  branch-name: $BRANCH_NAME

Full example usage

name: Code Analysis

on:
  pull_request

jobs:
  branchName:
    name: Branch Validation
    runs-on: ubuntu-latest
    steps:
      - uses: octokit/[email protected]
        id: get_pr_commits
        with:
          route: GET /repos/{owner}/{repo}/pulls/{pull_number}/commits
          owner: worksome
          repo: platform
          pull_number: ${{ github.event.pull_request.number }}
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      - name: Validate JIRA branch name and PR/commit consistency
        uses: worksome/[email protected]
        with:
          branch-name: ${{ github.event.pull_request.head.ref }}
          pr-title: ${{ github.event.pull_request.title }}
          commits: ${{ steps.get_pr_commits.outputs.data }}

Setting up for action development

npm i -g @vercel/ncc

Building and releasing the action

npm run build

The resulting (generated) code requires pushing to Github, after which a new release can be drafted with this new code as source. Once the PR is merged, a new release off main branch can be drafted with a major.minor.patch version. A release off the PR branch can be drafted with a major.minor.patch-rcnumber version or similar. To use the new action functionality on Github, the action needs to be published on the Github Marketplace (during release drafting).

Setting up for hook deployment

Access to Worksome npm registry is required. Ask about it in #devtalk New versions of the package should be published to the npm registry, trying to maintain version consistency between the npm package and the github action release version.

Testing

The github action requires the new version to be pushed to PR branch and a new release to be drafted (and published to github marketplace). After that, update the version of the github action as used in the "client" repository (as well as any other changes it might require, e.g. add newly introduced parameters to the module) and push and test (by triggering the relevant events, whenever possible).

The local branch validator can be manually triggered via

node_modules/.bin/branch-validator

on repositories that use the module (requires publish of the new package to worksome registry or locally).