Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add github action #356

Open
wants to merge 28 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
bc9feca
feat: add github action
mxinden Feb 24, 2024
9f7a74d
Add pull_request_target
mxinden Feb 24, 2024
58e4d9a
Revert "Add pull_request_target"
mxinden Feb 24, 2024
03da3ad
Split into unpriviledged and priviledged workflow
mxinden Feb 26, 2024
ba32ba4
Trigger CI
mxinden Feb 26, 2024
6818368
Use --must-include
mxinden Mar 1, 2024
58d614c
Merge branch 'master' of https://github.com/quic-interop/quic-interop…
mxinden Mar 1, 2024
934d374
reference latest
mxinden Mar 1, 2024
69fcd42
Remove wrapping object
mxinden Mar 1, 2024
aa3a746
Add client, server and test argument option
mxinden Mar 1, 2024
0f10426
debug args
mxinden Mar 1, 2024
3a75b8f
Include itself
mxinden Mar 1, 2024
96e38f8
Revert "debug args"
mxinden Mar 1, 2024
bb61dc3
Update
mxinden Mar 1, 2024
af5942e
rename workflows
mxinden Mar 5, 2024
163cca4
restrict client and server set
mxinden Mar 5, 2024
336dd78
rename job
mxinden Mar 5, 2024
4828b85
Revert "restrict client and server set"
mxinden Mar 5, 2024
e3c6e4c
Only comment on failure
mxinden Mar 11, 2024
ee0c7ed
Update comment in-place
mxinden Mar 11, 2024
dfa7391
Merge branch 'master' of https://github.com/quic-interop/quic-interop…
mxinden Mar 11, 2024
9277333
Remove debugging docker image ls
mxinden Mar 11, 2024
5682ad0
Enable python pip caching
mxinden Mar 11, 2024
6b1760e
Re-introduce checkout
mxinden Mar 11, 2024
b7be2ce
Use --markdown
mxinden Mar 25, 2024
b98691e
Don't access uninitialized field
mxinden Mar 25, 2024
7635261
Use bugfix
mxinden Mar 25, 2024
64ad7ad
Merge branch 'master' of https://github.com/quic-interop/quic-interop…
mxinden Mar 25, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/workflows/test_action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
on:
pull_request:
mxinden marked this conversation as resolved.
Show resolved Hide resolved
push:

jobs:
main:
permissions:
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- id: foo
uses: ./
with:
name: 'neqo'
image: 'ghcr.io/mozilla/neqo-qns:latest'
url: https://github.com/mozilla/neqo
83 changes: 83 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
name: 'QUIC Interop Runner Action'
description: ''
author: 'mxinden'
branding:
icon: 'anchor'
color: 'blue'

inputs:
name:
description: 'Name of the QUIC implementation'
required: true
image:
description: 'Docker image to be tested. Needs to reside either locally, or on some registry.'
required: true
url:
description: 'URL of the QUIC implementation'
required: true
role:
description: 'client/server/both'
required: false
default: 'both'

runs:
using: "composite"
steps:
- name: Install dependencies
run: |
sudo add-apt-repository ppa:wireshark-dev/stable
sudo apt-get update
sudo apt-get install -y wireshark tshark
shell: bash
- uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Enable IPv6 support
run: sudo modprobe ip6table_filter
shell: bash
- name: Checkout quic-interop/quic-interop-runner repository
uses: actions/checkout@v2
with:
repository: 'quic-interop/quic-interop-runner'
path: 'quic-interop-runner'
- name: Install Python packages
run: |
pwd
ls -la
cd quic-interop-runner
pip install -U pip
pip install -r requirements.txt
shell: bash
- run: docker image ls
shell: bash
- name: Run tests
id: test-run
run: |
cd quic-interop-runner
echo '{"neqo": {"image": "${{ inputs.image }}", "url": "${{ inputs.name }}", "role": "${{ inputs.role }}"}}' > implementations.json
mxinden marked this conversation as resolved.
Show resolved Hide resolved
cat implementations.json
python run.py --test handshake --log-dir output 2>&1 | tee github-comment
shell: bash
- uses: actions/upload-artifact@v4
id: artifact-upload-step
if: always()
with:
name: output
path: quic-interop-runner/output
- name: Format GitHub comment
run: |
echo '[**QUIC Interop Runner**](https://github.com/quic-interop/quic-interop-runner)' >> tmp
echo '' >> tmp
echo '```' >> tmp
cat quic-interop-runner/github-comment >> tmp
echo '```' >> tmp
echo '' >> tmp
echo 'Download artifacts [here](${{ steps.artifact-upload-step.outputs.artifact-url }}).' >> tmp
mv tmp quic-interop-runner/github-comment
if: always()
shell: bash
- name: Comment PR
if: github.event_name == 'pull_request'
uses: thollander/actions-comment-pull-request@v2
with:
filePath: quic-interop-runner/github-comment
Loading