Skip to content

Merge pull request #58 from boxp/pane-centric-state-handling #128

Merge pull request #58 from boxp/pane-centric-state-handling

Merge pull request #58 from boxp/pane-centric-state-handling #128

Workflow file for this run

name: CI
on:
push:
branches: [main]
paths:
- 'src/**'
- 'test/**'
- 'e2e/**'
- 'resources/**'
- 'deps.edn'
- 'build.clj'
- '.clj-kondo/**'
- '.github/workflows/ci.yml'
- 'renovate.json5'
pull_request:
branches: [main]
paths:
- 'src/**'
- 'test/**'
- 'e2e/**'
- 'resources/**'
- 'deps.edn'
- 'build.clj'
- '.clj-kondo/**'
- '.github/workflows/ci.yml'
- 'renovate.json5'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: DeLaGuardo/setup-clojure@13.1
with:
cli: latest
- uses: actions/cache@v4
with:
path: |
~/.m2/repository
~/.gitlibs
~/.clojure/.cpcache
key: ${{ runner.os }}-clojure-${{ hashFiles('deps.edn') }}
restore-keys: ${{ runner.os }}-clojure-
- name: Lint
run: clojure -M:lint
- name: Format check
run: clojure -M:format-check
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: DeLaGuardo/setup-clojure@13.1
with:
cli: latest
- uses: actions/cache@v4
with:
path: |
~/.m2/repository
~/.gitlibs
~/.clojure/.cpcache
key: ${{ runner.os }}-clojure-${{ hashFiles('deps.edn') }}
restore-keys: ${{ runner.os }}-clojure-
- name: Test
run: clojure -M:test
native-e2e:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v4
- uses: graalvm/setup-graalvm@v1
with:
java-version: '21'
distribution: 'graalvm'
native-image-job-reports: 'true'
- uses: DeLaGuardo/setup-clojure@13.1
with:
cli: latest
- uses: actions/cache@v4
with:
path: |
~/.m2/repository
~/.gitlibs
~/.clojure/.cpcache
key: ${{ runner.os }}-clojure-native-${{ hashFiles('deps.edn') }}
restore-keys: ${{ runner.os }}-clojure-native-
- name: Build uberjar
run: clojure -T:build uber
- name: Build native image
run: |
native-image \
-jar target/ceeker.jar \
-o ceeker
- name: Install tmux
run: sudo apt-get install -y tmux
- name: Run native E2E tests
run: |
chmod +x e2e/native-e2e.sh
./e2e/native-e2e.sh ./ceeker
- name: Upload diagnostics
if: failure()
uses: actions/upload-artifact@v4
with:
name: native-e2e-diagnostics
path: e2e-diagnostics/
retention-days: 7