Home

Awesome

Atom and all repositories under Atom will be archived on December 15, 2022. Learn more in our official announcement

Atom Package CI Scripts

Templates for building your Atom package and running its specs:

Setting up CI for your package

GitHub Actions

Travis CI

Appveyor

CircleCI

FAQ

How do I install other Atom packages that my package build depends on?

Set the APM_TEST_PACKAGES environment variable in your CI configuration file to a space-separated list of packages to install before your package's tests run.

env:
  - APM_TEST_PACKAGES="autocomplete-plus some-other-package-here"

What version of Atom is used to run the specs?

It will always download the latest available version. You can read more about the latest Atom release here.

How does it work?

The apm test command assumes your package is using Jasmine specs. You can run the specs locally using Atom's spec runner UI from the View > Developer > Run Package Specs menu or by pressing cmd-ctrl-alt-p. You can run apm help test to learn more about that command.

GitHub Actions

The CI template uses the Atom setup Action to install and set up Atom on a runner. The script then installs dependencies from your package and runs the apm test command to run your package's specs.

Travis CI, CircleCI

The CI template downloads the build-package.sh from this repository. This script then downloads the latest Atom release, installs your package's dependencies, and runs the apm test command to run your package's specs.

Appveyor

The appveyor.yml template uses Chocolatey to download and install the latest version of Atom. apm install is run in your package directory to ensure any node dependencies are available. Finally, the script runs the apm test command to run your package's specs.

What does the output look like?

What packages use this?