Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

fh-dev-tools

Package Overview
Dependencies
Maintainers
1
Versions
63
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fh-dev-tools

FeedHenry Development Tools

  • 2.0.2
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

fh-dev-tools

FeedHenry Development Tools

Install

npm install fh-dev-tools -g

Some commands require the fhcap-cli dev tool to be installed. A version of the fhcap-cli gem is bundled inside of the node module, you should see output similar to the following during the npm install:

  ###################   Install fhcap-cli   ###################

   gem install /usr/local/lib/node_modules/fh-dev-tools/fhcap/pkg/*.gem --local

  #############################################################

Run the outputed command to install a compatible version of the fhcap-cli gem:

gem install /usr/local/lib/node_modules/fh-dev-tools/fhcap/pkg/*.gem --local

More info on fhcap-cli usage and requirements can be found here

Usage

See Available Commands

fh

e.g.

Usage: fh <command> [options] [--debug] [--noprompt]

Commands:
  setup           Setup this tool
  start           [Dev] Start the development work of an issue
  review          [Dev] Create/update pull requests to review the development
                  work
  builds          [Dev] Show latest successful builds associated with a ticket
  deploy          [Dev] Deploy builds associated with a ticket via fhcap
  merge           [Dev] Merge all the pull requests associated with the ticket
  finish          [Dev] Merge all the pull requests associated with the ticket
                  and resolve the ticket
  contrib         [Dev] List contributors of a component
  start-release   [Release] Start the release - create the release branches
  release         [Release] Perform the steps required for a release
  finish-release  [Release] Finish the release
  tag-release     [Release] Tags components for a release. Done as part of
                  finish-release, but can be run separately
  changelog       [Release] Generate release changelog
  components      [Release] Generate release components versions
  release-notes   [Release] Generate release notes for a version
  versions        [Release] Show all release versions
  release-email   [Release] Send the release email
  report          [Util] Generate weekly JIRA report
  pw              [Util] Lookup a component password e.g. mysql, mongo
  qe-status       [QE] Generate weekly QE status from status emails and JIRA
  test-release    [QE] Assign testers to a release and kick-off testing process
  clone           [Util] Git clone copies of various components from fheng

Options:
  --debug     Show debug level logging
  --noprompt  Skip all the prompts
  --version   Show version number                                      [boolean]

Setup

fh setup

Then answer the questions.

About Github token

During setup, this tool will ask for your Github access token for sending pull requests. This will ensure things work even if you are using two factor authentication.

About Email Setup

During setup, this tool will ask for your Gmail user name and App Password for sending out emails. You should not use your Gmail account's user password here.

If you choose not to set the password, the tool will print out the email content to the console so you can compose the email using other tools. However, the email content will be in Markdown and you may need other tools to support editing emails in Markdown (e.g. You can try Markdown Here). But there is no way to support Mail.app at the moment.

A note about repo setup

By default, this tool will assume there are 2 remotes setup for each component repo:

  • origin - the forked component repo in your own GH account
  • upstream - the original component repo in then fheng organisation account

Many of the commands allows you to override the base branch. See each command's help information for more details.

Commands for dev flow

Start working on a JIRA ticket

fh start -t [JIRA Ticket]

This command will:

  • Get the JIRA ticket details, figure out what components will be changed
  • Creating the new branch in each of the affected component
  • Update the ticket status to 'coding in progress'

Creating PRs for buils and code reviews

fh review -t [JIRA Ticket]

This command will:

  • Get the JIRA ticket details, figure out what components are changed
  • Check if a rebase is required before creating the PR
  • Check if the same PR is already created for those components
  • Create the PR for each component
  • Update the ticket status to 'pull request sent' and add the links of the pull requests

Deploy to PPA

fh deploy -t [JIRA Ticket] -c [Staging Cluster e.g. ppa3 or ppa4]

This command will:

  • Get all the component builds associated with the JIRA ticket
  • Update the component cookbooks in FHCAP
  • Start the deployment to the specified PPA cluster if user agrees

Finish with the JIRA ticket

fh finish -t [JIRA Ticket]

This command will:

  • Get all the PRs associated with the JIRA ticket
  • Try to merge each PR
    • Will check if rebasing is required
    • Prompt user for squashing commits
    • Push to both origin and upstream
    • Delete the merged branches automatically
  • Resolve the JIRA ticket

Assign testers to the release

fh test-release -r <release-version1> [-r <release-version2>] [-b <build1> -b <build2> ...] [-t <tester-id1:tester-assignment1> ...]

This command will:

  • Get all issues marked as Resolved, Ready For QA or Verified for given release(s) and given build(s)
  • Will check all issues that are Ready For QA and do not have a Tester assigned or their tester was not enumerated on command line and randomly assign tester
  • Provides an email to be sent to mobile-qa-list@redhat.com

How testers are identified?

  • If no tester(s) are provided, all QE team is evenly split for issues to be verified
  • If you provide a tester, you must specify his/her assignment after colon. It can be any number and it will represent relative part to total sum of assignments provided on command line

FAQs

Package last updated on 12 Oct 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc