docu update #4942
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Linux build | |
on: [push, pull_request] | |
jobs: | |
gcc-build-and-test: | |
runs-on: ubuntu-20.04 | |
services: | |
mysql: | |
image: mysql:5.7 | |
env: | |
MYSQL_ALLOW_EMPTY_PASSWORD: yes | |
MYSQL_USER: test_user | |
MYSQL_PASSWORD: password | |
MYSQL_ROOT_PASSWORD: password | |
MYSQL_DATABASE: test_db | |
ports: | |
- 3306:3306 | |
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Update OS repositories | |
run: sudo apt-get update | |
- name: Setup test environment | |
run: sudo apt-get -y install make g++ git python3 python3-matplotlib qt5-default libqt5xmlpatterns5-dev libqt5sql5-mysql libqt5charts5-dev libbz2-dev libqt5svg5-dev liblzma-dev zlib1g-dev libcurl4 libcurl4-openssl-dev ca-certificates sqlite3 libqt5sql5-sqlite | |
- name: Create symlink for python | |
run: sudo ln -fs /bin/python3 /bin/python | |
- name: Update submodules | |
run: git submodule update --recursive --init | |
- name: Create settings for running tests | |
run: .github/workflows/settings.sh | |
shell: bash | |
- name: Build dependencies | |
run: make build_3rdparty build_libs_release build_tools_release build_gui_release build_server_release | |
- name: Create a folder for SSL | |
run: mkdir -p $HOME/ssl | |
shell: bash | |
- name: Generate SSL certificate-key pair | |
run: openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=DE/ST=BW/L=Tuebingen/O=test-certificate/CN=localhost" -keyout $HOME/ssl/test-key.key -out $HOME/ssl/test-cert.crt | |
- name: Add new certificates to the list of trusted certificates | |
run: sudo cp $HOME/ssl/test-cert.crt /usr/local/share/ca-certificates | |
- name: Update the list of certificates | |
run: sudo update-ca-certificates | |
- name: Download test files | |
run: make download_test_files | |
- name: Start GSvar server and run tests | |
run: | | |
bin/GSvarServer & | |
make -k test_lib test_server test_tools |