Support ruby 2.4
Micah and me played around with openshift, and it would be great to be able to deploy leap_web through openshift in order to have a review app that can get accessed for inspection on i.e. every merge req.
Openshift comes with a template for ruby 2.4, I guess it's not too much work to add a ruby 2.1.5 template but at some point we need to support newer ruby versions anyway.
This is what fails:
Cloning "https://0xacab.org/varac/leap_web.git " ...
Commit: aabb398ebaa24b1a668cf11ed6c30b6c5c876c42 (Delete .gitkeep in config/customization)
Author: azul <azul@riseup.net>
Date: Mon Feb 20 12:55:35 2017 +0000
---> Installing application source ...
---> Building your Ruby application from source ...
---> Running 'bundle install --deployment --without development:test' ...
Fetching gem metadata from https://rubygems.org/ ........
Fetching version metadata from https://rubygems.org/ ..
Fetching dependency metadata from https://rubygems.org/ .
Installing rake 11.2.2
Installing SyslogLogger 2.0
Installing i18n 0.7.0
Installing json 1.8.3 with native extensions
Installing minitest 5.9.0
Installing thread_safe 0.3.5
Installing builder 3.2.2
Installing erubis 2.7.0
Installing mini_portile2 2.1.0
Installing pkg-config 1.1.7
Installing rack 1.6.4
Installing mime-types-data 3.2016.0521
Installing arel 6.0.3
Installing addressable 2.4.0
Installing execjs 2.7.0
Installing sass 3.4.22
Installing buftok 0.2.0
Installing byebug 9.0.5 with native extensions
Installing thor 0.19.1
Installing regexp_parser 0.3.6
Using bundler 1.13.7
Installing concurrent-ruby 1.0.2
Installing httpclient 2.8.1
Installing multi_json 1.12.1
Installing unf 0.2.0.beta2 with native extensions
Installing equalizer 0.0.10
Installing multipart-post 2.0.0
Installing tilt 2.0.5
Installing sexp_processor 4.7.0
Installing http-form_data 1.0.1
Installing http_parser.rb 0.6.0 with native extensions
Installing http_accept_language 2.0.5
Using leap_web_help 0.8.1 from source at `engines/support`
Installing libv8 3.16.14.15
Installing naught 1.1.0
Installing rdiscount 2.2.0.1 with native extensions
Installing ref 2.0.0
Installing ruby-srp 0.2.1
Installing simple_oauth 0.3.1
Using common_languages 0.0.1 from source at `vendor/gems/common_languages`
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory:
/opt/app-root/src/bundle/ruby/2.4.0/gems/json-1.8.3/ext/json/ext/generator
/opt/rh/rh-ruby24/root/usr/bin/ruby -r ./siteconf20171208-14-1ryhnz1.rb
extconf.rb
creating Makefile
current directory:
/opt/app-root/src/bundle/ruby/2.4.0/gems/json-1.8.3/ext/json/ext/generator
make "DESTDIR=" clean
rm -f
rm -f generator.so *.o *.bak mkmf.log .*.time
current directory:
/opt/app-root/src/bundle/ruby/2.4.0/gems/json-1.8.3/ext/json/ext/generator
make "DESTDIR="
gcc -I. -I/opt/rh/rh-ruby24/root/usr/include
-I/opt/rh/rh-ruby24/root/usr/include/ruby/backward
-I/opt/rh/rh-ruby24/root/usr/include -I. -DJSON_GENERATOR -fPIC -O2 -g -pipe
-Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -mtune=generic -fPIC -m64 -o
generator.o -c generator.c
generator.c: In function 'generate_json':
generator.c:861:25: error: 'rb_cFixnum' undeclared (first use in this function)
} else if (klass == rb_cFixnum) {
^
generator.c:861:25: note: each undeclared identifier is reported only once for
each function it appears in
generator.c:863:25: error: 'rb_cBignum' undeclared (first use in this function)
} else if (klass == rb_cBignum) {
^
make: *** [generator.o] Error 1
make failed, exit code 2
Gem files will remain installed in
/opt/app-root/src/bundle/ruby/2.4.0/gems/json-1.8.3 for inspection.
Results logged to
/opt/app-root/src/bundle/ruby/2.4.0/extensions/x86_64-linux/2.4.0/json-1.8.3/gem_make.out
An error occurred while installing json (1.8.3), and Bundler cannot continue.
Make sure that `gem install json -v '1.8.3'` succeeds before bundling.
error: build error: non-zero (13) exit code from centos/ruby-24-centos7@sha256:ccd5f84fc4aa6ea7501286f307e5fe3f77c70369f44b2138a02dc56fb2f74017
@azul Is this on your roadmap ? Is it much work to implement ?