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

@twexchangesolutions/hubot-jira-deployment

v0.15.4

Published

Hook used to ensure that all issues being deployed to production meet audit requirements

Downloads

15

Readme

jira-deployment-hook

Ensures that all deployments are associated with a Deployment Task and that that Deployment Task has all the proper approvals per our Audit Requirements.

Requirements:

  • Set of Hubot Scripts
    • @hubot deploy TW-123 where TW-123 is the Deployment Task to trigger
    • @hubot check TW-123 which performs a check of deployment task to ensure audit requirements are in check.
    • Help descriptions are output when running @hubot help
  • 1 Deployment Task must be specified
  • A Deployment Task must first go through a check operation before it can be deployed.
  • Deployment Tasks must have one or more issues linked as relates to.
  • During a check, the Deployment Task must be in the QA Approved state
    • The last change time on the Deployment Task must be the same as the last transition time, or hubot will move the Deployment Task back to Open and exit with an error.
    • If the two times are the same, it will transition to a Hubot Approved state.
  • During an actual deployment, the same check above happens, but checks for Hubot Approved state instead of QA Approved.
  • Each issue linked to a Deployment Task must be one of:
    • Story
    • Maintenance Task
    • Bug
  • Each of the issues linked (or one of their children) in the Deployment Task must appear in the Git history range at least once.
  • Each linked Story must:
    • In the 'Ready to Deploy' state
    • Linked to approved initiative
    • Have no open Sub-tasks or Feature Defects
  • Each linked Maintenance Task must:
    • In the 'Ready to Deploy' state
    • Have no open Sub-tasks or Feature Defects
  • Each linked Bug must:
    • In the 'Ready to Deploy' state
    • Have no open Sub-tasks or Feature Defects
  • Story, Bug, or Maintenance Task issues that are mentioned in the Deployment Task Audit Exceptions do not have to pass the above restrictions.1
  • Every linked issue or one of its subtasks or feature defects must appear in the Git History since last deployment
  • Any full 40 character git SHA mentioned in the Deployment Task Audit
  • Exceptions will be ignored during the cross reference step if it has no issues tagged in it. If there is an issue tagged in the commit that has its SHA in the Deployment Task Audit Exceptions field, that issue's key will still be used in the cross reference check.
  • When all checks are valid (NOT DONE IN CHECK MODE):
    • Tag the production build number in the Deployment Task.
    • Transition each linked relates to issue that is not mentioned in the Deployment Task Audit Exceptions field to Deployed.
    • Need to authenticate to Jira in order to do these, that configuration should come from environment variables (preferrably preffixed with HUBOT_) using a Jira Auth Token.
  • Detailed error output
    • Error output should list all offenses so they can all be easily addressed.
  • Progress output will be helpful for QA to know that Hubot is triggering builds and waiting for them to complete.
  • Should be fast, this will require a number of network requests so the work should be launched as parallel as possible.

Footnotes:

Deployment Tasks can be found at: http://jira.extendhealth.com/browse/TW-4384?jql=issuetype%20%3D%20%22Deployment%20Task%22

Production Publishers: http://teamcity.extendhealth.com/project.html?projectId=ProductionPublish&tab=projectOverview