ci: split ci into tests and release workflows

This commit is contained in:
Gauthier Roebroeck 2023-10-05 11:15:21 +08:00
parent 8ed57267b5
commit c6128ee67d
3 changed files with 68 additions and 68 deletions

View file

@ -1,18 +1,8 @@
name: CI
name: Release
on:
pull_request:
paths-ignore:
- 'komga-webui/src/locales/*'
push:
branches-ignore:
- 'dependabot/**'
workflow_dispatch:
inputs:
perform_release:
description: 'Perform release'
default: false
type: boolean
bump:
description: 'Bump type'
required: false
@ -41,63 +31,8 @@ on:
type: boolean
jobs:
test:
runs-on: ubuntu-latest
name: Test JDK ${{ matrix.java }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
with:
java-version: 19
java-package: 'jdk'
distribution: 'temurin'
- uses: actions/setup-java@v3
with:
java-version: 17
java-package: 'jdk'
distribution: 'temurin'
- name: Build
uses: gradle/gradle-build-action@v2
with:
arguments: build
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: test-results
path: komga/build/test-results/
- name: Upload Unit Test Reports
if: always()
uses: actions/upload-artifact@v3
with:
name: test-reports
path: komga/build/reports/tests/
webui:
runs-on: ubuntu-latest
name: Test webui builds
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '16'
cache: 'npm'
cache-dependency-path: komga-webui/package-lock.json
- name: npm install
working-directory: komga-webui
run: npm install
- name: npm build
working-directory: komga-webui
run: npm run build
env:
NODE_OPTIONS: "--max-old-space-size=4096"
- name: npm test
working-directory: komga-webui
run: npm run test:unit
version:
runs-on: macos-latest
if: inputs.perform_release || inputs.force_release
outputs:
version_current: ${{ steps.versions.outputs.version_current }}
version_next: ${{ steps.versions.outputs.version_next }}
@ -125,7 +60,7 @@ jobs:
release:
name: Release
runs-on: ubuntu-latest
needs: [ test, webui, version ]
needs: version
if: needs.version.outputs.should_release || inputs.force_release
steps:
- uses: actions/checkout@v4

65
.github/workflows/tests.yml vendored Normal file
View file

@ -0,0 +1,65 @@
name: Tests
on:
pull_request:
paths-ignore:
- 'komga-webui/src/locales/*'
push:
branches-ignore:
- 'dependabot/**'
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
name: Test server
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
with:
java-version: 19
java-package: 'jdk'
distribution: 'temurin'
- uses: actions/setup-java@v3
with:
java-version: 17
java-package: 'jdk'
distribution: 'temurin'
- name: Build
uses: gradle/gradle-build-action@v2
with:
arguments: build
- name: Upload Unit Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: test-results
path: komga/build/test-results/
- name: Upload Unit Test Reports
if: always()
uses: actions/upload-artifact@v3
with:
name: test-reports
path: komga/build/reports/tests/
webui:
runs-on: ubuntu-latest
name: Test webui builds
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '16'
cache: 'npm'
cache-dependency-path: komga-webui/package-lock.json
- name: npm install
working-directory: komga-webui
run: npm install
- name: npm build
working-directory: komga-webui
run: npm run build
env:
NODE_OPTIONS: "--max-old-space-size=4096"
- name: npm test
working-directory: komga-webui
run: npm run test:unit

View file

@ -1,7 +1,7 @@
[![Open Collective backers and sponsors](https://img.shields.io/opencollective/all/komga?label=OpenCollective%20Sponsors&color=success)](https://opencollective.com/komga) [![GitHub Sponsors](https://img.shields.io/github/sponsors/gotson?label=Github%20Sponsors&color=success)](https://github.com/sponsors/gotson)
[![Discord](https://img.shields.io/discord/678794935368941569?label=Discord&color=blue)](https://discord.gg/TdRpkDu)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/gotson/komga/ci.yml?branch=master)](https://github.com/gotson/komga/actions?query=workflow%3ACI+branch%3Amaster)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/gotson/komga/tests.yml?branch=master)](https://github.com/gotson/komga/actions?query=workflow%3ATests+branch%3Amaster)
[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/gotson/komga?color=blue&label=download&sort=semver)](https://github.com/gotson/komga/releases) [![GitHub all releases](https://img.shields.io/github/downloads/gotson/komga/total?color=blue&label=github%20downloads)](https://github.com/gotson/komga/releases)
[![Docker Pulls](https://img.shields.io/docker/pulls/gotson/komga)](https://hub.docker.com/r/gotson/komga)