Skip to content

CI

CI #530

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 master branch
push:
pull_request:
branches: [ master ]
# 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-20.04
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: update chrome to latest stable
run: |
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
sudo apt-get update
sudo apt-get --only-upgrade install google-chrome-stable
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
- 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 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'adopt'
- 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,spotbugs,!development' && xvfb-run --server-args="-screen 0 1600x1280x24" mvn clean install -B '-Pselenium,!development'