From 5bcb70fb2abee47d75695f90d1b137e2f35ea8e4 Mon Sep 17 00:00:00 2001 From: "d.kovalenko" Date: Wed, 15 Jul 2026 10:32:06 +0300 Subject: [PATCH 1/4] CI: optimization 1) Run AltLinux 10/11 early 2) Ubuntu 24.04 uses SSH tunnels --- .github/workflows/ci.yml | 17 +++++++++-------- Dockerfile--ubuntu_24_04.tmpl | 16 ++++++++++------ 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d11e1fc4..3ede7161 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -74,6 +74,15 @@ jobs: fail-fast: false matrix: include: + # altlinux too slow. run it early + - platform: "altlinux_10" + python: "3" + postgres: "17" + case_suffix: "py3_xx_xx-pg17_xx" + - platform: "altlinux_11" + python: "3" + postgres: "17" + case_suffix: "py3_xx_xx-pg17_xx" - platform: "alpine" python: "3.7" postgres: "17" @@ -146,14 +155,6 @@ jobs: python: "3" postgres: "17" case_suffix: "py3_xx_xx-pg17_xx" - - platform: "altlinux_10" - python: "3" - postgres: "17" - case_suffix: "py3_xx_xx-pg17_xx" - - platform: "altlinux_11" - python: "3" - postgres: "17" - case_suffix: "py3_xx_xx-pg17_xx" - platform: "astralinux_1_7" python: "3" postgres: "17" diff --git a/Dockerfile--ubuntu_24_04.tmpl b/Dockerfile--ubuntu_24_04.tmpl index eda0856c..340999f1 100644 --- a/Dockerfile--ubuntu_24_04.tmpl +++ b/Dockerfile--ubuntu_24_04.tmpl @@ -64,7 +64,16 @@ ENV LANG=C.UTF-8 RUN chmod 700 /home/test/ && \ mkdir -p /home/test/.ssh && \ - chown -R test:test /home/test/.ssh + echo 'Host *' > /home/test/.ssh/config && \ + echo ' ControlMaster auto' >> /home/test/.ssh/config && \ + echo ' ControlPath /home/test/.ssh/master-%r@%h:%p' >> /home/test/.ssh/config && \ + echo ' ControlPersist 30m' >> /home/test/.ssh/config && \ + echo ' StrictHostKeyChecking no' >> /home/test/.ssh/config && \ + echo ' UserKnownHostsFile /dev/null' >> /home/test/.ssh/config && \ + echo ' GSSAPIAuthentication no' >> /home/test/.ssh/config && \ + chown -R test:test /home/test/.ssh && \ + chmod 700 /home/test/.ssh && \ + chmod 600 /home/test/.ssh/config # # \"$@\" @@ -90,11 +99,6 @@ if [ ! -f /home/test/.ssh/id_rsa ]; then \ chmod 600 /home/test/.ssh/authorized_keys; \ fi; \ ls -la /home/test/.ssh/; \ -su test -c \"ssh-keyscan -H localhost >> /home/test/.ssh/known_hosts\"; \ -su test -c \"ssh-keyscan -H 127.0.0.1 >> /home/test/.ssh/known_hosts\"; \ -if [ -n \"${TEST_CFG__REMOTE_HOST:-}\" ]; then \ - su test -c \"ssh-keyscan -H ${TEST_CFG__REMOTE_HOST} >> /home/test/.ssh/known_hosts\"; \ -fi; \ if [ -n \"${TEST_CFG__REMOTE_SSH_KEY:-}\" ]; then \ cp \"${TEST_CFG__REMOTE_SSH_KEY}\" \"${TEST_CFG__REMOTE_SSH_KEY}_ci\"; \ export TEST_CFG__REMOTE_SSH_KEY=\"${TEST_CFG__REMOTE_SSH_KEY}_ci\"; \ From 746aed892f333496866b1cf1c9a699d86bf98a60 Mon Sep 17 00:00:00 2001 From: "d.kovalenko" Date: Wed, 15 Jul 2026 12:46:31 +0300 Subject: [PATCH 2/4] CI: optimization 1) Alpine uses SSH tunnels --- Dockerfile--alpine.tmpl | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/Dockerfile--alpine.tmpl b/Dockerfile--alpine.tmpl index 1cc1f6a2..b99f12cd 100644 --- a/Dockerfile--alpine.tmpl +++ b/Dockerfile--alpine.tmpl @@ -103,7 +103,16 @@ ENV LANG=C.UTF-8 RUN chmod 700 /home/test/ && \ mkdir -p /home/test/.ssh && \ + echo 'Host *' > /home/test/.ssh/config && \ + echo ' ControlMaster auto' >> /home/test/.ssh/config && \ + echo ' ControlPath /home/test/.ssh/master-%r@%h:%p' >> /home/test/.ssh/config && \ + echo ' ControlPersist 30m' >> /home/test/.ssh/config && \ + echo ' StrictHostKeyChecking no' >> /home/test/.ssh/config && \ + echo ' UserKnownHostsFile /dev/null' >> /home/test/.ssh/config && \ + # echo ' GSSAPIAuthentication no' >> /home/test/.ssh/config && \ chown -R test:test /home/test/.ssh && \ + chmod 700 /home/test/.ssh && \ + chmod 600 /home/test/.ssh/config && \ mkdir /home/test/testgres/logs && \ chown -R test:test /home/test/testgres/logs @@ -131,11 +140,6 @@ if [ ! -f /home/test/.ssh/id_rsa ]; then \ chmod 600 /home/test/.ssh/authorized_keys; \ fi; \ ls -la /home/test/.ssh/; \ -su test -c \"ssh-keyscan -H localhost >> /home/test/.ssh/known_hosts\"; \ -su test -c \"ssh-keyscan -H 127.0.0.1 >> /home/test/.ssh/known_hosts\"; \ -if [ -n \"${TEST_CFG__REMOTE_HOST:-}\" ]; then \ - su test -c \"ssh-keyscan -H ${TEST_CFG__REMOTE_HOST} >> /home/test/.ssh/known_hosts\"; \ -fi; \ if [ -n \"${TEST_CFG__REMOTE_SSH_KEY:-}\" ]; then \ cp \"${TEST_CFG__REMOTE_SSH_KEY}\" \"${TEST_CFG__REMOTE_SSH_KEY}_ci\"; \ export TEST_CFG__REMOTE_SSH_KEY=\"${TEST_CFG__REMOTE_SSH_KEY}_ci\"; \ From b75c3984eea9bf3690b8eaac5bc693b3848c23bb Mon Sep 17 00:00:00 2001 From: "d.kovalenko" Date: Wed, 15 Jul 2026 16:06:30 +0300 Subject: [PATCH 3/4] CI: fix for altlinux slow work (10/11) 1) SSH tunnels are used 2) Run sshd via (ulimit -n 1024 && /usr/sbin/sshd) sshd in altlinux has a problem with our option "--ulimit nofile=524288:524288". Amen. --- Dockerfile--altlinux_10.tmpl | 13 +++++++++++-- Dockerfile--altlinux_11.tmpl | 13 +++++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/Dockerfile--altlinux_10.tmpl b/Dockerfile--altlinux_10.tmpl index 036328f2..5a04aba8 100644 --- a/Dockerfile--altlinux_10.tmpl +++ b/Dockerfile--altlinux_10.tmpl @@ -94,7 +94,16 @@ ENV LANG=C.UTF-8 RUN chmod 700 /home/test/ && \ mkdir -p /home/test/.ssh && \ - chown -R test:test /home/test/.ssh + echo 'Host *' > /home/test/.ssh/config && \ + echo ' ControlMaster auto' >> /home/test/.ssh/config && \ + echo ' ControlPath /home/test/.ssh/master-%r@%h:%p' >> /home/test/.ssh/config && \ + echo ' ControlPersist 30m' >> /home/test/.ssh/config && \ + echo ' StrictHostKeyChecking no' >> /home/test/.ssh/config && \ + echo ' UserKnownHostsFile /dev/null' >> /home/test/.ssh/config && \ + echo ' GSSAPIAuthentication no' >> /home/test/.ssh/config && \ + chown -R test:test /home/test/.ssh && \ + chmod 700 /home/test/.ssh && \ + chmod 600 /home/test/.ssh/config # # \"$@\" @@ -104,7 +113,7 @@ RUN chmod 700 /home/test/ && \ ENTRYPOINT ["sh", "-c", " \ set -eux; \ echo 'SYSTEM START: PREPARING SSH'; \ - /usr/sbin/sshd; \ + (ulimit -n 1024 && /usr/sbin/sshd); \ ls -la /home/test/.ssh/; \ \"$@\" \ ", "DUMMY-DUMMY-DUMMY"] diff --git a/Dockerfile--altlinux_11.tmpl b/Dockerfile--altlinux_11.tmpl index 8b29c077..c46f78bb 100644 --- a/Dockerfile--altlinux_11.tmpl +++ b/Dockerfile--altlinux_11.tmpl @@ -95,7 +95,16 @@ ENV LANG=C.UTF-8 RUN chmod 700 /home/test/ && \ mkdir -p /home/test/.ssh && \ - chown -R test:test /home/test/.ssh + echo 'Host *' > /home/test/.ssh/config && \ + echo ' ControlMaster auto' >> /home/test/.ssh/config && \ + echo ' ControlPath /home/test/.ssh/master-%r@%h:%p' >> /home/test/.ssh/config && \ + echo ' ControlPersist 30m' >> /home/test/.ssh/config && \ + echo ' StrictHostKeyChecking no' >> /home/test/.ssh/config && \ + echo ' UserKnownHostsFile /dev/null' >> /home/test/.ssh/config && \ + echo ' GSSAPIAuthentication no' >> /home/test/.ssh/config && \ + chown -R test:test /home/test/.ssh && \ + chmod 700 /home/test/.ssh && \ + chmod 600 /home/test/.ssh/config # # \"$@\" @@ -105,7 +114,7 @@ RUN chmod 700 /home/test/ && \ ENTRYPOINT ["sh", "-c", " \ set -eux; \ echo 'SYSTEM START: PREPARING SSH'; \ - /usr/sbin/sshd; \ + (ulimit -n 1024 && /usr/sbin/sshd); \ ls -la /home/test/.ssh/; \ \"$@\" \ ", "DUMMY-DUMMY-DUMMY"] From f38fd87c811f883046073751014f265c5a2b6ce3 Mon Sep 17 00:00:00 2001 From: "d.kovalenko" Date: Wed, 15 Jul 2026 16:06:53 +0300 Subject: [PATCH 4/4] CI: ci.yml is restored --- .github/workflows/ci.yml | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3ede7161..d11e1fc4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -74,15 +74,6 @@ jobs: fail-fast: false matrix: include: - # altlinux too slow. run it early - - platform: "altlinux_10" - python: "3" - postgres: "17" - case_suffix: "py3_xx_xx-pg17_xx" - - platform: "altlinux_11" - python: "3" - postgres: "17" - case_suffix: "py3_xx_xx-pg17_xx" - platform: "alpine" python: "3.7" postgres: "17" @@ -155,6 +146,14 @@ jobs: python: "3" postgres: "17" case_suffix: "py3_xx_xx-pg17_xx" + - platform: "altlinux_10" + python: "3" + postgres: "17" + case_suffix: "py3_xx_xx-pg17_xx" + - platform: "altlinux_11" + python: "3" + postgres: "17" + case_suffix: "py3_xx_xx-pg17_xx" - platform: "astralinux_1_7" python: "3" postgres: "17"