Skip to content
This repository has been archived by the owner on Jan 15, 2025. It is now read-only.

Correctly patch host ruby 3.2.3 and 3.2.4 when cross compiling #847

Merged
merged 5 commits into from
May 14, 2024

Conversation

joshcooper
Copy link
Contributor

@joshcooper joshcooper commented May 8, 2024

  • Our pl-ruby-patch wasn't being applied correctly after homebrew updated ruby@3.2 to 3.2.3
  • Fail the build if host rubygems is newer than 3.5.10 so we don't silently continue
  • Correct --enable-system-libffi option when installing the ffi gem
  • Only install ffi gem once
  • Remove nokogiri work around for macOS 12 ARM
  • Namespace gem_install_options
# otool -L /opt/puppetlabs/puppet/lib/ruby/gems/3.2.0/extensions/arm64-darwin/3.2.0/nokogiri-1.14.2/nokogiri/nokogiri.bundle
/opt/puppetlabs/puppet/lib/ruby//gems/3.2.0/extensions/arm64-darwin/3.2.0/nokogiri-1.14.2/nokogiri/nokogiri.bundle:
	/opt/puppetlabs/puppet/lib/libruby.3.2.dylib (compatibility version 3.2.0, current version 3.2.3)
	/opt/puppetlabs/puppet/lib/libexslt.0.dylib (compatibility version 9.0.0, current version 9.21.0)
	/opt/puppetlabs/puppet/lib/libxslt.1.dylib (compatibility version 3.0.0, current version 3.39.0)
	/opt/puppetlabs/puppet/lib/libxml2.2.dylib (compatibility version 15.0.0, current version 15.6.0)
	/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1311.0.0)

https://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts

Tested builds using https://gist.github.com/joshcooper/1b183a2cf11c461c3506b5d2b803555e The output for cross-compiled builds is in a comment below.

  • build agent-runtime-main
    • mac 11 ARM * (not supported)
    • mac 11 Intel
    • mac 12 ARM *
    • mac 12 Intel
    • mac 13 ARM
    • mac 13 Intel
    • mac 14 ARM
    • mac 14 Intel
    • rhel 9 Intel
    • rhel 9 Power
    • debian 12 ARM
    • solaris 11 Intel
    • solaris 11 SPARC *
  • build agent-runtime-7.x
    • mac 11 ARM *
    • mac 11 Intel
    • mac 12 ARM *
    • mac 12 Intel
    • mac 13 ARM
    • mac 13 Intel
    • mac 14 ARM
    • mac 14 Intel
    • rhel 9 Intel
    • rhel 9 Power
    • debian 12 ARM
    • solaris 10 Intel
    • solaris 10 SPARC *
    • solaris 11 Intel
    • solaris 11 SPARC *
  • are cross compiled

@joshcooper joshcooper force-pushed the mac_cross_compile branch 4 times, most recently from c42b749 to 433e811 Compare May 10, 2024 05:03
joshcooper added 5 commits May 9, 2024 22:10
Previously, we were installing the ffi gem twice, but with different arguments,
once in the base-rubygem component and again in the rubygem-ffi component. For
example:

    /opt/puppetlabs/puppet/bin/gem install --no-document --local ffi-1.15.5.gem && \
    /opt/puppetlabs/puppet/bin/gem install --no-document --local ffi-1.15.5.gem -- --enable-system-ffi
    Building native extensions. This could take a while...
    Successfully installed ffi-1.15.5
    1 gem installed
    Building native extensions with: '--enable-system-ffi'
    This could take a while...
    Successfully installed ffi-1.15.5
    1 gem installed

Now we only execute the gem install command once. On Windows, we install ffi
gems with precompiled binaries (so we don't need to specify enable/disable
flags). On non-Windows, we continue to pass enable/disable based on the ruby
version.
The ffi gem depends on the libffi native library. When installing the ffi gem,
we need to specify the name of the library in the enable/disable-system-libffi
option.
Previously, our rubygems patch wasn't being applied when cross compiling mac 12
ARM, because homebrew updated to ruby 3.2.4 and builder.rb was modified:

    - cmd = Gem.ruby.shellsplit
    + cmd = Shellwords.split(Gem.ruby)

