.gitlab-ci.yml 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. build:
  2. stage: build
  3. image: debian:bookworm-slim
  4. before_script:
  5. - apt-get update && apt-get -y install libconfig-dev meson
  6. script:
  7. - meson build --buildtype release --werror
  8. - ninja -C build
  9. - cd build && meson test --no-rebuild
  10. artifacts:
  11. paths:
  12. - build
  13. docs:
  14. stage: build
  15. image: alpine:edge
  16. before_script:
  17. - apk add --no-cache python3 py3-sphinx make
  18. script:
  19. - cd docs
  20. - make html
  21. lint:
  22. stage: test
  23. dependencies:
  24. - build
  25. image: debian:bookworm-slim
  26. before_script:
  27. - apt-get update && apt-get -y install libconfig-dev bash
  28. script:
  29. - bash ./configtest.sh
  30. tests:
  31. stage: test
  32. image: alpine:edge
  33. before_script:
  34. - apk add --no-cache build-base meson samurai scdoc libconfig-dev linux-headers
  35. script:
  36. - meson setup unittests --buildtype release --werror
  37. - ninja -C unittests
  38. - cd unittests && meson test --no-rebuild
  39. pages:
  40. stage: deploy
  41. image: alpine:edge
  42. before_script:
  43. - apk add --no-cache python3 py3-sphinx make
  44. script:
  45. - cd docs
  46. - make html
  47. - mv _build/html ../public
  48. artifacts:
  49. paths:
  50. - public
  51. environment: production