summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorCaspian Baska <email@caspian.computer>2021-08-06 17:40:32 +1000
committerGitHub <noreply@github.com>2021-08-06 00:40:32 -0700
commitef5df36a8afb13b4f8296c28e86ee8cacc0f8123 (patch)
tree3563c6d54edc566b59275eac9332671a987cd8c0 /.github
parent9b74cf32250cab44d802971b5cd8597cf2a2200b (diff)
downloadinvidious-ef5df36a8afb13b4f8296c28e86ee8cacc0f8123.tar.gz
invidious-ef5df36a8afb13b4f8296c28e86ee8cacc0f8123.tar.bz2
invidious-ef5df36a8afb13b4f8296c28e86ee8cacc0f8123.zip
Add nightly crystal to CI matrix (#2264)
* Add nightly crystal to a spec matrix This project is very large and serves as a great test bed for breakages in nightly builds of crystal * Order crystal version in CI matrix * Add daily CI runs
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/ci.yml45
1 files changed, 31 insertions, 14 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 99aac794..f98fe098 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -1,6 +1,8 @@
name: Invidious CI
on:
+ schedule:
+ - cron: "0 0 * * *" # Every day at 00:00
push:
branches:
- "master"
@@ -23,32 +25,47 @@ on:
jobs:
build:
-
+
runs-on: ubuntu-latest
-
+
+ name: "build - crystal: ${{ matrix.crystal }}, stable: ${{ matrix.stable }}"
+
+ continue-on-error: ${{ !matrix.stable }}
+
+ strategy:
+ fail-fast: false
+ matrix:
+ stable: [true]
+ crystal:
+ - 1.0.0
+ - 1.1.0
+ include:
+ - crystal: nightly
+ stable: false
+
steps:
- uses: actions/checkout@v2
-
+
- name: Install Crystal
uses: oprypin/install-crystal@v1.2.4
with:
- crystal: 1.0.0
-
+ crystal: ${{ matrix.crystal }}
+
- name: Cache Shards
uses: actions/cache@v2
with:
path: ./lib
key: shards-${{ hashFiles('shard.lock') }}
-
+
- name: Install Shards
run: |
if ! shards check; then
shards install
fi
-
+
- name: Run tests
run: crystal spec
-
+
- name: Run lint
run: |
if ! crystal tool format --check; then
@@ -56,20 +73,20 @@ jobs:
git diff
exit 1
fi
-
+
- name: Build
run: crystal build --warnings all --error-on-warnings --error-trace src/invidious.cr
-
+
build-docker:
-
+
runs-on: ubuntu-latest
-
+
steps:
- uses: actions/checkout@v2
-
+
- name: Build Docker
run: docker-compose up -d
-
+
- name: Test Docker
run: while curl -Isf http://localhost:3000; do sleep 1; done