The code for patching is very fragile and has broken multiple times without any
indication that the patch failed to apply, causing the resulting native
extensions to be compiled for the wrong architecture.

The code was also conflating the `settings[:ruby_version]` in our ruby component
with the host's ruby version (the one we're actually trying to patch). Also the
version that matters is the rubygems version (Gem::VERSION), not RUBY_VERSION.
For example, if `gem update --system` was executed during provisioning, then
our patch would fail to apply.

This commit creates a script that runs on the remote system and so can
introspect the host's ruby and rubygems versions. This way if brew updates to a
newer ruby/rubygems, we can fail the build.
…2 ARM

Now that we're patching homebrew's ruby 3.2.4 correctly, we can remove our
workaround and use platform=ruby as suggested in
https://nokogiri.org/tutorials/installing_nokogiri.html#installing-using-standard-system-libraries

Note --platform is an option to `gem install` so it comes before double dashes.
Settings are shared across all components, so `settings[:gem_install_options]`
in the ffi gem caused its options to be passed to gems that follow like gssapi
in the bolt-runtime:

    /opt/puppetlabs/bolt/bin/gem install --no-document --local --bindir=/opt/puppetlabs/bolt/bin gssapi-1.3.1.gem -- --disable-system-libffi

This commit namespaces the options so they only apply when installing that
specific gem. The namespace is based on the full gem name like `rubygems-ffi`,
not the short name `ffi`.
@joshcooper joshcooper force-pushed the mac_cross_compile branch from 433e811 to 9c19360 Compare May 10, 2024 05:10
@joshcooper joshcooper marked this pull request as ready for review May 10, 2024 19:28
@joshcooper joshcooper requested review from a team as code owners May 10, 2024 19:28
@joshcooper joshcooper marked this pull request as draft May 10, 2024 19:33
@joshcooper
Copy link
Contributor Author

joshcooper commented May 13, 2024

agent-runtime-main

macOS 12 ARM

$ scp install-runtime.sh pix-arm64-macos12-3.nspooler-prod.puppet.net:. && ssh pix-arm64-macos12-3.nspooler-prod.puppet.net bash ./install-runtime.sh --sha 9c19360894d2b776aea2bea9c524dbf848be706b --version 202308240.244.g9c19360 --runtime agent-runtime-main
Warning: Permanently added 'pix-arm64-macos12-3.nspooler-prod.puppet.net,10.16.23.35' (ECDSA) to the list of known hosts.
install-runtime.sh                                                                                                                                                                                                                              100%   18KB   1.4MB/s   00:00    
Warning: Permanently added 'pix-arm64-macos12-3.nspooler-prod.puppet.net,10.16.23.35' (ECDSA) to the list of known hosts.
10:06:40 -0700 INFO: Resolved platform macOS (arm64)
10:06:40 -0700 INFO: Cleaning /opt/puppetlabs
10:06:40 -0700 INFO: Execute: rm -rf /opt/puppetlabs 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
10:06:41 -0700 INFO: Downloading http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-main-202308240.244.g9c19360.osx-12-arm64.tar.gz
10:06:41 -0700 INFO:   to file /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319/agent-runtime-main-202308240.244.g9c19360.osx-12-arm64.tar.gz
10:06:41 -0700 INFO: Trying curl...
10:06:41 -0700 INFO: Execute: curl -1 -sL -D /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319 'http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-main-202308240.244.g9c19360.osx-12-arm64.tar.gz' > '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319/agent-runtime-main-202308240.244.g9c19360.osx-12-arm64.tar.gz'
10:06:41 -0700 INFO: Extracting /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319/agent-runtime-main-202308240.244.g9c19360.osx-12-arm64.tar.gz
10:06:41 -0700 INFO:   in directory /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319
10:06:41 -0700 INFO: Execute: tar -C'/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319' -xf '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319/agent-runtime-main-202308240.244.g9c19360.osx-12-arm64.tar.gz' 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
10:06:44 -0700 INFO: Moving /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319/opt/puppetlabs to /opt/.
10:06:44 -0700 INFO: Execute: mv '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2782.48319/opt/puppetlabs' '/opt/.' 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
10:06:44 -0700 INFO: Checking ruby
10:06:44 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby --version 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
ruby 3.2.3 (2024-01-18 revision 52bb2ac0a6) [arm64-darwin]
10:06:44 -0700 INFO: Checking openssl
10:06:44 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/openssl version 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
OpenSSL 3.0.13 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024)
10:06:45 -0700 INFO: Checking curl
10:06:45 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/curl --version 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
curl 8.7.1 (aarch64-apple-darwin) libcurl/8.7.1 OpenSSL/3.0.13 zlib/1.2.11
Release-Date: 2024-03-27
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTPS-proxy IPv6 Largefile libz SSL threadsafe TLS-SRP UnixSockets
10:06:45 -0700 INFO: Checking ffi
10:06:45 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby -e 'puts require "ffi"' 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
true
10:06:45 -0700 INFO: Checking mismatched architecture
10:06:45 -0700 INFO: Execute: find /opt/puppetlabs/puppet -type f \( -name '*.so' -o -name '*.dylib' -o -name '*.bundle' \) -exec file {} \; | cut -f2 -d: | grep -v arm64 | wc -l 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2782.48319
       0

