0.1.1 • Published 8 months ago

git-refresher v0.1.1

Weekly downloads
-
License
MIT
Repository
github
Last release
8 months ago

Git Pulse

This tool will automatically pull the latest changes from a remote git repository and restart all PM2 processes after rebuilding the project.

Installation

npm i -g git-refresher

Optionally, you can choose to install the utility locally to the project:

# Using NPM
npm i git-refresher

# Using Yarn
yarn add git-refresher

Usage

You can use the CLI program directly using the following command:

git-refresher

This will check if the current branch is deploy and if it is out of sync with origin/deploy. If it is, it will pull the latest changes and restart all PM2 processes.

You can also specify the branch if you want to use a different one other than deploy:

git-refresher --branch main

Automating with PM2 (global install)

Add this app to your pm2.json ecosystem file:

{
  "apps": [
    {
      "name": "gitRefresher",
      "script": "git-refresher",
      "autorestart": false,
      "cron_restart": "*/5 * * * *"
    }
  ]
}

This will have the program run every 5 minutes, but you can adjust the cron to any value you want.

Note: Because git-refresher will restart all PM2 processes, the script will run once more after the app is repo is updated.

Automating with PM2 (local install)

If you've installed git-refresher locally to the project (not using npm i -g), then you must add this app to your pm2.json ecosystem file instead:

{
  "apps": [
    {
      "name": "gitRefresher",
      "script": "npx",
      "args": ["git-refresher"],
      "autorestart": false,
      "cron_restart": "*/5 * * * *"
    }
  ]
}

This uses npx instead to run git-refresher instead of running the globally installed bin.