JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 37835
  • Score
    100M100P100Q165759F
  • License ISC

Get private key from a path, environment variables, or a `*.pem` file in the current working directory

Package Exports

  • @probot/get-private-key
  • @probot/get-private-key/dist-node/index.js
  • @probot/get-private-key/dist-web/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@probot/get-private-key) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@probot/get-private-key

Get private key from a file path, environment variables, or a *.pem file in the current working directory

@latest Build Status

Finds a private key through various user-(un)specified methods. Order of precedence:

  1. Explicit file path option
  2. PRIVATE_KEY environment variable or explicit env.PRIVATE_KEY option. The private key can optionally be base64 encoded.
  3. PRIVATE_KEY_PATH environment variable or explicit env.PRIVATE_KEY_PATH option
  4. Any file w/ .pem extension in current working dir

Supports both PKCS1 (i.e -----BEGIN RSA PRIVATE KEY-----) and PKCS8 (i.e -----BEGIN PRIVATE KEY-----).

Usage

Browsers

@probot/get-private-key is not compatible with browser usage

Node

Install with npm install @probot/get-private-key

const { Probot } = require("probot");
const { getPrivateKey } = require("@probot/get-private-key");
const probot = new Probot({
  appId: 123,
  privateKey: getPrivateKey(),
});

Options

name type description
options.filepath string

Pass a path to a *.pem file. A relative path will be resolved to the current working directory (which you can set with the cwd option)

const privateKey = getPrivateKey({
  filepath: "private-key.pem",
});
options.cwd string

Defaults to process.cwd(). Used to resolve the filepath option and used as folder to find *.pem files.

const privateKey = getPrivateKey({
  cwd: "/app/current",
});
options.env object

Defaults to process.env. Pass env.PRIVATE_KEY or env.PRIVATE_KEY_PATH to workaround reading environment variables

const privateKey = getPrivateKey({
  env: {
    PRIVATE_KEY: "-----BEGIN RSA PRIVATE KEY-----\n...",
  },
});

LICENSE

ISC