mirror of
https://github.com/YGGverse/aquatic.git
synced 2026-03-31 09:45:31 +00:00
github actions: rewrite file test action to fix ulimit; add timeouts
This commit is contained in:
parent
08488f50cd
commit
d0aa87f99e
5 changed files with 20 additions and 13 deletions
8
.github/actions/test-transfer/Dockerfile
vendored
8
.github/actions/test-transfer/Dockerfile
vendored
|
|
@ -1,8 +1,10 @@
|
||||||
# Container image that runs your code
|
# Not used by Github action, but can be used to run test locally:
|
||||||
|
# 1. docker build -t aquatic ./path/to/Dockerfile
|
||||||
|
# 2. docker run aquatic
|
||||||
|
# 3. On failure, run `docker rmi aquatic -f` and go back to step 1
|
||||||
|
|
||||||
FROM rust:bullseye
|
FROM rust:bullseye
|
||||||
|
|
||||||
# Copies your code file from your action repository to the filesystem path `/` of the container
|
|
||||||
COPY entrypoint.sh /entrypoint.sh
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
|
||||||
# Code file to execute when the docker container starts up (`entrypoint.sh`)
|
|
||||||
ENTRYPOINT ["/entrypoint.sh"]
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
6
.github/actions/test-transfer/action.yml
vendored
6
.github/actions/test-transfer/action.yml
vendored
|
|
@ -10,5 +10,7 @@ outputs:
|
||||||
wss_ipv4:
|
wss_ipv4:
|
||||||
description: 'WSS IPv4 status'
|
description: 'WSS IPv4 status'
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: 'composite'
|
||||||
image: 'Dockerfile'
|
steps:
|
||||||
|
- run: $GITHUB_ACTION_PATH/entrypoint.sh
|
||||||
|
shell: bash
|
||||||
10
.github/actions/test-transfer/entrypoint.sh
vendored
10
.github/actions/test-transfer/entrypoint.sh
vendored
|
|
@ -5,11 +5,6 @@
|
||||||
#
|
#
|
||||||
# IPv6 is unfortunately disabled by default in Docker
|
# IPv6 is unfortunately disabled by default in Docker
|
||||||
# (see sysctl net.ipv6.conf.lo.disable_ipv6)
|
# (see sysctl net.ipv6.conf.lo.disable_ipv6)
|
||||||
#
|
|
||||||
# When testing locally, use:
|
|
||||||
# 1. docker build -t aquatic ./path/to/Dockerfile
|
|
||||||
# 2. docker run aquatic
|
|
||||||
# 3. On failure, run `docker rmi aquatic -f` and go back to step 1
|
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
|
@ -21,6 +16,8 @@ else
|
||||||
SUDO=""
|
SUDO=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
ulimit -a
|
||||||
|
|
||||||
$SUDO apt-get update
|
$SUDO apt-get update
|
||||||
$SUDO apt-get install -y cmake libssl-dev screen rtorrent mktorrent ssl-cert ca-certificates curl golang
|
$SUDO apt-get install -y cmake libssl-dev screen rtorrent mktorrent ssl-cert ca-certificates curl golang
|
||||||
|
|
||||||
|
|
@ -43,6 +40,9 @@ else
|
||||||
cd "$GITHUB_WORKSPACE"
|
cd "$GITHUB_WORKSPACE"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo "last aquatic commits:"
|
||||||
|
git log --oneline -3
|
||||||
|
|
||||||
# Setup bogus TLS certificate
|
# Setup bogus TLS certificate
|
||||||
|
|
||||||
$SUDO echo "127.0.0.1 example.com" >> /etc/hosts
|
$SUDO echo "127.0.0.1 example.com" >> /etc/hosts
|
||||||
|
|
|
||||||
3
.github/workflows/cargo-build-and-test.yml
vendored
3
.github/workflows/cargo-build-and-test.yml
vendored
|
|
@ -11,9 +11,8 @@ env:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 10
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Build
|
- name: Build
|
||||||
|
|
|
||||||
6
.github/workflows/test-transfer.yml
vendored
6
.github/workflows/test-transfer.yml
vendored
|
|
@ -10,9 +10,13 @@ jobs:
|
||||||
test-transfer-http:
|
test-transfer-http:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: "Test BitTorrent file transfer over HTTP (with and without TLS), UDP and WSS"
|
name: "Test BitTorrent file transfer over HTTP (with and without TLS), UDP and WSS"
|
||||||
|
timeout-minutes: 20
|
||||||
|
container:
|
||||||
|
image: rust:1-bullseye
|
||||||
|
options: --ulimit memlock=524288:524288
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
- name: Test file transfers
|
- name: Test file transfers
|
||||||
uses: ./.github/actions/test-transfer
|
uses: ./.github/actions/test-transfer
|
||||||
id: test_transfer
|
id: test_transfer
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue