owen2345/camaleon-cms

"Deploy Sample App in Heroku" not working

Closed this issue · 3 comments

mpoli commented

The "Deploy Sample App in Heroku" link isn't working.

Here is an extract with the error in the log:

-----> Building on the Heroku-20 stack
-----> Determining which buildpack to use for this app
-----> Ruby app detected
-----> Installing bundler 1.17.3
-----> Removing BUNDLED WITH version in the Gemfile.lock
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-2.7.4
-----> Installing dependencies using bundler 1.17.3
       Running: BUNDLE_WITHOUT='development:test' BUNDLE_PATH=vendor/bundle BUNDLE_BIN=vendor/bundle/bin BUNDLE_DEPLOYMENT=1 BUNDLE_GLOBAL_PATH_APPENDS_RUBY_SCOPE=1 bundle install -j4
       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 https://github.com/rails/activemodel-serializers-xml
       rails (5.0.0.1) has dependency bundler (>= 1.3.0, < 2.0), which is unsatisfied by the current bundler version 2.1.4, so the dependency is being ignored
       Fetching rake 11.2.2
       .......
       Fetching camaleon_cms 2.3.1
       Installing camaleon_cms 2.3.1
       Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
       
       current directory:
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0/ext/puma_http11
       /tmp/build_72d8333d/vendor/ruby-2.7.4/bin/ruby -I
       /tmp/build_72d8333d/vendor/ruby-2.7.4/lib/ruby/2.7.0 -r
       ./siteconf20211112-257-k3sy3q.rb extconf.rb
       checking for BIO_read() in -lcrypto... yes
       checking for SSL_CTX_new() in -lssl... yes
       checking for openssl/bio.h... yes
       creating Makefile
       
       current directory:
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0/ext/puma_http11
       make "DESTDIR=" clean
       
       current directory:
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0/ext/puma_http11
       make "DESTDIR="
       compiling http11_parser.c
       compiling io_buffer.c
       compiling mini_ssl.c
       mini_ssl.c: In function ‘get_dh1024’:
       mini_ssl.c:90:5: error: dereferencing pointer to incomplete type ‘DH’ {aka
       ‘struct dh_st’}
          90 |   dh->p = BN_bin2bn(dh1024_p, sizeof(dh1024_p), NULL);
             |     ^~
       mini_ssl.c: In function ‘engine_init_client’:
       mini_ssl.c:197:3: warning: ‘DTLSv1_method’ is deprecated
       [-Wdeprecated-declarations]
         197 |   conn->ctx = SSL_CTX_new(DTLSv1_method());
             |   ^~~~
       In file included from /usr/include/openssl/e_os2.h:13,
                        from /usr/include/openssl/bio.h:13,
                        from mini_ssl.c:14:
       /usr/include/openssl/ssl.h:1895:1: note: declared here
       1895 | DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_method(void)) /*
       DTLSv1.0 */
             | ^~~~~~~~~~~~~~~~~~
       make: *** [Makefile:245: mini_ssl.o] Error 1
       
       make failed, exit code 2
       
       Gem files will remain installed in
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0 for inspection.
       Results logged to
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/extensions/x86_64-linux/2.7.0/puma-3.6.0/gem_make.out
       
       An error occurred while installing puma (3.6.0), and Bundler cannot continue.
       Make sure that `gem install puma -v '3.6.0' --source 'https://rubygems.org/'`
       succeeds before bundling.
       
       In Gemfile:
         puma
       Bundler Output: 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 https://github.com/rails/activemodel-serializers-xml
       rails (5.0.0.1) has dependency bundler (>= 1.3.0, < 2.0), which is unsatisfied by the current bundler version 2.1.4, so the dependency is being ignored
       Fetching rake 11.2.2
       Installing rake 11.2.2
       ..... 
       Fetching camaleon_cms 2.3.1
       Installing camaleon_cms 2.3.1
       Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
       
       current directory:
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0/ext/puma_http11
       /tmp/build_72d8333d/vendor/ruby-2.7.4/bin/ruby -I
       /tmp/build_72d8333d/vendor/ruby-2.7.4/lib/ruby/2.7.0 -r
       ./siteconf20211112-257-k3sy3q.rb extconf.rb
       checking for BIO_read() in -lcrypto... yes
       checking for SSL_CTX_new() in -lssl... yes
       checking for openssl/bio.h... yes
       creating Makefile
       
       current directory:
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0/ext/puma_http11
       make "DESTDIR=" clean
       
       current directory:
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0/ext/puma_http11
       make "DESTDIR="
       compiling http11_parser.c
       compiling io_buffer.c
       compiling mini_ssl.c
       mini_ssl.c: In function ‘get_dh1024’:
       mini_ssl.c:90:5: error: dereferencing pointer to incomplete type ‘DH’ {aka
       ‘struct dh_st’}
          90 |   dh->p = BN_bin2bn(dh1024_p, sizeof(dh1024_p), NULL);
             |     ^~
       mini_ssl.c: In function ‘engine_init_client’:
       mini_ssl.c:197:3: warning: ‘DTLSv1_method’ is deprecated
       [-Wdeprecated-declarations]
         197 |   conn->ctx = SSL_CTX_new(DTLSv1_method());
             |   ^~~~
       In file included from /usr/include/openssl/e_os2.h:13,
                        from /usr/include/openssl/bio.h:13,
                        from mini_ssl.c:14:
       /usr/include/openssl/ssl.h:1895:1: note: declared here
       1895 | DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_method(void)) /*
       DTLSv1.0 */
             | ^~~~~~~~~~~~~~~~~~
       make: *** [Makefile:245: mini_ssl.o] Error 1
       
       make failed, exit code 2
       
       Gem files will remain installed in
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/gems/puma-3.6.0 for inspection.
       Results logged to
       /tmp/build_72d8333d/vendor/bundle/ruby/2.7.0/extensions/x86_64-linux/2.7.0/puma-3.6.0/gem_make.out
       
       An error occurred while installing puma (3.6.0), and Bundler cannot continue.
       Make sure that `gem install puma -v '3.6.0' --source 'https://rubygems.org/'`
       succeeds before bundling.
       
       In Gemfile:
         puma
 !
 !     Failed to install gems via Bundler.
 !
 !     Push rejected, failed to compile Ruby app.
 !     Push failed

Try to upgrade Puma - this error has been fixed in puma 3.7.0 - puma/puma#1178

This issue appears to be in the Camaleon CMS Sample App repo, rather than in this one.

Ok, I forked the sample app and updated it. I also updated the links in the README to point to the updated fork. Sorry for the delay in getting this working. If you get a chance, please try it again and let us know if you have issues.