validate.yml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. name: Validate tests and minimal Python version
  2. on:
  3. push:
  4. pull_request:
  5. concurrency:
  6. group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
  7. cancel-in-progress: ${{ github.event_name == 'pull_request' }}
  8. permissions:
  9. actions: read
  10. packages: read
  11. contents: read
  12. jobs:
  13. validate:
  14. runs-on: ubuntu-latest
  15. timeout-minutes: 30
  16. container:
  17. image: quay.io/389ds/ci-images:test
  18. steps:
  19. - name: Checkout
  20. uses: actions/checkout@v6
  21. - name: Run testimony
  22. if: always()
  23. run: testimony validate -c dirsrvtests/testimony.yaml dirsrvtests/tests/suites
  24. - name: Check for duplicate IDs
  25. if: always()
  26. run: python3 dirsrvtests/check_for_duplicate_ids.py dirsrvtests/tests/suites
  27. - name: Check for minimal Python version for lib389
  28. if: always()
  29. run: |
  30. uv tool run vermin --target=3.8 src/lib389 || {
  31. echo "Check failed, rerunning in verbose mode..."
  32. uv tool run vermin -vv --target=3.8 src/lib389
  33. }
  34. - name: Check for minimal Python version for dirsrvtests
  35. if: always()
  36. run: |
  37. uv tool run vermin --target=3.8 dirsrvtests || {
  38. echo "Check failed, rerunning in verbose mode..."
  39. uv tool run vermin -vv --target=3.8 dirsrvtests
  40. }