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 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: UziTech/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: UziTech/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 specnpm package
npx 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 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 specTravis-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 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=betaAppVeyor
environment:
matrix:
- ATOM_CHANNEL: stable
- ATOM_CHANNEL: beta
install:
- ps: Install-Product node lts
- npm ci
before_build:
- npx setup-atom %ATOM_CHANNEL%
build_script:
- atom -v
- apm -v
- apm ci
- atom --test spec
Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
