upcruc
TypeScript icon, indicating that this package has built-in type declarations

0.2.3 • Public • Published

upcruc 🤢

UPcoming CRUCs. A node module and command line utility for managing Salesforce critical updates. upcruc retrieves the latest critical updates from your Salesfoce org including auto-activation dates. When used from the command line, upcruc prints each critical update to stdout for all your piping and redirection wizardry.

Usage

npm install upcruc

Notes

  • upcruc utilizes puppeteer in order to retrieve crucs via headless Chrome, which retrieves and installs a version of Chromium as a dependency
  • crucs are returned sorted by auto-activation date in chronological order (soonest first)

...as a Node module

const upcruc = require('upcruc'); 

// getCrucs() returns Promise<CRUC[]>
let crucs; 

// with no options (requires .env file in your project's root directory)
crucs = await upcruc.getCrucs(); 

// with options
const options = {
    runHeadless: true, // if false, a Chromium window will open 
    sessionId: 'someSessionId', // use to inject an existing session; .env file will be ignored when provided
    baseUrl: 'https://mysfinstance.my.salesforce.com' // required when sessionId value is included
}; 

crucs = await upcruc.getCrucs(options); 

...from the terminal

From command line:

<pathToUpcruc>/.bin/upcruc.js

upcruc.js simply wraps the upcruc module and prints each cruc to stdout (your terminal window) in tab-separated format, a la:

$ node <pathToUpcruc>/.bin/upcruc.js

# output:
activationDate  name    summary
11/30/2020      Super critical update.  More info here...
...

...in an NPM script

When you install upcruc the execution script gets copied to your <root>/node_modules/.bin folder and is accessible to your scripts. So, for example, you could add the following to your package.json file...

//...
"scripts": {
    "upcruc": "upcruc | less"
}
//...

...and then in a terminal, run npm run upcruc, and the resulting output would get piped to the less command. No symlink required!

Config

upcruc must authenticate to your org in order to pull down the most recent list of critical updates. It does so through use of a .env file which must reside in the root directory of your project. Do not commit this file to source control.

Your .env file must contain the following key/value pairs:

USERNAME=yourUsername
PASSWORD=yourPw
SEC_TOKEN=yourSecurityToken

You may also pass in an existing sessionId as shown above.

Package Sidebar

Install

npm i upcruc

Weekly Downloads

9

Version

0.2.3

License

MIT

Unpacked Size

51.9 kB

Total Files

12

Last publish

Collaborators

  • kev4ev