Socket
Socket
Sign inDemoInstall

ci-info

Package Overview
Dependencies
0
Maintainers
2
Versions
31
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

ci-info

Get details about the current Continuous Integration environment


Version published
Maintainers
2
Weekly downloads
44,461,395
decreased by-8.54%

Weekly downloads

Package description

What is ci-info?

The ci-info npm package provides information about the Continuous Integration (CI) environment that your code is running in. It can detect if the current environment is a CI server and provide details about which one it is. This is useful for adjusting the behavior of your application or scripts based on whether they are being run in a CI environment or not.

What are ci-info's main functionalities?

Detecting CI environment

This feature allows you to check if your code is running in a CI environment. The property 'isCI' will be true if it is, or false otherwise.

const ci = require('ci-info');

if (ci.isCI) {
  console.log('The code is running in a CI environment.');
} else {
  console.log('This is not a CI environment.');
}

Identifying specific CI service

This feature allows you to check for specific CI services. Each supported CI service has a corresponding property that will be true if the code is running on that service.

const ci = require('ci-info');

if (ci.TRAVIS) {
  console.log('The code is running on Travis CI.');
}

Getting CI service name

This feature allows you to retrieve the name of the CI service that the code is running on, if it is running in a CI environment.

const ci = require('ci-info');

if (ci.isCI) {
  console.log(`The CI service name is ${ci.name}`);
}

Other packages similar to ci-info

Readme

Source

ci-info

Get details about the current Continuous Integration environment.

Please open an issue if your CI server isn't properly detected :)

npm Tests js-standard-style

Installation

npm install ci-info --save

Usage

var ci = require('ci-info')

if (ci.isCI) {
  console.log('The name of the CI server is:', ci.name)
} else {
  console.log('This program is not running on a CI server')
}

Supported CI tools

Officially supported CI servers:

NameConstantisPR
AWS CodeBuildci.CODEBUILD🚫
AppVeyorci.APPVEYOR
Azure Pipelinesci.AZURE_PIPELINES
Appcircleci.APPCIRCLE🚫
Bamboo by Atlassianci.BAMBOO🚫
Bitbucket Pipelinesci.BITBUCKET
Bitriseci.BITRISE
Buddyci.BUDDY
Buildkiteci.BUILDKITE
CircleCIci.CIRCLE
Cirrus CIci.CIRRUS
Codefreshci.CODEFRESH
Codeshipci.CODESHIP🚫
Droneci.DRONE
dsarici.DSARI🚫
Expo Application Servicesci.EAS_BUILD🚫
GitHub Actionsci.GITHUB_ACTIONS
GitLab CIci.GITLAB
GoCDci.GOCD🚫
Hudsonci.HUDSON🚫
Jenkins CIci.JENKINS
LayerCIci.LAYERCI
Magnum CIci.MAGNUM🚫
Netlify CIci.NETLIFY
Nevercodeci.NEVERCODE
Renderci.RENDER
Sail CIci.SAIL
Screwdriverci.SCREWDRIVER
Semaphoreci.SEMAPHORE
Shippableci.SHIPPABLE
Solano CIci.SOLANO
Strider CDci.STRIDER🚫
TaskClusterci.TASKCLUSTER🚫
TeamCity by JetBrainsci.TEAMCITY🚫
Travis CIci.TRAVIS
Vercelci.VERCEL🚫
Visual Studio App Centerci.APPCENTER🚫

API

ci.name

Returns a string containing name of the CI server the code is running on. If CI server is not detected, it returns null.

Don't depend on the value of this string not to change for a specific vendor. If you find your self writing ci.name === 'Travis CI', you most likely want to use ci.TRAVIS instead.

ci.isCI

Returns a boolean. Will be true if the code is running on a CI server, otherwise false.

Some CI servers not listed here might still trigger the ci.isCI boolean to be set to true if they use certain vendor neutral environment variables. In those cases ci.name will be null and no vendor specific boolean will be set to true.

ci.isPR

Returns a boolean if PR detection is supported for the current CI server. Will be true if a PR is being tested, otherwise false. If PR detection is not supported for the current CI server, the value will be null.

ci.<VENDOR-CONSTANT>

A vendor specific boolean constant is exposed for each support CI vendor. A constant will be true if the code is determined to run on the given CI server, otherwise false.

Examples of vendor constants are ci.TRAVIS or ci.APPVEYOR. For a complete list, see the support table above.

Deprecated vendor constants that will be removed in the next major release:

  • ci.TDDIUM (Solano CI) This have been renamed ci.SOLANO

License

MIT

Keywords

FAQs

Last updated on 15 Jun 2022

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc