Skip to content

Use static import statements for assertions (#7261) #2823

Use static import statements for assertions (#7261)

Use static import statements for assertions (#7261) #2823

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: CI
# Controls when the action will run.
on:
# Triggers the workflow on push and pull request events but only for pull_requests on the main branch
push:
pull_request:
branches: [ main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-24.04
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: install imagemagick (convert command required by kitodo-image-management)
run: |
sudo apt-get update
sudo apt-get install -y imagemagick
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v7
- name: copy files
run: |
cp $GITHUB_WORKSPACE/config/database.yml.actions $GITHUB_WORKSPACE/config/database.yml
cp $GITHUB_WORKSPACE/Kitodo-DataManagement/src/main/resources/db/config/flyway.properties.actions $GITHUB_WORKSPACE/Kitodo-DataManagement/src/main/resources/db/config/flyway.properties
# Runs a set of commands using the runners shell
- name: start mysql
run:
sudo service mysql start
- name: check MySQL version
run:
mysql --version
- name: create database
run:
mysql -u root -proot -e 'CREATE DATABASE kitodo;'
- name: setup database
run:
mysql -u root -proot -e "CREATE USER 'kitodo'@'localhost' IDENTIFIED BY 'kitodo';"
mysql -u root -proot -e "GRANT ALL ON kitodo.* TO 'kitodo'@'localhost';"
- name: import schema
run:
mysql -u root -proot kitodo < $GITHUB_WORKSPACE/Kitodo/setup/schema.sql
- name: import default
run:
mysql -u root -proot kitodo < $GITHUB_WORKSPACE/Kitodo/setup/default.sql
- name: set up JDK 21
uses: actions/setup-java@v6
with:
java-version: '21'
distribution: 'temurin'
- name: check java version
run:
java --version
- name: check maven version
run:
mvn --version
- name: run build
run:
mvn clean install -B '-Pall-tests,flyway,checkstyle,!development' && xvfb-run --server-args="-screen 0 1600x1280x24" mvn clean install -B '-Pselenium,!development'
# upload selenium screenshots as downloadable artifact only if pipeline failed
- name: upload selenium screenshots
if: failure()
uses: actions/upload-artifact@v7
with:
name: selenium-screenshots
path: ${{ github.workspace }}/Kitodo/target/selenium-screenshots
if-no-files-found: ignore