Do not allow sending headers/data on closed streams (#20) #268
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
jobs: | |
test: | |
name: Nim ${{ matrix.nim }} | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
nim: [2.0.0] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Run Tests | |
run: | | |
docker pull nimlang/nim:${{ matrix.nim }} | |
docker run --env-file .env --rm -v `pwd`:/usr/src/app -w /usr/src/app nimlang/nim:${{ matrix.nim }} \ | |
/bin/bash -c "git config --global --add safe.directory /usr/src/app && \ | |
apt update && \ | |
apt install -y make && \ | |
make install_mkcert && \ | |
nimble install -y && \ | |
nimble test" | |
- name: Run Functional Tests | |
run: | | |
docker pull nimlang/nim:${{ matrix.nim }} | |
docker run --env-file .env --rm -v `pwd`:/usr/src/app -w /usr/src/app nimlang/nim:${{ matrix.nim }} \ | |
/bin/bash -c "git config --global --add safe.directory /usr/src/app && \ | |
apt update && \ | |
apt install -y make && \ | |
make install_mkcert && \ | |
nimble install -y && \ | |
(nimble funcserve &) && \ | |
sleep 10s && \ | |
nimble functest" | |
- name: Run Examples | |
run: | | |
docker pull nimlang/nim:${{ matrix.nim }} | |
docker run --env-file .env --rm -v `pwd`:/usr/src/app -w /usr/src/app nimlang/nim:${{ matrix.nim }} \ | |
/bin/bash -c "git config --global --add safe.directory /usr/src/app && \ | |
apt update && \ | |
apt install -y make && \ | |
make install_mkcert && \ | |
nimble install -y && \ | |
(nimble serve2 &) && \ | |
sleep 10s && \ | |
nimble testexamples" | |
- name: Run h2spec | |
run: | | |
docker pull nimlang/nim:${{ matrix.nim }} | |
docker run --env-file .env --rm -v `pwd`:/usr/src/app -w /usr/src/app nimlang/nim:${{ matrix.nim }} \ | |
/bin/bash -c "git config --global --add safe.directory /usr/src/app && \ | |
apt update && \ | |
apt install -y make && \ | |
make install_mkcert && \ | |
nimble install -y && \ | |
(nimble serve2 &) && \ | |
sleep 10s && \ | |
curl -JLO \"https://github.com/nitely/nim-hyperx/releases/download/v0.1.20/h2spec\" && \ | |
chmod +x ./h2spec && \ | |
./h2spec --tls --port 4443 --strict && \ | |
./h2spec --tls --port 4443 --strict && \ | |
./h2spec --tls --port 4443 --strict" | |
- name: Run h2load | |
run: | | |
docker pull nimlang/nim:${{ matrix.nim }} | |
docker run --env-file .env --rm -v `pwd`:/usr/src/app -w /usr/src/app nimlang/nim:${{ matrix.nim }} \ | |
/bin/bash -c "git config --global --add safe.directory /usr/src/app && \ | |
apt update && \ | |
apt install -y make && \ | |
make install_mkcert && \ | |
nimble install -y && \ | |
(nimble serve2 &) && \ | |
sleep 10s && \ | |
apt install -y nghttp2-client && \ | |
h2load -n100000 -c100 -m10 https://127.0.0.1:4443 | grep \"100000 2xx\" && \ | |
h2load -n100000 -c10 -m1000 -t2 https://127.0.0.1:4443" |