mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2026-02-11 10:05:41 +00:00
CI: coverage seperated
This commit is contained in:
90
.github/workflows/coverage.yml
vendored
Normal file
90
.github/workflows/coverage.yml
vendored
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
name: CI (Linux)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
types: [opened, synchronize, reopened]
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build_and_test:
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
version:
|
||||||
|
- 1.51.0
|
||||||
|
|
||||||
|
name: ${{ matrix.version }} - x86_64-unknown-linux-gnu
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres
|
||||||
|
env:
|
||||||
|
POSTGRES_PASSWORD: password
|
||||||
|
POSTGRES_USER: postgres
|
||||||
|
POSTGRES_DB: postgres
|
||||||
|
options: >-
|
||||||
|
--health-cmd pg_isready
|
||||||
|
--health-interval 10s
|
||||||
|
--health-timeout 5s
|
||||||
|
--health-retries 5
|
||||||
|
ports:
|
||||||
|
- 5432:5432
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: ⚡ Cache
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/.cargo/registry
|
||||||
|
~/.cargo/git
|
||||||
|
node_modules
|
||||||
|
target
|
||||||
|
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
|
||||||
|
|
||||||
|
- uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: '14.x'
|
||||||
|
|
||||||
|
- name: Install JavaScript Dependencies
|
||||||
|
run: yarn install
|
||||||
|
|
||||||
|
- name: Run the tests
|
||||||
|
run: yarn test
|
||||||
|
|
||||||
|
- name: Install ${{ matrix.version }}
|
||||||
|
uses: actions-rs/toolchain@v1
|
||||||
|
with:
|
||||||
|
toolchain: ${{ matrix.version }}-x86_64-unknown-linux-gnu
|
||||||
|
profile: minimal
|
||||||
|
override: true
|
||||||
|
|
||||||
|
- name: Run migrations
|
||||||
|
uses: actions-rs/cargo@v1
|
||||||
|
with:
|
||||||
|
command: run
|
||||||
|
args: --bin tests-migrate
|
||||||
|
env:
|
||||||
|
DATABASE_URL: postgres://postgres:password@localhost:5432/postgres
|
||||||
|
|
||||||
|
- name: Generate coverage file
|
||||||
|
if: matrix.version == '1.51.0' && (github.ref == 'refs/heads/master' || github.event_name == 'pull_request')
|
||||||
|
uses: actions-rs/tarpaulin@v0.1
|
||||||
|
with:
|
||||||
|
version: '0.15.0'
|
||||||
|
args: '-t 1200'
|
||||||
|
env:
|
||||||
|
DATABASE_URL: postgres://postgres:password@localhost:5432/postgres
|
||||||
|
# GIT_HASH is dummy value. I guess build.rs is skipped in tarpaulin
|
||||||
|
# execution so this value is required for preventing meta tests from
|
||||||
|
# panicking
|
||||||
|
GIT_HASH: 8e77345f1597e40c2e266cb4e6dee74888918a61
|
||||||
|
OPEN_API_DOCS: 8e77345f1597e40c2e266cb4e6dee74888918a61
|
||||||
|
CACHE_BUSTER_FILE_MAP: '{"map":{"./static/bundle/main.js":"./prod/bundle/main.1417115E59909BE0A01040A45A398ADB09D928DF89CCF038FA44B14850442096.js"},"base_dir":"./prod"}'
|
||||||
|
|
||||||
|
- name: Upload to Codecov
|
||||||
|
if: matrix.version == '1.51.0' && (github.ref == 'refs/heads/master' || github.event_name == 'pull_request')
|
||||||
|
uses: codecov/codecov-action@v1
|
||||||
32
.github/workflows/linux.yml
vendored
32
.github/workflows/linux.yml
vendored
@@ -13,8 +13,8 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
version:
|
version:
|
||||||
- stable
|
- 1.51.0
|
||||||
- nightly
|
# - nightly
|
||||||
|
|
||||||
name: ${{ matrix.version }} - x86_64-unknown-linux-gnu
|
name: ${{ matrix.version }} - x86_64-unknown-linux-gnu
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -56,9 +56,6 @@ jobs:
|
|||||||
- name: Build Frontend
|
- name: Build Frontend
|
||||||
run: yarn build
|
run: yarn build
|
||||||
|
|
||||||
- name: Run the tests
|
|
||||||
run: yarn test
|
|
||||||
|
|
||||||
- name: Install ${{ matrix.version }}
|
- name: Install ${{ matrix.version }}
|
||||||
uses: actions-rs/toolchain@v1
|
uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
@@ -91,29 +88,8 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
DATABASE_URL: postgres://postgres:password@localhost:5432/postgres
|
DATABASE_URL: postgres://postgres:password@localhost:5432/postgres
|
||||||
|
|
||||||
- name: Generate coverage file
|
|
||||||
if: matrix.version == 'stable' && (github.ref == 'refs/heads/master' || github.event_name == 'pull_request')
|
|
||||||
uses: actions-rs/tarpaulin@v0.1
|
|
||||||
with:
|
|
||||||
version: '0.15.0'
|
|
||||||
args: '-t 1200'
|
|
||||||
env:
|
|
||||||
DATABASE_URL: postgres://postgres:password@localhost:5432/postgres
|
|
||||||
# GIT_HASH is dummy value. I guess build.rs is skipped in tarpaulin
|
|
||||||
# execution so this value is required for preventing meta tests from
|
|
||||||
# panicking
|
|
||||||
GIT_HASH: 8e77345f1597e40c2e266cb4e6dee74888918a61
|
|
||||||
OPEN_API_DOCS: 8e77345f1597e40c2e266cb4e6dee74888918a61
|
|
||||||
CACHE_BUSTER_FILE_MAP: '{"map":{"./static/bundle/main.js":"./prod/bundle/main.1417115E59909BE0A01040A45A398ADB09D928DF89CCF038FA44B14850442096.js"},"base_dir":"./prod"}'
|
|
||||||
|
|
||||||
- name: Upload to Codecov
|
|
||||||
if: matrix.version == 'stable' && (github.ref == 'refs/heads/master' || github.event_name == 'pull_request')
|
|
||||||
uses: codecov/codecov-action@v1
|
|
||||||
# with:
|
|
||||||
# files: cobertura.xml, ./coverage/clover.xml
|
|
||||||
|
|
||||||
- name: generate documentation
|
- name: generate documentation
|
||||||
if: matrix.version == 'stable' && (github.repository == 'mCaptcha/guard')
|
if: matrix.version == '1.51.0' && (github.repository == 'mCaptcha/guard')
|
||||||
uses: actions-rs/cargo@v1
|
uses: actions-rs/cargo@v1
|
||||||
with:
|
with:
|
||||||
command: doc
|
command: doc
|
||||||
@@ -124,7 +100,7 @@ jobs:
|
|||||||
OPEN_API_DOCS: 8e77345f1597e40c2e266cb4e6dee74888918a61
|
OPEN_API_DOCS: 8e77345f1597e40c2e266cb4e6dee74888918a61
|
||||||
|
|
||||||
- name: Deploy to GitHub Pages
|
- name: Deploy to GitHub Pages
|
||||||
if: matrix.version == 'stable' && (github.repository == 'mCaptcha/guard')
|
if: matrix.version == '1.51.0' && (github.repository == 'mCaptcha/guard')
|
||||||
uses: JamesIves/github-pages-deploy-action@3.7.1
|
uses: JamesIves/github-pages-deploy-action@3.7.1
|
||||||
with:
|
with:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|||||||
Reference in New Issue
Block a user