Solaris 11 SPARC

$ scp install-runtime.sh pix-sol11-2.delivery.puppetlabs.net:. && ssh pix-sol11-2.delivery.puppetlabs.net bash ./install-runtime.sh --sha 9c19360894d2b776aea2bea9c524dbf848be706b --version 202308240.244.g9c19360 --runtime agent-runtime-main
Warning: Permanently added 'pix-sol11-2.delivery.puppetlabs.net,10.16.78.40' (RSA) to the list of known hosts.
install-runtime.sh                                                                                                                                                                                                                              100%   18KB   1.2MB/s   00:00    
Warning: Permanently added 'pix-sol11-2.delivery.puppetlabs.net,10.16.78.40' (RSA) to the list of known hosts.
10:13:22 -0700 INFO: Resolved platform Solaris (sparc)
10:13:22 -0700 INFO: Cleaning /opt/puppetlabs
10:13:22 -0700 INFO: Execute: rm -rf /opt/puppetlabs 2>/tmp/stderr.1597.423379870
10:13:23 -0700 INFO: Downloading http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-main-202308240.244.g9c19360.solaris-11-sparc.tar.gz
10:13:23 -0700 INFO:   to file /tmp/install.sh.1597.423379870/agent-runtime-main-202308240.244.g9c19360.solaris-11-sparc.tar.gz
10:13:23 -0700 INFO: Trying curl...
10:13:23 -0700 INFO: Execute: curl -1 -sL -D /tmp/stderr.1597.423379870 'http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-main-202308240.244.g9c19360.solaris-11-sparc.tar.gz' > '/tmp/install.sh.1597.423379870/agent-runtime-main-202308240.244.g9c19360.solaris-11-sparc.tar.gz'
10:13:24 -0700 INFO: Extracting /tmp/install.sh.1597.423379870/agent-runtime-main-202308240.244.g9c19360.solaris-11-sparc.tar.gz
10:13:24 -0700 INFO:   in directory /tmp/install.sh.1597.423379870
10:13:24 -0700 INFO: Execute: gtar -C'/tmp/install.sh.1597.423379870' -xf '/tmp/install.sh.1597.423379870/agent-runtime-main-202308240.244.g9c19360.solaris-11-sparc.tar.gz' 2>/tmp/stderr.1597.423379870
10:13:28 -0700 INFO: Moving /tmp/install.sh.1597.423379870/opt/puppetlabs to /opt/.
10:13:28 -0700 INFO: Execute: mv '/tmp/install.sh.1597.423379870/opt/puppetlabs' '/opt/.' 2>/tmp/stderr.1597.423379870
10:13:40 -0700 INFO: Checking ruby
10:13:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby --version 2>/tmp/stderr.1597.423379870
ruby 3.2.3 (2024-01-18 revision 52bb2ac0a6) [sparc-solaris2.11]
10:13:40 -0700 INFO: Checking openssl
10:13:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/openssl version 2> /tmp/stderr.1597.423379870
OpenSSL 3.0.13 30 Jan 2024 (Library: OpenSSL 3.0.13 30 Jan 2024)
10:13:40 -0700 INFO: Checking curl
10:13:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/curl --version 2> /tmp/stderr.1597.423379870
curl 8.7.1 (sparc-sun-solaris2.11) libcurl/8.7.1 OpenSSL/3.0.13 zlib/1.2.8-T4mods
Release-Date: 2024-03-27
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTPS-proxy IPv6 Largefile libz SSL threadsafe TLS-SRP UnixSockets
10:13:40 -0700 INFO: Checking ffi
10:13:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby -e 'puts require "ffi"' 2> /tmp/stderr.1597.423379870
true
10:13:41 -0700 INFO: Checking mismatched architecture
10:13:41 -0700 INFO: Execute: find /opt/puppetlabs/puppet -type f \( -name '*.so' -o -name '*.dylib' -o -name '*.bundle' \) -exec file {} \; | cut -f2 -d: | grep -v SPARC32PLUS | wc -l 2> /tmp/stderr.1597.423379870
       0

