checks.yml 3.1 KB

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