mirror of
https://github.com/postgres/postgres.git
synced 2025-06-05 23:56:58 +03:00
ci: Change macOS builds from Intel to ARM.
Cirrus is about to shut down its macOS-on-Intel support, so it's time to move our CI testing over to ARM instances. The Homebrew package manager changed its default installation prefix for the new architecture, so a couple of tests need tweaks to find binaries. Back-patch to 15, where in-tree CI began. Author: Justin Pryzby <pryzby@telsasoft.com> Discussion: https://postgr.es/m/20221122225744.GF11463%40telsasoft.com
This commit is contained in:
parent
8ad51b5f44
commit
14d63dd252
@ -407,7 +407,7 @@ task:
|
|||||||
name: macOS - Monterey - Meson
|
name: macOS - Monterey - Meson
|
||||||
|
|
||||||
env:
|
env:
|
||||||
CPUS: 12 # always get that much for cirrusci macOS instances
|
CPUS: 4 # always get that much for cirrusci macOS instances
|
||||||
BUILD_JOBS: $CPUS
|
BUILD_JOBS: $CPUS
|
||||||
# Test performance regresses noticably when using all cores. 8 seems to
|
# Test performance regresses noticably when using all cores. 8 seems to
|
||||||
# work OK. See
|
# work OK. See
|
||||||
@ -428,8 +428,8 @@ task:
|
|||||||
depends_on: SanityCheck
|
depends_on: SanityCheck
|
||||||
only_if: $CIRRUS_CHANGE_MESSAGE !=~ '.*\nci-os-only:.*' || $CIRRUS_CHANGE_MESSAGE =~ '.*\nci-os-only:[^\n]*(macos|darwin|osx).*'
|
only_if: $CIRRUS_CHANGE_MESSAGE !=~ '.*\nci-os-only:.*' || $CIRRUS_CHANGE_MESSAGE =~ '.*\nci-os-only:[^\n]*(macos|darwin|osx).*'
|
||||||
|
|
||||||
osx_instance:
|
macos_instance:
|
||||||
image: monterey-base
|
image: ghcr.io/cirruslabs/macos-monterey-base:latest
|
||||||
|
|
||||||
sysinfo_script: |
|
sysinfo_script: |
|
||||||
id
|
id
|
||||||
@ -475,7 +475,7 @@ task:
|
|||||||
ccache_cache:
|
ccache_cache:
|
||||||
folder: $CCACHE_DIR
|
folder: $CCACHE_DIR
|
||||||
configure_script: |
|
configure_script: |
|
||||||
brewpath="/usr/local"
|
brewpath="/opt/homebrew"
|
||||||
PKG_CONFIG_PATH="${brewpath}/lib/pkgconfig:${PKG_CONFIG_PATH}"
|
PKG_CONFIG_PATH="${brewpath}/lib/pkgconfig:${PKG_CONFIG_PATH}"
|
||||||
|
|
||||||
for pkg in icu4c krb5 openldap openssl zstd ; do
|
for pkg in icu4c krb5 openldap openssl zstd ; do
|
||||||
|
@ -32,8 +32,15 @@ elsif ($ENV{PG_TEST_EXTRA} !~ /\bkerberos\b/)
|
|||||||
|
|
||||||
my ($krb5_bin_dir, $krb5_sbin_dir);
|
my ($krb5_bin_dir, $krb5_sbin_dir);
|
||||||
|
|
||||||
if ($^O eq 'darwin')
|
if ($^O eq 'darwin' && -d "/opt/homebrew" )
|
||||||
{
|
{
|
||||||
|
# typical paths for Homebrew on ARM
|
||||||
|
$krb5_bin_dir = '/opt/homebrew/opt/krb5/bin';
|
||||||
|
$krb5_sbin_dir = '/opt/homebrew/opt/krb5/sbin';
|
||||||
|
}
|
||||||
|
elsif ($^O eq 'darwin')
|
||||||
|
{
|
||||||
|
# typical paths for Homebrew on Intel
|
||||||
$krb5_bin_dir = '/usr/local/opt/krb5/bin';
|
$krb5_bin_dir = '/usr/local/opt/krb5/bin';
|
||||||
$krb5_sbin_dir = '/usr/local/opt/krb5/sbin';
|
$krb5_sbin_dir = '/usr/local/opt/krb5/sbin';
|
||||||
}
|
}
|
||||||
|
@ -21,9 +21,15 @@ elsif ($ENV{PG_TEST_EXTRA} !~ /\bldap\b/)
|
|||||||
{
|
{
|
||||||
plan skip_all => 'Potentially unsafe test LDAP not enabled in PG_TEST_EXTRA';
|
plan skip_all => 'Potentially unsafe test LDAP not enabled in PG_TEST_EXTRA';
|
||||||
}
|
}
|
||||||
|
elsif ($^O eq 'darwin' && -d '/opt/homebrew/opt/openldap')
|
||||||
|
{
|
||||||
|
# typical paths for Homebrew on ARM
|
||||||
|
$slapd = '/opt/homebrew/opt/openldap/libexec/slapd';
|
||||||
|
$ldap_schema_dir = '/opt/homebrew/etc/openldap/schema';
|
||||||
|
}
|
||||||
elsif ($^O eq 'darwin' && -d '/usr/local/opt/openldap')
|
elsif ($^O eq 'darwin' && -d '/usr/local/opt/openldap')
|
||||||
{
|
{
|
||||||
# typical paths for Homebrew
|
# typical paths for Homebrew on Intel
|
||||||
$slapd = '/usr/local/opt/openldap/libexec/slapd';
|
$slapd = '/usr/local/opt/openldap/libexec/slapd';
|
||||||
$ldap_schema_dir = '/usr/local/etc/openldap/schema';
|
$ldap_schema_dir = '/usr/local/etc/openldap/schema';
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user