Giter Site home page Giter Site logo

gkalpak / ng-cla-check Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 165 KB

A utility for checking if an (AngularJS-related) GitHub PR has a signed CLA (based on its labels).

Home Page: https://www.npmjs.com/package/@gkalpak/ng-cla-check

License: The Unlicense

JavaScript 100.00%

ng-cla-check's Introduction

ng-cla-check Build Status

Description

A utility for checking if an (AngularJS-related) GitHub PR has a signed CLA (based on its labels).

Usage

Using from the command-line

# Show version info
ng-cla-check --version

# Show usage instructions
ng-cla-check --usage

# Check a PR
ng-cla-check 12345

You can optionally specify the GitHub repo and/or CLA label to check for (by default angular/angular.js and cla: yes respectively):

# Use non-default repo and CLA label
ng-cla-check 12345 --repo="some-user/some-repo" --claLabel="some text"

Note: To use a GitHub access-token, make it available in an environment variable named GITHUB_ACCESS_TOKEN.

Using from other modules

let Checker = require('@gkalpak/ng-cla-check');
let checker = new Checker(/* Use default options */);

checker.check(prNo).then(
    () => {
      // CLA verified successfully.
    },
    err => {
      // Unable to verify CLA...
      if (err) {
        // ...because an error occurred (e.g. network error, authentication error, etc).
      } else {
        // ...because it was probably not signed.
      }
    });

You can also pass custom ghToken, claLabel or repo options:

let checker = new Checker({
  ghToken: '...',   // Pass `false` to force anonymous (rate-limited) requests to the GitHub API.
  claLabel: 'some text',
  repo: 'some-user/some-repo'
});

Note: For convenience, the name of the GitHub access-token environment variable can be retrieved with Checker.getGhTokenVar().

Finally, you can prevent the checker from logging any messages to the console (e.g. warn when no GitHub access-token is available), by passing true as the second argument:

let quiet = true;
let checker = new Checker(null, quiet);

Testing

The following test-types/modes are available:

  • Code-linting: npm run lint Lint JavaScript files using ESLint.

  • Unit tests: npm run test-unit Run all the unit tests once. These tests are quick and suitable to be run on every change.

  • E2E tests: npm run test-e2e Run all the end-to-end tests once. These test may hit actual API endpoints and are considerably slower than unit tests.

  • All tests: npm test / npm run test Run all of the above tests (code-linting, unit tests, e2e tests). This command is automatically run before npm version and npm publish.

  • "Watch" mode: npm run test-watch Watch all files and rerun the unit tests whenever something changes. For performance reasons, code-linting and e2e tests are omitted.

ng-cla-check's People

Contributors

gkalpak avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.