pgbackrest.git / summary / log / commit / refs
commit fcd00a45f50d03b3e61ce28cd0ee622c05c65fbd
Author: David Steele <david@pgbackrest.org>
Date: Mon Aug 04 21:42:16 2025 +0000
Update user guide and tests to Ubuntu 22.04.
20.04 is EOL so update the user guide and tests to 22.04.
The contributing guide was updated to 22.04 in d55836e7e.
.cirrus.yml | 2 +-
.github/workflows/test.yml | 5 +---
doc/release.pl | 2 +-
doc/xml/user-guide.xml | 28 ++++++++---------
test/container.yaml | 1 -
test/lib/pgBackRestTest/Common/ContainerTest.pm | 2 +-
test/lib/pgBackRestTest/Common/VmTest.pm | 40 +++----------------------
test/src/valgrind.suppress.none | 15 ----------
8 files changed, 22 insertions(+), 73 deletions(-)
diff --git a/.cirrus.yml b/.cirrus.yml
index 2b47153eb..ebd02d8e0 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -11,7 +11,7 @@ auto_cancellation: $CIRRUS_BRANCH != 'integration'
# ----------------------------------------------------------------------------------------------------------------------------------
# arm64_task:
# arm_container:
-# image: ubuntu:20.04
+# image: ubuntu:22.04
# cpu: 4
# memory: 2G
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index c115dac2e..0065e9e17 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -28,14 +28,11 @@ jobs:
# tackle the slowest tests first.
matrix:
include:
- # All integration tests for oldest Debian
- - param: test --vm=u20 --param=module=integration
-
# All tests (without coverage or valgrind) for 32-bit
- param: test --vm=d11 --param=no-performance --param=no-coverage --param=no-valgrind
# Debian/Ubuntu documentation
- - param: doc --vm=u20
+ - param: doc --vm=u22
# All integration tests
- param: test --vm=u22 --param=build-package --param=module=integration
diff --git a/doc/release.pl b/doc/release.pl
index c056baeaf..c718ac85c 100755
--- a/doc/release.pl
+++ b/doc/release.pl
@@ -248,7 +248,7 @@ eval
}
# Generate deployment docs for Debian
- if (!defined($strVm) || $strVm eq VM_U20)
+ if (!defined($strVm) || $strVm eq VM_U22)
{
&log(INFO, "Generate Debian/Ubuntu documentation");
diff --git a/doc/xml/user-guide.xml b/doc/xml/user-guide.xml
index b887e0fb1..3acfcf68f 100644
--- a/doc/xml/user-guide.xml
+++ b/doc/xml/user-guide.xml
@@ -36,7 +36,7 @@
<variable key="os-type-is-rhel">'{[os-type]}' eq '{[os-rhel]}'</variable>
<!-- Defines the container image that will be used to build the host -->
- <variable key="os-image" if="{[os-type-is-debian]}">ubuntu:20.04</variable>
+ <variable key="os-image" if="{[os-type-is-debian]}">ubuntu:22.04</variable>
<variable key="os-image" if="{[os-type-is-rhel]}">rockylinux/rockylinux:8</variable>
<variable key="user-guide-subtitle" if="{[os-type-is-debian]}">{[os-debian-title]}</variable>
@@ -312,11 +312,13 @@
# Fix root tty
RUN sed -i 's/^mesg n/tty -s \&\& mesg n/g' /root/.profile
+ # Non-interactive install
+ ENV DEBIAN_FRONTEND=noninteractive
+
# Install base packages (suppress dpkg interactive output)
- RUN export DEBIAN_FRONTEND=noninteractive && \
- rm /etc/apt/apt.conf.d/70debconf && \
+ RUN rm /etc/apt/apt.conf.d/70debconf && \
apt-get update && \
- apt-get install -y --no-install-recommends sudo ssh wget vim gnupg lsb-release iputils-ping ca-certificates \
+ apt-get install -y --no-install-recommends sudo ssh curl vim gnupg lsb-release iputils-ping ca-certificates \
tzdata locales libssh2-1-dev 2>&1
{[sudo-disable-core-dump]}
@@ -324,19 +326,17 @@
# Install CA certificate
RUN update-ca-certificates
+ # Allow RSA keys in ssh
+ RUN echo 'PubkeyAcceptedAlgorithms +ssh-rsa' >> /etc/ssh/sshd_config
+
# Install PostgreSQL
- RUN RELEASE_CODENAME=`lsb_release -c | awk '{print $2}'` && \
- echo 'deb http://apt.postgresql.org/pub/repos/apt/ '${RELEASE_CODENAME?}'-pgdg main' | \
- tee -a /etc/apt/sources.list.d/pgdg.list && \
- wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - && \
- apt-get update && \
- apt-get install -y --no-install-recommends postgresql-common 2>&1 && \
- sed -i 's/^\#create\_main\_cluster.*$/create\_main\_cluster \= false/' \
- /etc/postgresql-common/createcluster.conf && \
- apt-get install -y --no-install-recommends postgresql-{[pg-version]} postgresql-{[pg-version-upgrade]} 2>&1
+ RUN apt-get install -y --no-install-recommends postgresql-common 2>&1
+ RUN /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -y
+ RUN sed -i 's/^\#create\_main\_cluster.*$/create\_main\_cluster \= false/' /etc/postgresql-common/createcluster.conf
+ RUN apt-get install -y --no-install-recommends postgresql-{[pg-version]} postgresql-{[pg-version-upgrade]} 2>&1
# Install Azure CLI
- RUN apt-get install -y azure-cli
+ RUN curl -sL https://aka.ms/InstallAzureCLIDeb | bash
# Create an ssh key for root so all hosts can ssh to each other as root
RUN \ {[ssh-key-install]}
diff --git a/test/container.yaml b/test/container.yaml
index b49356086..ea144d322 100644
--- a/test/container.yaml
+++ b/test/container.yaml
@@ -34,4 +34,3 @@
x86_64:
d11: be044bf120ca3e7d8bed69d5a83b4de4926be87f
rh8: 4d141c845abfbdbf402ba447cf2bd2e4357c8a63
- u20: d9618e4e2380da312152cf672ff56cfb8ec8abe2
diff --git a/test/lib/pgBackRestTest/Common/ContainerTest.pm b/test/lib/pgBackRestTest/Common/ContainerTest.pm
index 1bedb0b82..4923f4b58 100644
--- a/test/lib/pgBackRestTest/Common/ContainerTest.pm
+++ b/test/lib/pgBackRestTest/Common/ContainerTest.pm
@@ -438,7 +438,7 @@ sub containerBuild
" libbz2-dev bzip2 libyaml-dev libjson-pp-perl liblz4-dev liblz4-tool gnupg lsb-release ccache meson \\\n" .
" libssh2-1-dev libcurl4-openssl-dev";
- if ($strOS eq VM_U20 || $strOS eq VM_U22)
+ if ($strOS eq VM_U22)
{
$strScript .= " valgrind";
}
diff --git a/test/lib/pgBackRestTest/Common/VmTest.pm b/test/lib/pgBackRestTest/Common/VmTest.pm
index e68fe940e..b1ee44a95 100644
--- a/test/lib/pgBackRestTest/Common/VmTest.pm
+++ b/test/lib/pgBackRestTest/Common/VmTest.pm
@@ -85,13 +85,11 @@ use constant VM_RH8 => 'rh8';
push @EXPORT, qw(VM_RH8);
use constant VM_F42 => 'f42';
push @EXPORT, qw(VM_F42);
-use constant VM_U20 => 'u20';
- push @EXPORT, qw(VM_U20);
use constant VM_U22 => 'u22';
push @EXPORT, qw(VM_U22);
# List of default test VMs
-use constant VM_LIST => (VM_U20, VM_D11, VM_RH8, VM_U22);
+use constant VM_LIST => (VM_D11, VM_RH8, VM_U22);
push @EXPORT, qw(VM_LIST);
my $oyVm =
@@ -186,6 +184,7 @@ my $oyVm =
PG_VERSION_14,
PG_VERSION_15,
PG_VERSION_16,
+ PG_VERSION_17,
],
},
@@ -216,38 +215,6 @@ my $oyVm =
],
},
- # Ubuntu 20.04
- &VM_U20 =>
- {
- &VM_OS_BASE => VM_OS_BASE_DEBIAN,
- &VM_IMAGE => 'ubuntu:20.04',
- &VM_ARCH => VM_ARCH_X86_64,
- &VMDEF_COVERAGE_C => true,
- &VMDEF_PGSQL_BIN => '/usr/lib/postgresql/{[version]}/bin',
-
- &VMDEF_WITH_ZST => true,
-
- &VM_DB =>
- [
- PG_VERSION_95,
- PG_VERSION_96,
- PG_VERSION_10,
- PG_VERSION_11,
- PG_VERSION_12,
- PG_VERSION_13,
- PG_VERSION_14,
- PG_VERSION_15,
- PG_VERSION_16,
- PG_VERSION_17,
- ],
-
- &VM_DB_TEST =>
- [
- PG_VERSION_95,
- PG_VERSION_96,
- ],
- },
-
# Ubuntu 22.04
&VM_U22 =>
{
@@ -276,10 +243,11 @@ my $oyVm =
&VM_DB_TEST =>
[
+ PG_VERSION_95,
+ PG_VERSION_96,
PG_VERSION_10,
PG_VERSION_11,
PG_VERSION_12,
- PG_VERSION_17,
PG_VERSION_18,
],
},
diff --git a/test/src/valgrind.suppress.none b/test/src/valgrind.suppress.none
index 4ddc4bfe0..e69de29bb 100644
--- a/test/src/valgrind.suppress.none
+++ b/test/src/valgrind.suppress.none
@@ -1,15 +0,0 @@
-# Suppress issues in libssh2 on Ubuntu 20.04
-{
- libssh2_ubuntu_20_04
- Memcheck:Addr1
- ...
- obj:/usr/lib/x86_64-linux-gnu/libssh2.so.1.0.1
- ...
-}
-{
- libssh2_ubuntu_20_04
- Memcheck:Leak
- ...
- obj:/usr/lib/x86_64-linux-gnu/libssh2.so.1.0.1
- ...
-}
[parent: 03cabe2644a6]