Taking CentOS to the glue factory #883
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: TrickOps | |
# This workflow is triggered on pushes to the repository. | |
on: [pull_request] | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
trickops-tests-ubuntu: | |
name: Unit Tests Ubuntu:22.04 | |
runs-on: ubuntu-22.04 | |
container: ubuntu:22.04 | |
steps: | |
- uses: actions/checkout@master | |
- name: install dependencies | |
# Note that perl is for trick-gte which TrickOps runs and qt and everything after it is for koviz | |
run: | | |
export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get install -y git python3 python3-venv perl perl-modules-5.34 qtbase5-dev wget unzip g++ make flex bison | |
- name: create virtual environment | |
run: | | |
cd share/trick/trickops/ | |
python3 -m venv .venv && source .venv/bin/activate && pip3 install -r requirements.txt | |
- name: get and build koviz | |
run: | | |
cd /tmp/ && wget -q https://github.com/nasa/koviz/archive/refs/heads/master.zip && unzip master.zip | |
cd /tmp/koviz-master/ && qmake && make | |
- name: run unit and doc tests | |
run: | | |
cd share/trick/trickops/tests/ | |
source ../.venv/bin/activate | |
export PATH="/tmp/koviz-master/bin:${PATH}" | |
./run_tests.py | |
- uses: actions/[email protected] | |
if: ${{ always() }} | |
with: | |
name: doctests | |
path: | | |
share/trick/trickops/tests/*_doctest_log.txt | |
/tmp/log.* | |
trickops-tests-rockylinux8: | |
name: Unit Tests RockyLinux8 | |
runs-on: ubuntu-22.04 | |
container: rockylinux:8 | |
steps: | |
- uses: actions/checkout@master | |
- name: install dependencies | |
# Note that perl is for trick-gte which TrickOps runs and qt and everything after it is for koviz | |
run: | | |
dnf install -y git python3-devel which perl perl-Digest-MD5 qt5-qtbase-devel bison clang flex make gcc gcc-c++ wget | |
- name: create virtual environment | |
run: | | |
cd share/trick/trickops/ | |
python3 -m venv .venv && source .venv/bin/activate && pip3 install -r requirements.txt | |
- name: get and build koviz | |
run: | | |
cd /tmp/ && wget -q https://github.com/nasa/koviz/archive/refs/heads/master.zip && unzip master.zip | |
cd /tmp/koviz-master/ && qmake-qt5 && make | |
- name: run unit and doc tests | |
run: | | |
cd share/trick/trickops/tests/ | |
source ../.venv/bin/activate | |
export PATH="/tmp/koviz-master/bin:${PATH}" | |
./run_tests.py | |
- uses: actions/[email protected] | |
if: ${{ always() }} | |
with: | |
name: doctests | |
path: | | |
share/trick/trickops/tests/*_doctest_log.txt | |
/tmp/log.* | |
# TODO: ExampleWorkflow.py is not included here because it needs a built Trick | |
# to function correctly and I don't want to duplicate the Trick build testing | |
# here to provide testing of what is essentially an example provided for | |
# documentation purposes. If we could leverage artifacts from a previous | |
# stage and/or stable containers where Trick is already pre-built, we should | |
# consider adding ExampleWorfklow.py to testing in this file. -Jordan 4/2021 |