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:
- Windows, macOS and Ubuntu Linux: Using GitHub Actions
- macOS and Ubuntu Linux: Using Travis CI
- Windows: Using Appveyor
- Ubuntu Linux / Docker: Using CircleCI
Setting up CI for your package
GitHub Actions
- Copy .github/workflows/main.yml to the same location in your package's repository tree
- :boom: Your package will now build and run its specs; you can see an example of a configured package here
Travis CI
- Sign up for an account on Travis CI
- Copy .travis.yml to the root of your package's repository
- Setup the Travis CI hook on your package's repository
- :boom: Your package will now build and run its specs; you can see an example of a configured package here
Appveyor
- Sign up for an account on Appveyor
- Add a new project
- Ensure the
Ignore appveyor.yml
setting inSettings > General
is unchecked - Copy appveyor.yml to the root of your package's repository
- :boom: Your package will now build and run its specs; you can see an example of a configured package here
CircleCI
- Sign up for an account on CircleCI
- Create a
.circleci
directory at the root of your project - Copy config.yml to the new directory
- Commit the changes and push them up to GitHub
- Add a new project on CircleCI
- :boom: Your package will now build and run its specs; you can see an example of a configured package here
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.