пт, 29 июл. 2022 г. в 22:48, Tim Düsterhus <[email protected]>:
> Ilya,
>
> On 7/29/22 18:53, Илья Шипицин wrote:
> > another exotic (but hopefully useful) CI job.
> >
>
> In the first patch you have an indentation mixup. The script uses
> spaces, but the modified line now uses tabs. This will look incorrectly
> depending on the tab width.
>
done
>
> For the second patch:
>
> > +name: m32
>
> I believe '32 Bit' would be a little more descriptive, however:
>
not sure. it is not 32 bit, it is 32 bit built on x86_64.
but I'm fine with "32 Bits"
>
> > + test:
> Please rename this to "build", because it doesn't test anything (other
> than the build).
>
> done
> Please also add a 'name:' for the job. 'name: Fedora' would be
> consistent, but ...
>
> > + container:
> > + image: fedora:rawhide
>
> Do we actually need the container overhead? Can't we test this directly
> on the Ubuntu itself?
>
I was only able to set this up on Fedora.
if someone can switch it to Ubuntu, I'm fine.
no particular reason for Fedora
>
> > + - name: Compile QUICTLSroxy
>
> Is there a copy and paste mistake in 'QUICTLSroxy' here?
>
oops.
>
> > make CC=gcc ERR=1 TARGET=linux-glibc USE_OPENSSL=1 USE_QUIC=1
> DEBUG_CFLAGS="-m32" LDFLAGS="-m32" SSL_LIB=${HOME}/opt/lib
> SSL_INC=${HOME}/opt/include
>
> Can you please split this across multiple lines using a backslash, like
> here:
>
done
>
>
> https://github.com/haproxy/haproxy/blob/dc07751ed7ebad10f49081d28a9a5ae785f53d76/.github/workflows/windows.yml#L57-L61
>
> It is more readable if the line isn't that long.
>
> Best regards
> Tim Düsterhus
>
From 39d22d37779dfed94890d39a2741c26f6de695f0 Mon Sep 17 00:00:00 2001
From: Ilya Shipitsin <[email protected]>
Date: Fri, 29 Jul 2022 23:13:21 +0500
Subject: [PATCH 1/2] BUILD: SSL: allow to pass additional configure args to
QUICTLS
this allows to pass QUICTLS_EXTRA_ARGS to QUICTLS builds. if no
additional arg is passed, behaviour is kept unchanged
--
v2 indentation fixed
---
scripts/build-ssl.sh | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/scripts/build-ssl.sh b/scripts/build-ssl.sh
index d143cec55..42eef1902 100755
--- a/scripts/build-ssl.sh
+++ b/scripts/build-ssl.sh
@@ -134,11 +134,10 @@ fi
if [ ! -z ${QUICTLS+x} ]; then
(
-
download_quictls
cd download-cache/quictls
- ./config shared --prefix="${HOME}/opt" --openssldir="${HOME}/opt" --libdir=lib -DPURIFY
+ ./config shared ${QUICTLS_EXTRA_ARGS:-} --prefix="${HOME}/opt" --openssldir="${HOME}/opt" --libdir=lib -DPURIFY
make -j$(nproc) build_sw
make install_sw
--
2.37.1
From 544284d5907e3fc9fd995586571de6a6abe1076d Mon Sep 17 00:00:00 2001
From: Ilya Shipitsin <[email protected]>
Date: Fri, 29 Jul 2022 23:21:37 +0500
Subject: [PATCH 2/2] CI: enable weekly "m32" builds on x86_64
this is build only workflow, catches potential "size_t" mismatches
--
v2 job name added, various markup changes
---
.github/workflows/m32.yml | 42 +++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
create mode 100644 .github/workflows/m32.yml
diff --git a/.github/workflows/m32.yml b/.github/workflows/m32.yml
new file mode 100644
index 000000000..1b61f1e7a
--- /dev/null
+++ b/.github/workflows/m32.yml
@@ -0,0 +1,42 @@
+#
+# special purpose CI: test build on x86_64 with "m32" flag enabled
+# let us run those builds weekly
+#
+# some details might be found at GH: https://github.com/haproxy/haproxy/issues/1760
+#
+
+name: 32 Bit
+
+on:
+ schedule:
+ - cron: "0 0 * * 5"
+
+
+permissions:
+ contents: read
+
+jobs:
+ build:
+ name: Fedora
+ runs-on: ubuntu-latest
+ container:
+ image: fedora:rawhide
+ steps:
+ - uses: actions/checkout@v3
+ - name: Install dependencies
+ run: |
+ dnf -y groupinstall "Development Tools"
+ dnf -y install 'perl(FindBin)' 'perl(File::Compare)' perl-IPC-Cmd 'perl(File::Copy)' glibc-devel.i686
+ - name: Compile QUICTLS
+ run: |
+ QUICTLS=yes QUICTLS_EXTRA_ARGS="-m32 linux-generic32" ./scripts/build-ssl.sh
+ - name: Compile HAProxy
+ run: |
+ make -j$(nproc) CC=gcc ERR=1 \
+ TARGET=linux-glibc \
+ USE_OPENSSL=1 \
+ USE_QUIC=1 \
+ DEBUG_CFLAGS="-m32" \
+ LDFLAGS="-m32" \
+ SSL_LIB=${HOME}/opt/lib \
+ SSL_INC=${HOME}/opt/include
--
2.37.1