hurl/.circleci/config.yml

61 lines
2.2 KiB
YAML
Raw Normal View History

2021-11-04 22:45:20 +03:00
version: 2.1
jobs:
test-ubuntu-arm64:
machine:
image: ubuntu-2004:current
2021-11-04 22:45:20 +03:00
resource_class: arm.medium
steps:
- checkout
- run:
2021-11-05 18:44:56 +03:00
name: Build
2021-11-04 22:45:20 +03:00
command: |
export CARGO_NET_GIT_FETCH_WITH_CLI=true
2021-11-04 22:45:20 +03:00
uname -a
lsb_release -a
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source $HOME/.cargo/env
rustc --version
cargo --version
sudo apt update -qq
sudo apt install -y -qq libxml2-utils libcurl4-openssl-dev
cargo build --release --verbose --locked --color always
target/release/hurl --version
curl --version
2021-11-04 22:45:20 +03:00
- run:
2021-11-05 18:44:56 +03:00
name: Tests units and integration tests
2021-11-04 22:45:20 +03:00
command: |
2021-11-05 18:44:56 +03:00
python3 -m pip install --upgrade pip --quiet
2022-08-24 15:18:49 +03:00
pip3 install --requirement bin/requirements-frozen.txt
2021-11-04 22:45:20 +03:00
mitmdump --version
2021-11-05 18:44:56 +03:00
export PATH="$PWD/target/debug:$PATH"
2021-11-04 22:45:20 +03:00
cd integration
python3 server.py >server.log 2>&1 &
python3 ssl/server.py >server-ssl.log 2>&1 &
mitmdump -p 8888 --modify-header "/From-Proxy/Hello" >mitmdump.log 2>&1 &
2021-11-05 18:44:56 +03:00
echo "================= Tests units ================="
2021-11-04 22:45:20 +03:00
cargo test --features strict --verbose --color always
2021-11-05 18:44:56 +03:00
mitmdump --version
pip3 install lxml bs4
2021-11-05 18:44:56 +03:00
echo "================= Integration tests ================="
2021-11-04 22:45:20 +03:00
python3 ./integration.py
./test_curl_commands.sh $(find ./tests_ok -maxdepth 1 -type f -name '*.curl' ! -name '*windows*')
python3 ./test_html_output.py tests_ok/*.html
xmllint --noout tests_ok/*.html
./test_curl_commands.sh $(find ./tests_failed -maxdepth 1 -type f -name '*.curl' ! -name '*windows*')
python3 ./test_html_output.py tests_failed/*.html
xmllint --noout tests_failed/*.html
2021-11-04 22:45:20 +03:00
- store_artifacts:
path: integration/mitmdump.log
- store_artifacts:
path: integration/server.log
- store_artifacts:
path: integration/server-ssl.log
workflows:
2021-11-05 18:47:38 +03:00
tests-arm64:
2021-11-04 22:45:20 +03:00
jobs:
- test-ubuntu-arm64