104 lines
3.2 KiB
YAML
104 lines
3.2 KiB
YAML
name: Checks
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
|
|
jobs:
|
|
tests:
|
|
timeout-minutes: 40
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
ci_node_index: [Long1,Long2,Rest]
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Setup path
|
|
run: sed -i -e "s,../..:,$PWD:," dist/ci/docker-compose.yml
|
|
|
|
- name: Run tests
|
|
run: docker-compose -f dist/ci/docker-compose.yml run test
|
|
env:
|
|
# Specifies how many jobs you would like to run in parallel,
|
|
# used for partitioning
|
|
CI_NODE_TOTAL: ${{ matrix.ci_node_total }}
|
|
# Use the index from matrix as an environment variable
|
|
CI_NODE_INDEX: ${{ matrix.ci_node_index }}
|
|
|
|
- name: Stop containers
|
|
if: always()
|
|
run: docker-compose -f dist/ci/docker-compose.yml down
|
|
|
|
smoke-test:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
image:
|
|
- registry.opensuse.org/opensuse/tumbleweed:latest
|
|
- registry.opensuse.org/opensuse/leap:15.5
|
|
|
|
container: ${{ matrix.image }}
|
|
steps:
|
|
- name: install git to checkout the repo
|
|
run: zypper -n in git
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: fix the file permissions of the repository
|
|
run: chown -R $(id -un):$(id -gn) .
|
|
|
|
- name: add the openSUSE:Tools repository for Tumbleweed
|
|
if: ${{ contains(matrix.image, 'tumbleweed') }}
|
|
run: zypper -n ar https://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_Tumbleweed/openSUSE:Tools.repo
|
|
|
|
- name: add the openSUSE:Tools repository for Leap
|
|
if: ${{ contains(matrix.image, '15.5') }}
|
|
run: zypper -n ar https://download.opensuse.org/repositories/openSUSE:/Tools/15.5/openSUSE:Tools.repo
|
|
|
|
- name: install the build & runtime dependencies of openSUSE-release-tool
|
|
run: |
|
|
zypper -n --gpg-auto-import-keys refresh
|
|
zypper -n source-install openSUSE-release-tools
|
|
zypper -n install openSUSE-release-tools
|
|
|
|
- name: FIXME, install missing dependencies
|
|
run: |
|
|
zypper -n in python3-typing_extensions python3-solv python3-pika python3-openqa_client build python3-influxdb python3-bugzilla
|
|
|
|
- name: run a simple smoke test whether --help actually works
|
|
run: |
|
|
for f in $(find . -maxdepth 1 -type f -executable -print); do
|
|
# skip completely broken scripts or those without --help
|
|
[[ " ./checknewer.py ./repo2fileprovides.py ./openqa-maintenance.py ./docker_publisher.py ./publish_distro ./findfileconflicts ./write_repo_susetags_file.pl ./issue-diff.py ./generate-release-packages ./verify-build-and-generatelists " =~ "$f" ]] || "$f" --help
|
|
done
|
|
|
|
linters:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Validate gocd config
|
|
run: cd gocd && sh generate.sh && git diff --exit-code
|
|
|
|
- name: Setup path
|
|
run: sed -i -e "s,../..:,$PWD:," dist/ci/docker-compose.yml
|
|
|
|
- name: Run Flaker
|
|
run: docker-compose -f dist/ci/docker-compose.yml run flaker
|
|
|
|
- name: Stop containers
|
|
if: always()
|
|
run: docker-compose -f dist/ci/docker-compose.yml down
|
|
|