Skip to content

package

package #4391

Workflow file for this run

name: package
on:
pull_request:
workflow_dispatch:
workflow_call:
inputs:
branch:
description: "ref branch for this workflow"
default: "master"
required: true
type: string
env:
CARGO_TERM_COLOR: always
jobs:
test-flask-windows-pwsh:
runs-on: windows-latest
defaults:
run:
shell: pwsh
steps:
- name: Checkout repository
uses: actions/[email protected]
with:
persist-credentials: false
ref: ${{ inputs.branch }}
- name: Install prerequisites
run: .\bin\install_prerequisites_windows.ps1
- name: Install Python 3.11
uses: actions/[email protected]
with:
python-version: '3.11'
- name: test
run: |
.\bin\activate_python3_venv.ps1
.\bin\test\test_prerequisites.ps1
choco install -y hurl
Write-Host "======== etc/hosts"
cat %SystemRoot%\System32\drivers\etc\hosts
Write-Host "======== Get-NetIPInterface"
Get-NetIPInterface
ping localhost
Write-Host "======== curl ipv6 resolution time google"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
curl --location -6 -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nStart Transfer: %{time_starttransfer}s\nTotal: %{time_total}s\n" -o null -s https://google.fr
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== curl ipv4 resolution time google"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
curl --location -4 -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nStart Transfer: %{time_starttransfer}s\nTotal: %{time_total}s\n" -o null -s https://google.fr
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== curl ipv6 resolution time"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
curl -6 -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nStart Transfer: %{time_starttransfer}s\nTotal: %{time_total}s\n" -o null -s http://localhost:8000/hello
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== curl ipv4 resolution time"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
curl -4 -w "DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nStart Transfer: %{time_starttransfer}s\nTotal: %{time_total}s\n" -o null -s http://127.0.0.1:8000/hello
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== echo | hurl 127.0.0.1"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "echo 'GET http://127.0.0.1:8000/hello' | hurl --test --very-verbose"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== echo | hurl localhost"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "echo 'GET http://localhost:8000/hello' | hurl --test --very-verbose"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== hurl bench.hurl ipv4"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "hurl --ipv4 --test integration/hurl/tests_ok/bench.hurl"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== hurl bench.hurl ipv6"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "hurl --ipv6 --test integration/hurl/tests_ok/bench.hurl"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host "======== by ps1"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "integration/hurl/tests_ok/bench.ps1"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
package-windows-x64:
runs-on: windows-latest
env:
VCPKGRS_DYNAMIC: 1
steps:
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- name: Checkout repository
uses: actions/[email protected]
with:
ref: ${{ inputs.branch }}
- name: Install Rust
run: |
.\bin\install_rust.ps1
- name: Manage vcpkg cache
uses: actions/[email protected]
with:
path: C:\vcpkg
key: ${{ runner.os }}-release-windows-x64
- name: Install prerequisites
run: .\bin\install_prerequisites_windows.ps1
- name: Install Python 3.11
uses: actions/[email protected]
with:
python-version: '3.11'
- name: Environment
run: |
.\bin\activate_python3_venv.ps1
.\bin\environment.ps1
- name: Build
run: .\bin\release\release.ps1
- name: Create windows64 Zip package
run: .\bin\release\create_windows64_zip_package.ps1
- name: Install win64 zip and test integ
run: |
.\bin\release\install_windows64_zip_package.ps1
.\bin\activate_python3_venv.ps1
.\bin\test\test_prerequisites.ps1
Write-Host ">>>>>>> direct"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "hurl --ipv4 --test --continue-on-error integration/hurl/tests_ok/bench.hurl"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host ">>>>>>> by script"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
.\bin\test\test_integ.ps1
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
Write-Host ">>>>>>> direct"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
pwsh -Command "hurl --ipv4 --test --continue-on-error integration/hurl/tests_ok/bench.hurl"
Get-Date -Format "yyyy-MM-dd HH:mm:ss.fff"
package-deb-x64:
runs-on: ubuntu-20.04
steps:
- name: Checkout repository
uses: actions/[email protected]
with:
persist-credentials: false
ref: ${{ inputs.branch }}
- name: Install Prerequisites
run: bin/install_prerequisites_ubuntu.sh
- name: Install Python 3.11
uses: actions/[email protected]
with:
python-version: '3.11'
- name: Activate python3 venv
run: |
bin/activate_python3_venv.sh
export PATH="/tmp/hurl-python3-venv/bin:$PATH"
echo "PATH=$PATH" >> $GITHUB_ENV
which python3
python3 --version
pip --version
- name: Install Rust
run: bin/install_rust.sh
- name: Environment
run: bin/environment.sh
- name: Build
run: |
bin/release/release.sh
echo "PATH=:${PWD}/target/release:$PATH" >> "${GITHUB_ENV}"
- name: Get version
run: |
VERSION=$(bin/release/get_version.sh)
echo "VERSION=${VERSION}" | tee -a "${GITHUB_ENV}"
- name: Create deb package
run: |
bin/release/man.sh
bin/release/create_deb_package.sh
- name: Install package
run: |
bin/release/install_deb_package.sh
echo "PATH=/tmp/hurl-deb-package/usr/bin:$PATH" >> "${GITHUB_ENV}"
- name: Test integ
run: |
bin/test/test_prerequisites.sh
bin/test/test_integ.sh
- name: Archive production artifacts
uses: actions/[email protected]
with:
name: release-deb-x64-artifacts
path: target/upload/*