checks.yml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. ---
  2. name: Checks
  3. on:
  4. push:
  5. branches:
  6. - master
  7. pull_request: null
  8. env:
  9. DO_NOT_TRACK: 1
  10. jobs:
  11. checksum-checks:
  12. name: Checksums
  13. runs-on: ubuntu-latest
  14. steps:
  15. - name: Git clone repository
  16. uses: actions/checkout@v2
  17. with:
  18. submodules: recursive
  19. - name: Run checksum checks on kickstart files
  20. env:
  21. LOCAL_ONLY: "true"
  22. run: |
  23. ./tests/installer/checksums.sh
  24. libressl-checks:
  25. name: LibreSSL
  26. runs-on: ubuntu-latest
  27. steps:
  28. - name: Checkout
  29. uses: actions/checkout@v2
  30. with:
  31. submodules: recursive
  32. - name: Build
  33. run: >
  34. docker run -v "$PWD":/netdata -w /netdata alpine:latest /bin/sh -c
  35. 'apk add bash;
  36. ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata;
  37. apk del openssl openssl-dev;
  38. apk add libressl libressl-dev;
  39. autoreconf -ivf;
  40. ./configure;
  41. make;'
  42. clang-checks:
  43. name: Clang
  44. runs-on: ubuntu-latest
  45. steps:
  46. - name: Checkout
  47. uses: actions/checkout@v2
  48. with:
  49. submodules: recursive
  50. - name: Build
  51. run: |
  52. docker build -f .github/dockerfiles/Dockerfile.clang .
  53. dist-checks:
  54. name: Dist
  55. runs-on: ubuntu-latest
  56. steps:
  57. - name: Checkout
  58. uses: actions/checkout@v2
  59. with:
  60. submodules: recursive
  61. - name: Prepare environment
  62. run: |
  63. ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata
  64. sudo apt-get install -y libjson-c-dev libipmimonitoring-dev libcups2-dev libsnappy-dev \
  65. libprotobuf-dev libprotoc-dev libssl-dev protobuf-compiler \
  66. libnetfilter-acct-dev
  67. - name: Configure
  68. run: |
  69. autoreconf -ivf
  70. ./configure \
  71. --with-zlib \
  72. --with-math \
  73. --with-user=netdata \
  74. CFLAGS=-O2
  75. - name: Make dist
  76. run: |
  77. make dist
  78. - name: Verify & Set distfile
  79. run: |
  80. ls -lah netdata-*.tar.gz
  81. echo "DISTFILE=$(ls netdata-*.tar.gz)" >> $GITHUB_ENV
  82. - name: Save Packages
  83. uses: actions/upload-artifact@v2
  84. with:
  85. name: dist-archive
  86. path: ${{ github.workspace }}/${{ env.DISTFILE }}
  87. - name: Run run_install_with_dist_file.sh
  88. run: |
  89. ./.github/scripts/run_install_with_dist_file.sh "${DISTFILE}"
  90. gitignore-check:
  91. name: .gitignore
  92. runs-on: ubuntu-latest
  93. steps:
  94. - name: Checkout
  95. uses: actions/checkout@v2
  96. with:
  97. submodules: recursive
  98. - name: Prepare environment
  99. run: ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata
  100. - name: Build netdata
  101. run: ./netdata-installer.sh --dont-start-it --disable-telemetry --dont-wait --install /tmp/install
  102. - name: Check that repo is clean
  103. run: |
  104. git status --porcelain=v1 > /tmp/porcelain
  105. if [ -s /tmp/porcelain ]; then
  106. cat /tmp/porcelain
  107. exit 1
  108. fi