1# Copyright 2021-2022 The OpenSSL Project Authors. All Rights Reserved. 2# 3# Licensed under the Apache License 2.0 (the "License"). You may not use 4# this file except in compliance with the License. You can obtain a copy 5# in the file LICENSE in the source distribution or at 6# https://www.openssl.org/source/license.html 7 8name: Coverage 9 10#Run once a day 11on: 12 schedule: 13 - cron: '49 0 * * *' 14 15permissions: 16 contents: read 17 18jobs: 19 coverage: 20 permissions: 21 checks: write # for coverallsapp/github-action to create new checks 22 contents: read # for actions/checkout to fetch code 23 runs-on: ubuntu-latest 24 steps: 25 - uses: actions/checkout@v2 26 - name: package installs 27 run: | 28 sudo apt-get -yq install lcov 29 - name: config 30 run: CC=gcc ./config --banner=Configured --debug --coverage no-asm enable-fips 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 31 - name: config dump 32 run: ./configdata.pm --dump 33 - name: make 34 run: make -s -j4 35 - name: make test 36 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} 37 - name: generate coverage info 38 run: lcov -d . -c -o ./lcov.info 39 - name: Coveralls upload 40 uses: coverallsapp/github-action@v1.1.2 41 with: 42 github-token: ${{ secrets.github_token }} 43 path-to-lcov: ./lcov.info 44