Skip to content

Resolve --compiler and --elm-format-path from PATH #1222

Resolve --compiler and --elm-format-path from PATH

Resolve --compiler and --elm-format-path from PATH #1222

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: CI
on:
# Run on pushes to the default branch.
push:
branches:
- main
# Run on all PRs.
pull_request:
types:
- opened
- synchronize
- reopened
# Support merge queues.
merge_group:
# Allow running this workflow manually from the Actions tab.
workflow_dispatch:
defaults:
run:
shell: bash
permissions:
contents: read
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
test:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Git checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: recursive
clean: true
persist-credentials: false
set-safe-directory: true
- name: Setup Node.js environment
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0
with:
node-version: 16.x
cache: 'npm'
- name: Cache ~/.elm
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2
with:
path: ~/.elm
key: elm-${{ runner.os }}-${{ hashFiles('**/elm.json', 'elm-tooling.json') }}
restore-keys: |
elm-${{ runner.os }}-
- name: Cache node_modules
id: cache-node_modules
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2
with:
path: node_modules
key: node_modules-${{ runner.os }}-${{ hashFiles('package-lock.json') }}
restore-keys: |
node_modules-${{ runner.os }}-
- name: Cache turbo build setup
uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2
with:
path: .turbo
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- name: npm ci
if: steps.cache-node_modules.outputs.cache-hit != 'true'
env:
NO_ELM_TOOLING_INSTALL: 1
run: npm ci --engine-strict
- name: elm-tooling install
run: npx --no-install elm-tooling install
- name: Install turbo
run: npm install -g turbo
- name: Run tests
run: npm test