From 88934a365d53dbbc10d8c45d5a641d7c70d530bd Mon Sep 17 00:00:00 2001 From: Takashi Menjo Date: Thu, 20 Jan 2022 12:01:56 +0900 Subject: [PATCH v8 10/11] [For CI only] Setup Cirrus CI for --with-libpmem This is work-in-progress. It supports BSD and Linux, but does not support Windows and macOS yet. --- .cirrus.yml | 11 +++++++++++ src/tools/ci/windows_build_config.pl | 1 + 2 files changed, 12 insertions(+) diff --git a/.cirrus.yml b/.cirrus.yml index 677bdf0e65..a2539cd2b4 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -25,6 +25,7 @@ env: PGCTLTIMEOUT: 120 # avoids spurious failures during parallel tests TEMP_CONFIG: ${CIRRUS_WORKING_DIR}/src/tools/ci/pg_ci_base.conf PG_TEST_EXTRA: kerberos ldap ssl + PMEM_IS_PMEM_FORCE: 1 # What files to preserve in case tests fail @@ -81,6 +82,7 @@ task: mkdir -m 770 /tmp/cores chown root:postgres /tmp/cores sysctl kern.corefile='/tmp/cores/%N.%P.core' + pkg install -y devel/pmdk # NB: Intentionally build without --with-llvm. The freebsd image size is # already large enough to make VM startup slow, and even without llvm @@ -94,6 +96,7 @@ task: --with-gssapi \ --with-icu \ --with-ldap \ + --with-libpmem \ --with-libxml \ --with-libxslt \ --with-lz4 \ @@ -132,6 +135,7 @@ LINUX_CONFIGURE_FEATURES: &LINUX_CONFIGURE_FEATURES >- --with-gssapi --with-icu --with-ldap + --with-libpmem --with-libxml --with-libxslt --with-llvm @@ -188,6 +192,9 @@ task: mkdir -m 770 /tmp/cores chown root:postgres /tmp/cores sysctl kernel.core_pattern='/tmp/cores/%e-%s-%p.core' + echo 'deb http://deb.debian.org/debian bullseye universe' >>/etc/apt/sources.list + apt-get -y update + apt-get -y install libpmem-dev configure_script: | su postgres <<-EOF @@ -257,6 +264,7 @@ task: # packages do not need to be downloaded. homebrew_cache: folder: $HOMEBREW_CACHE + # TODO: Install libpmem homebrew_install_script: | brew install \ ccache \ @@ -297,6 +305,7 @@ task: --with-gssapi \ --with-icu \ --with-ldap \ + --with-libpmem \ --with-libxml \ --with-libxslt \ --with-lz4 \ @@ -379,6 +388,8 @@ task: powershell -Command get-psdrive -psprovider filesystem set + # TODO: install libpmem + configure_script: # copy errors out when using forward slashes - copy src\tools\ci\windows_build_config.pl src\tools\msvc\config.pl diff --git a/src/tools/ci/windows_build_config.pl b/src/tools/ci/windows_build_config.pl index b0d4360c74..ae5fdd635a 100644 --- a/src/tools/ci/windows_build_config.pl +++ b/src/tools/ci/windows_build_config.pl @@ -8,6 +8,7 @@ $config->{"asserts"} = 1; $config->{"openssl"} = "c:/openssl/1.1/"; $config->{"perl"} = "c:/strawberry/$ENV{DEFAULT_PERL_VERSION}/perl/"; +$config->{"pmem"} = 1; # TODO $config->{"python"} = "c:/python/"; 1; -- 2.25.1