agent-runtime-7.x

macOS 12 ARM

$ scp install-runtime.sh pix-arm64-macos12-3.nspooler-prod.puppet.net:. && ssh pix-arm64-macos12-3.nspooler-prod.puppet.net bash ./install-runtime.sh --sha 9c19360894d2b776aea2bea9c524dbf848be706b --version 202308240.244.g9c19360 --runtime agent-runtime-7.x 
Warning: Permanently added 'pix-arm64-macos12-3.nspooler-prod.puppet.net,10.16.23.35' (ECDSA) to the list of known hosts.
install-runtime.sh                                                                                                                                                                                                                              100%   18KB   1.3MB/s   00:00    
Warning: Permanently added 'pix-arm64-macos12-3.nspooler-prod.puppet.net,10.16.23.35' (ECDSA) to the list of known hosts.
09:57:01 -0700 INFO: Resolved platform macOS (arm64)
09:57:01 -0700 INFO: Cleaning /opt/puppetlabs
09:57:01 -0700 INFO: Execute: rm -rf /opt/puppetlabs 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
09:57:02 -0700 INFO: Downloading http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-7.x-202308240.244.g9c19360.osx-12-arm64.tar.gz
09:57:02 -0700 INFO:   to file /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829/agent-runtime-7.x-202308240.244.g9c19360.osx-12-arm64.tar.gz
09:57:02 -0700 INFO: Trying curl...
09:57:02 -0700 INFO: Execute: curl -1 -sL -D /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829 'http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-7.x-202308240.244.g9c19360.osx-12-arm64.tar.gz' > '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829/agent-runtime-7.x-202308240.244.g9c19360.osx-12-arm64.tar.gz'
09:57:03 -0700 INFO: Extracting /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829/agent-runtime-7.x-202308240.244.g9c19360.osx-12-arm64.tar.gz
09:57:03 -0700 INFO:   in directory /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829
09:57:03 -0700 INFO: Execute: tar -C'/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829' -xf '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829/agent-runtime-7.x-202308240.244.g9c19360.osx-12-arm64.tar.gz' 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
09:57:05 -0700 INFO: Moving /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829/opt/puppetlabs to /opt/.
09:57:05 -0700 INFO: Execute: mv '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/install.sh.2541.29829/opt/puppetlabs' '/opt/.' 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
09:57:05 -0700 INFO: Checking ruby
09:57:05 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby --version 2>/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
ruby 2.7.8p225 (2023-03-30 revision 1f4d455848) [aarch64-darwin]
09:57:05 -0700 INFO: Checking openssl
09:57:05 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/openssl version 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
OpenSSL 1.1.1v  1 Aug 2023
09:57:06 -0700 INFO: Checking curl
09:57:06 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/curl --version 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
curl 7.88.1 (aarch64-apple-darwin) libcurl/7.88.1 OpenSSL/1.1.1v zlib/1.2.11
Release-Date: 2023-02-20
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL threadsafe TLS-SRP UnixSockets
09:57:06 -0700 INFO: Checking ffi
09:57:06 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby -e 'puts require "ffi"' 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
true
09:57:06 -0700 INFO: Checking mismatched architecture
09:57:06 -0700 INFO: Execute: find /opt/puppetlabs/puppet -type f \( -name '*.so' -o -name '*.dylib' -o -name '*.bundle' \) -exec file {} \; | cut -f2 -d: | grep -v arm64 | wc -l 2> /var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/stderr.2541.29829
       0

