123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- # Copyright 2021-2023 The OpenSSL Project Authors. All Rights Reserved.
- #
- # Licensed under the Apache License 2.0 (the "License"). You may not use
- # this file except in compliance with the License. You can obtain a copy
- # in the file LICENSE in the source distribution or at
- # https://www.openssl.org/source/license.html
- name: Coverage
- # Run once a day
- on:
- schedule:
- - cron: '49 0 * * *'
- permissions:
- contents: read
- jobs:
- coverage:
- permissions:
- checks: write # for coverallsapp/github-action to create new checks
- contents: read # for actions/checkout to fetch code
- strategy:
- fail-fast: false
- matrix:
- branches: [
- {
- branch: openssl-3.3,
- extra_config: no-afalgeng enable-fips enable-tfo
- }, {
- branch: openssl-3.2,
- extra_config: no-afalgeng enable-fips enable-tfo
- }, {
- branch: openssl-3.1,
- extra_config: no-afalgeng enable-fips
- }, {
- branch: openssl-3.0,
- extra_config: no-afalgeng enable-fips
- }, {
- branch: master,
- extra_config: no-afalgeng enable-fips enable-tfo
- }
- ]
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- with:
- submodules: recursive
- ref: ${{ matrix.branches.branch }}
- - name: cache commit id
- run: |
- echo "githubid=`/usr/bin/git log -1 --format='%H'`" >>$GITHUB_ENV
- - name: package installs
- run: |
- sudo apt-get update
- sudo apt-get -yq install lcov
- sudo apt-get -yq install bison gettext keyutils ldap-utils libldap2-dev libkeyutils-dev python3 python3-paste python3-pyrad slapd tcsh python3-virtualenv virtualenv python3-kdcproxy
- - name: install Test2::V0 for gost_engine testing
- uses: perl-actions/install-with-cpanm@stable
- with:
- install: Test2::V0
- - name: setup hostname workaround
- run: sudo hostname localhost
- - name: config
- run: CC=gcc ./config --debug --coverage ${{ matrix.branches.extra_config }} 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 enable-buildtest-c++ enable-ssl-trace enable-trace
- - name: config dump
- run: ./configdata.pm --dump
- - name: make
- run: make -s -j4
- - name: get cpu info
- run: |
- cat /proc/cpuinfo
- ./util/opensslwrap.sh version -c
- - name: make test
- run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} TESTS='-test_external_krb5'
- - name: generate coverage info
- run: lcov -d . -c
- --exclude "${PWD}/test/*"
- --exclude "${PWD}/test/helpers/*"
- --exclude "${PWD}/test/testutil/*"
- --exclude "${PWD}/fuzz/*"
- --exclude "/usr/include/*"
- -o ./lcov.info
- - name: Coveralls upload
- uses: coverallsapp/github-action@v2.2.3
- with:
- github-token: ${{ secrets.github_token }}
- git-branch: ${{ matrix.branches.branch }}
- git-commit: ${{ env.githubid }}
- path-to-lcov: ./lcov.info
|