Add coveralls to CI
authorShane Lontis <shane.lontis@oracle.com>
Fri, 12 Mar 2021 07:52:16 +0000 (17:52 +1000)
committerShane Lontis <shane.lontis@oracle.com>
Wed, 24 Mar 2021 08:31:11 +0000 (18:31 +1000)
Fixes #14013

Coverage reports were no longer generated when travis stopped being used.
This github action workflow schedules a coverage report once a week.

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14526)

.github/workflows/coveralls.yml [new file with mode: 0644]

diff --git a/.github/workflows/coveralls.yml b/.github/workflows/coveralls.yml
new file mode 100644 (file)
index 0000000..370f372
--- /dev/null
@@ -0,0 +1,28 @@
+name: Coverage
+
+#Run once a week
+on:
+  schedule:
+    - cron:  '0 0 * * SAT'
+
+jobs:
+  coverage:
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v2
+    - name: package installs
+      run: |
+        sudo apt-get -yq install lcov
+    - name: config
+      run: CC=gcc ./config --debug --coverage no-asm enable-rc5 enable-md2 enable-ssl3 enable-nextprotoneg enable-ssl3-method enable-weak-ssl-ciphers enable-zlib enable-ec_nistp_64_gcc_128 no-shared enable-buildtest-c++ enable-external-tests -DPEDANTIC -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION && perl configdata.pm --dump
+    - name: make
+      run: make -s -j4
+    - name: make test
+      run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
+    - name: generate coverage info
+      run: lcov -d . -c -o ./lcov.info
+    - name: Coveralls upload
+      uses: coverallsapp/github-action@v1.1.2
+      with:
+        github-token: ${{ secrets.github_token }}
+        path-to-lcov: ./lcov.info