Solaris 11 SPARC

$ scp install-runtime.sh pix-sol11-2.delivery.puppetlabs.net:. && ssh pix-sol11-2.delivery.puppetlabs.net bash ./install-runtime.sh --sha 9c19360894d2b776aea2bea9c524dbf848be706b --version 202308240.244.g9c19360 --runtime agent-runtime-7.x                
Warning: Permanently added 'pix-sol11-2.delivery.puppetlabs.net,10.16.78.40' (RSA) to the list of known hosts.
install-runtime.sh                                                                                                                                                                                                                              100%   18KB   1.3MB/s   00:00    
Warning: Permanently added 'pix-sol11-2.delivery.puppetlabs.net,10.16.78.40' (RSA) to the list of known hosts.
10:11:23 -0700 INFO: Resolved platform Solaris (sparc)
10:11:23 -0700 INFO: Cleaning /opt/puppetlabs
10:11:23 -0700 INFO: Execute: rm -rf /opt/puppetlabs 2>/tmp/stderr.1406.469285566
10:11:24 -0700 INFO: Downloading http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-7.x-202308240.244.g9c19360.solaris-11-sparc.tar.gz
10:11:24 -0700 INFO:   to file /tmp/install.sh.1406.469285566/agent-runtime-7.x-202308240.244.g9c19360.solaris-11-sparc.tar.gz
10:11:24 -0700 INFO: Trying curl...
10:11:24 -0700 INFO: Execute: curl -1 -sL -D /tmp/stderr.1406.469285566 'http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-7.x-202308240.244.g9c19360.solaris-11-sparc.tar.gz' > '/tmp/install.sh.1406.469285566/agent-runtime-7.x-202308240.244.g9c19360.solaris-11-sparc.tar.gz'
10:11:25 -0700 INFO: Extracting /tmp/install.sh.1406.469285566/agent-runtime-7.x-202308240.244.g9c19360.solaris-11-sparc.tar.gz
10:11:25 -0700 INFO:   in directory /tmp/install.sh.1406.469285566
10:11:25 -0700 INFO: Execute: gtar -C'/tmp/install.sh.1406.469285566' -xf '/tmp/install.sh.1406.469285566/agent-runtime-7.x-202308240.244.g9c19360.solaris-11-sparc.tar.gz' 2>/tmp/stderr.1406.469285566
10:11:28 -0700 INFO: Moving /tmp/install.sh.1406.469285566/opt/puppetlabs to /opt/.
10:11:28 -0700 INFO: Execute: mv '/tmp/install.sh.1406.469285566/opt/puppetlabs' '/opt/.' 2>/tmp/stderr.1406.469285566
10:11:40 -0700 INFO: Checking ruby
10:11:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby --version 2>/tmp/stderr.1406.469285566
ruby 2.7.8p225 (2023-03-30 revision 1f4d455848) [sparc-solaris2.11]
10:11:40 -0700 INFO: Checking openssl
10:11:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/openssl version 2> /tmp/stderr.1406.469285566
OpenSSL 1.1.1v  1 Aug 2023
10:11:40 -0700 INFO: Checking curl
10:11:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/curl --version 2> /tmp/stderr.1406.469285566
curl 7.88.1 (sparc-sun-solaris2.11) libcurl/7.88.1 OpenSSL/1.1.1v zlib/1.2.8-T4mods
Release-Date: 2023-02-20
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL TLS-SRP UnixSockets
10:11:40 -0700 INFO: Checking ffi
10:11:40 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby -e 'puts require "ffi"' 2> /tmp/stderr.1406.469285566
true
10:11:40 -0700 INFO: Checking mismatched architecture
10:11:40 -0700 INFO: Execute: find /opt/puppetlabs/puppet -type f \( -name '*.so' -o -name '*.dylib' -o -name '*.bundle' \) -exec file {} \; | cut -f2 -d: | grep -v SPARC32PLUS | wc -l 2> /tmp/stderr.1406.469285566
       0

Solaris 10 SPARC

