ci.yml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. name: ci build
  2. on:
  3. push:
  4. branches: [ master ]
  5. pull_request:
  6. branches: [ master ]
  7. jobs:
  8. ubuntu-cmake:
  9. name: ubuntu
  10. runs-on: ubuntu-latest
  11. steps:
  12. - uses: actions/checkout@master
  13. - name: install deps
  14. run: |
  15. sudo apt-get update
  16. sudo apt-get install -y libprotobuf-dev protobuf-compiler libgtest-dev valgrind
  17. - name: update submodules
  18. run: git submodule update --init --recursive
  19. - name: make
  20. run: make -j4
  21. - name: make tutorial
  22. run: make tutorial -j4
  23. - name: make check
  24. run: make check -j4
  25. - name: make install
  26. run: sudo make install
  27. fedora-cmake:
  28. name: fedora
  29. runs-on: ubuntu-latest
  30. steps:
  31. - name: Setup Podman
  32. run: |
  33. sudo apt update
  34. sudo apt-get -y install podman
  35. podman pull fedora:rawhide
  36. - name: Get source
  37. uses: actions/checkout@master
  38. with:
  39. path: 'workflow'
  40. - name: Create container and run tests
  41. run: |
  42. {
  43. echo 'FROM fedora:rawhide'
  44. echo 'RUN dnf -y update'
  45. echo 'RUN dnf -y install cmake gcc-c++ gtest-devel git make'
  46. echo 'RUN dnf -y install openssl-devel protobuf-devel'
  47. echo 'RUN dnf -y install lz4-devel snappy-devel'
  48. echo 'RUN dnf clean all'
  49. echo 'COPY workflow workflow'
  50. echo 'WORKDIR /workflow'
  51. echo 'RUN git submodule update --init --recursive'
  52. echo 'RUN cmake'
  53. echo 'RUN make'
  54. echo 'RUN make check'
  55. echo 'RUN make tutorial'
  56. } > podmanfile
  57. podman build --tag fedorarawhide -f ./podmanfile
  58. ubuntu-bazel:
  59. name: bazel
  60. runs-on: ubuntu-latest
  61. steps:
  62. - uses: actions/checkout@master
  63. - name: bazel build
  64. run: bazel build ...