@atom-ide-community/setup-atom
v1.2.0
Published
Setup Atom and APM
Downloads
7
Readme
Setup Atom and APM
Downloads Atom and add atom
and apm
to the PATH
This may be used as an action in GitHub Actions or run with npx @atom-ide-community/setup-atom
as an npm package in GitHub Actions, Travis-CI, and AppVeyor. (It might work in other CI environments but it is only tested in those environments).
GitHub Action
Inputs
channel
The channel to test. Default "stable"
.
Example usage
uses: atom-community/action-setup-atom@v1
with:
channel: 'beta'
Full Example
This example runs tests against Atom stable and beta on Linux, Windows, and MacOS.
jobs:
Test:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
channel: [stable, beta]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: atom-community/action-setup-atom@v1
with:
channel: ${{ matrix.channel }}
- name: Atom version
run: atom -v
- name: APM version
run: apm -v
- name: Install dependencies
run: apm ci
- name: Run tests 🧪
run: atom --test spec
npm package
npx @atom-ide-community/setup-atom [ATOM_CHANNEL] [DOWNLOAD_FOLDER]
Examples
GitHub Action
jobs:
Test:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
channel: [stable, beta]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Download Atom
- run: npx @atom-ide-community/setup-atom ${{ matrix.channel }}
- name: Atom version
run: atom -v
- name: APM version
run: apm -v
- name: Install dependencies
run: apm ci
- name: Run tests 🧪
run: atom --test spec
Travis-CI
Travis CI doesn't persist the PATH
between scripts so setup-atom
writes to a file ../env.sh
which can be used to export the variables with source ../env.sh
. If anyone knows a way around this a PR would be appreciated. 😉👍
see https://github.com/travis-ci/travis-ci/issues/7472
before_script:
- npx @atom-ide-community/setup-atom ${ATOM_CHANNEL}
- source ../env.sh # This is needed to persist the PATH between steps
script:
- atom -v
- apm -v
- apm ci
- atom --test spec
jobs:
include:
- stage: spec tests 👩🏽💻
os: linux
env: ATOM_CHANNEL=stable
- os: linux
env: ATOM_CHANNEL=beta
- os: osx
env: ATOM_CHANNEL=stable
- os: osx
env: ATOM_CHANNEL=beta
AppVeyor
environment:
matrix:
- ATOM_CHANNEL: stable
- ATOM_CHANNEL: beta
install:
- ps: Install-Product node lts
- npm install
before_build:
- npx @atom-ide-community/setup-atom %ATOM_CHANNEL%
build_script:
- atom -v
- apm -v
- apm ci
- atom --test spec