$ scp install-runtime.sh pix-sol10-1.delivery.puppetlabs.net:. && ssh pix-sol10-1.delivery.puppetlabs.net bash ./install-runtime.sh --sha 9c19360894d2b776aea2bea9c524dbf848be706b --version 202308240.244.g9c19360 --runtime agent-runtime-7.x 
install-runtime.sh                                                                                                                                                                                                                              100%   18KB   1.2MB/s   00:00    
10:18:01 -0700 TMPDIR /tmp/install.sh.3261.42
10:18:01 -0700 INFO: Resolved platform Solaris (sparc)
10:18:01 -0700 INFO: Cleaning /opt/puppetlabs
10:18:01 -0700 INFO: Execute: rm -rf /opt/puppetlabs 2>/tmp/stderr.3261.42
10:18:01 -0700 INFO: Downloading http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-7.x-202308240.244.g9c19360.solaris-10-sparc.tar.gz
10:18:01 -0700 INFO:   to file /tmp/install.sh.3261.42/agent-runtime-7.x-202308240.244.g9c19360.solaris-10-sparc.tar.gz
10:18:01 -0700 INFO: Trying curl...
10:18:01 -0700 INFO: Execute: curl -1 -sL -D /tmp/stderr.3261.42 'http://builds.delivery.puppetlabs.net/puppet-runtime/9c19360894d2b776aea2bea9c524dbf848be706b/artifacts/agent-runtime-7.x-202308240.244.g9c19360.solaris-10-sparc.tar.gz' > '/tmp/install.sh.3261.42/agent-runtime-7.x-202308240.244.g9c19360.solaris-10-sparc.tar.gz'
10:18:02 -0700 INFO: Extracting /tmp/install.sh.3261.42/agent-runtime-7.x-202308240.244.g9c19360.solaris-10-sparc.tar.gz
10:18:02 -0700 INFO:   in directory /tmp/install.sh.3261.42
10:18:02 -0700 INFO: Execute: gtar -C'/tmp/install.sh.3261.42' -xf '/tmp/install.sh.3261.42/agent-runtime-7.x-202308240.244.g9c19360.solaris-10-sparc.tar.gz' 2>/tmp/stderr.3261.42
10:18:05 -0700 INFO: Moving /tmp/install.sh.3261.42/opt/puppetlabs to /opt/.
10:18:05 -0700 INFO: Execute: mv '/tmp/install.sh.3261.42/opt/puppetlabs' '/opt/.' 2>/tmp/stderr.3261.42
10:18:13 -0700 INFO: Checking ruby
10:18:13 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby --version 2>/tmp/stderr.3261.42
ruby 2.7.8p225 (2023-03-30 revision 1f4d455848) [sparc-solaris2.10]
10:18:13 -0700 INFO: Checking openssl
10:18:13 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/openssl version 2> /tmp/stderr.3261.42
OpenSSL 1.1.1v  1 Aug 2023
10:18:13 -0700 INFO: Checking curl
10:18:13 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/curl --version 2> /tmp/stderr.3261.42
curl 7.88.1 (sparc-sun-solaris2.10) libcurl/7.88.1 OpenSSL/1.1.1v zlib/1.2.3
Release-Date: 2023-02-20
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTPS-proxy IPv6 Largefile libz NTLM NTLM_WB SSL TLS-SRP UnixSockets
10:18:14 -0700 INFO: Checking ffi
10:18:14 -0700 INFO: Execute: /opt/puppetlabs/puppet/bin/ruby -e 'puts require "ffi"' 2> /tmp/stderr.3261.42
true
10:18:14 -0700 INFO: Checking mismatched architecture
10:18:14 -0700 INFO: Execute: find /opt/puppetlabs/puppet -type f \( -name '*.so' -o -name '*.dylib' -o -name '*.bundle' \) -exec file {} \; | cut -f2 -d: | grep -v SPARC32PLUS | wc -l 2> /tmp/stderr.3261.42
       0

@joshcooper joshcooper marked this pull request as ready for review May 13, 2024 17:38
@cthorn42 cthorn42 merged commit 15f7f1e into puppetlabs-toy-chest:master May 14, 2024
3 checks passed
@joshcooper joshcooper added the bug Something isn't working label May 22, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants