Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tests test_from_dockerfile for Dockerfile.s2i is failing on ppc64le #399

Closed
phracek opened this issue May 16, 2022 · 3 comments
Closed

Tests test_from_dockerfile for Dockerfile.s2i is failing on ppc64le #399

phracek opened this issue May 16, 2022 · 3 comments

Comments

@phracek
Copy link
Member

phracek commented May 16, 2022

 info 'Check building using a Dockerfile.s2i'
+ echo -e '\n\e[1m[INFO] Check building using a Dockerfile.s2i...\e[0m\n'
+ ct_test_app_dockerfile /tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i https://github.com/sclorg/rails-ex.git 'Welcome to your Rails application on OpenShift' app-src
+ local dockerfile=/tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i
+ local app_url=https://github.com/sclorg/rails-ex.git
+ local 'expected_text=Welcome to your Rails application on OpenShift'
+ local app_dir=app-src
+ local port=8080
+ local app_image_name=myapp
+ local ret
+ local cname=app_dockerfile
+ '[' -z app-src ']'
+ '[' -r /tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i ']'
+ '[' -s /tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i ']'
+ CID_FILE_DIR=/tmp/tmp.7O97dlqSUn
+ local dockerfile_abs
++ readlink -f /tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i
+ dockerfile_abs=/tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i
++ mktemp -d
+ tmpdir=/tmp/tmp.ZG2vPhr90J
+ pushd /tmp/tmp.ZG2vPhr90J
+ cp /tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i Dockerfile
+ sed -i -e 's|^FROM.*$|FROM rh-ruby26-container-2.6-107|' Dockerfile
Using this Dockerfile:
+ echo 'Using this Dockerfile:'
+ cat Dockerfile
FROM rh-ruby26-container-2.6-107

# Add application sources to a directory that the assemble script expects them
# and set permissions so that the container runs without root access
USER 0
ADD app-src /tmp/src
RUN chown -R 1001:0 /tmp/src
USER 1001

ENV RAILS_ENV=development
# Install the dependencies
RUN /usr/libexec/s2i/assemble

# Set the default command for the resulting image
CMD /usr/libexec/s2i/run
+ '[' -d https://github.com/sclorg/rails-ex.git ']'
+ ct_clone_git_repository https://github.com/sclorg/rails-ex.git app-src
+ local app_url=https://github.com/sclorg/rails-ex.git
+ shift
+ local app_dir=app-src
+ IFS=@
+ read -ra git_url_parts
+ '[' -n '' ']'
+ git_clone_cmd='git clone https://github.com/sclorg/rails-ex.git app-src'
+ git clone https://github.com/sclorg/rails-ex.git app-src
Cloning into 'app-src'...
Building 'myapp' image using docker build
+ echo 'Building '\''myapp'\'' image using docker build'
+ docker build --no-cache=true -t myapp .
Sending build context to Docker daemon   640 kB


Step 1/8 : FROM rh-ruby26-container-2.6-107
 ---> 046b30c0e2d9
Step 2/8 : USER 0
 ---> Running in aa3c10cd87c4
 ---> 1e5041ea1e0d
Removing intermediate container aa3c10cd87c4
Step 3/8 : ADD app-src /tmp/src
 ---> 935d22468e6d
Removing intermediate container c5c1d250ba34
Step 4/8 : RUN chown -R 1001:0 /tmp/src
 ---> Running in b953e734fcee

�[91m�[0m ---> e40bb3df42ed
Removing intermediate container b953e734fcee
Step 5/8 : USER 1001
 ---> Running in 945c819f319b
 ---> 2084b6640a08
Removing intermediate container 945c819f319b
Step 6/8 : ENV RAILS_ENV development
 ---> Running in 0294701c807c
 ---> 02f56ff5f013
Removing intermediate container 0294701c807c
Step 7/8 : RUN /usr/libexec/s2i/assemble
 ---> Running in 02138c500400

�[91m�[0m---> Installing application source ...
---> Building your Ruby application from source ...
---> Running 'bundle install --retry 2 --deployment --without test' ...
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`.
Fetching gem metadata from https://rubygems.org/..........
Fetching rake 13.0.3
Installing rake 13.0.3
Fetching concurrent-ruby 1.1.8
Installing concurrent-ruby 1.1.8
Fetching i18n 1.8.10
Installing i18n 1.8.10
Fetching minitest 5.14.4
Installing minitest 5.14.4
Fetching tzinfo 2.0.4
Installing tzinfo 2.0.4
Fetching zeitwerk 2.4.2
Installing zeitwerk 2.4.2
Fetching activesupport 6.1.3.1
Installing activesupport 6.1.3.1
Fetching builder 3.2.4
Installing builder 3.2.4
Fetching erubi 1.10.0
Installing erubi 1.10.0
Fetching mini_portile2 2.5.1
Installing mini_portile2 2.5.1
Fetching racc 1.5.2
Installing racc 1.5.2 with native extensions
Fetching nokogiri 1.11.3
Installing nokogiri 1.11.3 with native extensions
Fetching rails-dom-testing 2.0.3
Installing rails-dom-testing 2.0.3
Fetching crass 1.0.6
Installing crass 1.0.6
Fetching loofah 2.9.1
Installing loofah 2.9.1
Fetching rails-html-sanitizer 1.3.0
Installing rails-html-sanitizer 1.3.0
Fetching actionview 6.1.3.1
Installing actionview 6.1.3.1
Fetching rack 2.2.3
Installing rack 2.2.3
Fetching rack-test 1.1.0
Installing rack-test 1.1.0
Fetching actionpack 6.1.3.1
Installing actionpack 6.1.3.1
Fetching nio4r 2.5.7
Installing nio4r 2.5.7 with native extensions
Fetching websocket-extensions 0.1.5
Installing websocket-extensions 0.1.5
Fetching websocket-driver 0.7.3
Installing websocket-driver 0.7.3 with native extensions
Fetching actioncable 6.1.3.1
Installing actioncable 6.1.3.1
Fetching globalid 0.4.2
Installing globalid 0.4.2
Fetching activejob 6.1.3.1
Installing activejob 6.1.3.1
Fetching activemodel 6.1.3.1
Installing activemodel 6.1.3.1
Fetching activerecord 6.1.3.1
Installing activerecord 6.1.3.1
Fetching marcel 1.0.1
Installing marcel 1.0.1
Fetching mini_mime 1.0.3
Installing mini_mime 1.0.3
Fetching activestorage 6.1.3.1
Installing activestorage 6.1.3.1
Fetching mail 2.7.1
Installing mail 2.7.1
Fetching actionmailbox 6.1.3.1
Installing actionmailbox 6.1.3.1
Fetching actionmailer 6.1.3.1
Installing actionmailer 6.1.3.1
Fetching actiontext 6.1.3.1
Installing actiontext 6.1.3.1
Fetching public_suffix 4.0.6
Installing public_suffix 4.0.6
Fetching addressable 2.7.0
Installing addressable 2.7.0
Fetching bindex 0.8.1
Installing bindex 0.8.1 with native extensions
Using bundler 1.17.2
Fetching byebug 11.1.3
Installing byebug 11.1.3 with native extensions
Fetching regexp_parser 2.1.1
Installing regexp_parser 2.1.1
Fetching xpath 3.2.0
Installing xpath 3.2.0
Fetching capybara 3.35.3
Installing capybara 3.35.3
Fetching childprocess 3.0.0
Installing childprocess 3.0.0
Fetching coffee-script-source 1.12.2
Installing coffee-script-source 1.12.2
Fetching execjs 2.7.0
Installing execjs 2.7.0
Fetching coffee-script 2.4.1
Installing coffee-script 2.4.1
Fetching method_source 1.0.0
Installing method_source 1.0.0
Fetching thor 1.1.0
Installing thor 1.1.0
Fetching railties 6.1.3.1
Installing railties 6.1.3.1
Fetching coffee-rails 5.0.0
Installing coffee-rails 5.0.0
Fetching ffi 1.15.0
Installing ffi 1.15.0 with native extensions
Fetching jbuilder 2.11.2
Installing jbuilder 2.11.2
Fetching rb-fsevent 0.10.4
Installing rb-fsevent 0.10.4
Fetching rb-inotify 0.10.1
Installing rb-inotify 0.10.1
Fetching listen 3.5.1
Installing listen 3.5.1
Fetching pg 1.2.3
Installing pg 1.2.3 with native extensions
Fetching puma 5.2.2
Installing puma 5.2.2 with native extensions
Fetching sprockets 4.0.2
Installing sprockets 4.0.2
Fetching sprockets-rails 3.2.2
Installing sprockets-rails 3.2.2
Fetching rails 6.1.3.1
Installing rails 6.1.3.1
Fetching redis 4.2.5
Installing redis 4.2.5
Fetching rubyzip 2.3.0
Installing rubyzip 2.3.0
Fetching sassc 2.4.0
Installing sassc 2.4.0 with native extensions
Fetching tilt 2.0.10
Installing tilt 2.0.10
Fetching sassc-rails 2.1.2
Installing sassc-rails 2.1.2
Fetching sass-rails 6.0.0
Installing sass-rails 6.0.0
Fetching selenium-webdriver 3.142.7
Installing selenium-webdriver 3.142.7
Fetching spring 2.1.1
Installing spring 2.1.1
Fetching spring-watcher-listen 2.0.1
Installing spring-watcher-listen 2.0.1
Fetching sqlite3 1.4.2
Installing sqlite3 1.4.2 with native extensions
Fetching turbolinks-source 5.2.0
Installing turbolinks-source 5.2.0
Fetching turbolinks 5.2.1
Installing turbolinks 5.2.1
Fetching uglifier 4.2.0
Installing uglifier 4.2.0
Fetching web-console 4.1.0
Installing web-console 4.1.0
Bundle complete! 18 Gemfile dependencies, 75 gems now installed.
Gems in the group test were not installed.
Bundled gems are installed into `./bundle`
---> Cleaning up unused ruby gems ...
Running `bundle clean --verbose` with bundler 1.17.2
Frozen, using resolution from the lockfile
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`.
---> Starting asset compilation ...
�[91mruby: symbol lookup error: /opt/app-root/src/bundle/ruby/2.6.0/extensions/powerpc64le-linux/2.6.0/ffi-1.15.0/ffi_c.so: undefined symbol: pthread_atfork
The command '/bin/sh -c /usr/libexec/s2i/assemble' returned a non-zero code: 127
+ echo 'ERROR: The image cannot be built from /tmp/tmp.Z4XtMrDHhO/rh-ruby26/test/examples/from-dockerfile/Dockerfile.s2i and application https://github.com/sclorg/rails-ex.git.'
+ echo 'Terminating the Dockerfile build.'
+ return 1
+ check_result 1
+ local result=1
+ [[ 1 != \0 ]]
+ TESTCASE_RESULT=1
+ return 1
+ handle_test_case_result 'test_from_dockerfile for %s' Dockerfile.s2i
+ local output_format
+ output_format='%s %s test_from_dockerfile for %s\n'
+ shift
+ local test_msg
@jackorp
Copy link
Contributor

jackorp commented May 25, 2022

ffi-1.15.0 seems to need some new new linker options that are not defined in the 1.15.0 release.

Fixing it by adjusting the Gemfile.lock ffi dependency seems like it works.

Relevant upstream issue: ffi/ffi#893 (comment)

PR for rails-ex sclorg/rails-ex#150

@jackorp
Copy link
Contributor

jackorp commented May 25, 2022

@phracek could you please test the change and see if that fixes it? I'll see if I will be able to reproduce it later.

@phracek
Copy link
Member Author

phracek commented Aug 23, 2023

It was already fixed . Closing this isse.

@phracek phracek closed this as completed Aug 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants