Add first coverage workflow
This commit is contained in:
parent
11027d3f75
commit
bbdbd96ec7
1 changed files with 66 additions and 0 deletions
66
github/workflows/coverage.yml
Normal file
66
github/workflows/coverage.yml
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
paths-ignore:
|
||||
- 'build_doc.sh'
|
||||
- 'check.sh'
|
||||
- 'run_ci_tests.sh'
|
||||
- 'start_sshd.sh'
|
||||
- 'stop_sshd.sh'
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- 'build_doc.sh'
|
||||
- 'check.sh'
|
||||
- 'run_ci_tests.sh'
|
||||
- 'start_sshd.sh'
|
||||
- 'stop_sshd.sh'
|
||||
name: coverage
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions-rs/toolchain@v1
|
||||
with:
|
||||
profile: minimal
|
||||
toolchain: stable
|
||||
override: true
|
||||
components: llvm-tools-preview
|
||||
- name: Install cargo-llvm-cov
|
||||
uses: taiki-e/install-action@cargo-llvm-cov
|
||||
- run: |
|
||||
# Wait for startup of openssh-server
|
||||
timeout 15 ./wait_for_sshd_start_up.sh
|
||||
chmod 600 .test-key
|
||||
mkdir /tmp/openssh-rs
|
||||
ssh -i .test-key -v -p 2222 -l test-user localhost -o StrictHostKeyChecking=accept-new -o UserKnownHostsFile=/tmp/openssh-rs/known_hosts whoami
|
||||
name: Test ssh connectivity
|
||||
- run: |
|
||||
eval $(ssh-agent)
|
||||
echo "SSH_AUTH_SOCK=$SSH_AUTH_SOCK" >> $GITHUB_ENV
|
||||
echo "SSH_AGENT_PID=$SSH_AGENT_PID" >> $GITHUB_ENV
|
||||
cat .test-key | ssh-add -
|
||||
name: Set up ssh-agent
|
||||
- name: Generate code coverage
|
||||
run: cargo llvm-cov --all-features --lcov --output-path lcov.info
|
||||
env:
|
||||
# makes all the ignored tests not ignored
|
||||
RUSTFLAGS: --cfg=ci
|
||||
# we cannot use 127.0.0.1 (the default here)
|
||||
# since we are running from a different container
|
||||
TEST_HOST: ssh://test-user@localhost:2222
|
||||
XDG_RUNTIME_DIR: /tmp
|
||||
- name: Upload to codecov.io
|
||||
uses: codecov/codecov-action@v2
|
||||
with:
|
||||
fail_ci_if_error: true
|
||||
services:
|
||||
openssh:
|
||||
image: linuxserver/openssh-server:amd64-latest
|
||||
ports:
|
||||
- 2222:2222
|
||||
env:
|
||||
USER_NAME: test-user
|
||||
PUBLIC_KEY: |-
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGzHvK2pKtSlZXP9tPYOOBb/xn0IiC9iLMS355AYUPC7
|
||||
DOCKER_MODS: linuxserver/mods:openssh-server-ssh-tunnel
|
||||
Loading…
Add table
Reference in a new issue