78 lines
2.2 KiB
YAML
78 lines
2.2 KiB
YAML
# This is a basic workflow to help you get started with Actions
|
|
|
|
name: CI
|
|
|
|
# Controls when the action will run.
|
|
on:
|
|
# Triggers the workflow on push or pull request events but only for the master branch
|
|
push:
|
|
branches: [ master ]
|
|
pull_request:
|
|
branches: [ master ]
|
|
|
|
# Allows you to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
|
jobs:
|
|
test_stable:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
firefox: [ '73.0' ]
|
|
include:
|
|
- nim-version: 'stable'
|
|
cache-key: 'stable'
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Setup firefox
|
|
uses: browser-actions/setup-firefox@latest
|
|
with:
|
|
firefox-version: ${{ matrix.firefox }}
|
|
|
|
- name: Get Date
|
|
id: get-date
|
|
run: echo "::set-output name=date::$(date "+%Y-%m-%d")"
|
|
shell: bash
|
|
|
|
- name: Cache choosenim
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: ~/.choosenim
|
|
key: ${{ runner.os }}-choosenim-${{ matrix.cache-key }}
|
|
|
|
- name: Cache nimble
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: ~/.nimble
|
|
key: ${{ runner.os }}-nimble-${{ hashFiles('*.nimble') }}
|
|
|
|
- uses: jiro4989/setup-nim-action@v1
|
|
with:
|
|
nim-version: "${{ matrix.nim-version }}"
|
|
|
|
- name: Install geckodriver
|
|
run: |
|
|
sudo apt-get -qq update
|
|
sudo apt-get install autoconf libtool libsass-dev
|
|
|
|
wget https://github.com/mozilla/geckodriver/releases/download/v0.29.1/geckodriver-v0.29.1-linux64.tar.gz
|
|
mkdir geckodriver
|
|
tar -xzf geckodriver-v0.29.1-linux64.tar.gz -C geckodriver
|
|
export PATH=$PATH:$PWD/geckodriver
|
|
|
|
- name: Install choosenim
|
|
run: |
|
|
export CHOOSENIM_CHOOSE_VERSION="stable"
|
|
curl https://nim-lang.org/choosenim/init.sh -sSf > init.sh
|
|
sh init.sh -y
|
|
export PATH=$HOME/.nimble/bin:$PATH
|
|
nimble refresh -y
|
|
|
|
- name: Run tests
|
|
run: |
|
|
export MOZ_HEADLESS=1
|
|
nimble -y install
|
|
nimble -y test
|
|
|