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

(mis)usage of heroku-buildpack-vips #25

Closed
wdiechmann opened this issue May 24, 2022 · 1 comment
Closed

(mis)usage of heroku-buildpack-vips #25

wdiechmann opened this issue May 24, 2022 · 1 comment

Comments

@wdiechmann
Copy link

Hi @brandoncc

TL;DR: will heroku-buildpack-vips support Ruby 3.0.3 any time soon? (or anything I can possibly do to help?)

LR: got my toes burned by going with the libvips on a new Rails project to be managed on-site with dokku - and learning that the standard ruby-buildpack does not help I was comforted by finding your work! But, alas, it seems (and I have to admit I know absolutely nothing of buildpacks, sadly) that we cannot use Ruby 3.0.3 - or at least that is what I take away from this:

src % git push staging staging:master
Enumerating objects: 3981, done.
Counting objects: 100% (3981/3981), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3909/3909), done.
Writing objects: 100% (3981/3981), 3.56 MiB | 5.92 MiB/s, done.
Total 3981 (delta 2763), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (2763/2763), done.
-----> Cleaning up...
-----> Building greybox from herokuish
-----> Adding BUILD_ENV to build environment...
       BUILD_ENV added successfully
-----> Warning: Multiple default buildpacks reported the ability to handle this app. The first buildpack in the list below will be used.
       Detected buildpacks: multi ruby nodejs
-----> Multipack app detected
=====> Downloading Buildpack: https://github.com/brandoncc/heroku-buildpack-vips
=====> Detected Framework: vips (heroku-20 stack)
-----> Vendoring binaries
       Fetching /tmp/buildpackDneo5/build/heroku-20.tar.gz
-----> Configuring build environment
-----> Building runtime environment
-----> Discovering process types
       Procfile declares types -> web
-----> Releasing greybox...
-----> Checking for predeploy task
       No predeploy task found, skipping
-----> Checking for release task
       No release task found, skipping
-----> App Procfile file found
=====> Processing deployment checks
       No CHECKS file found. Simple container checks will be performed.
       For more efficient zero downtime deployments, create a CHECKS file. See https://dokku.com/docs/deployment/zero-downtime-deploys/ for examples
-----> Deploying greybox via the docker-local scheduler...
-----> Deploying web (count=1)
       Attempting pre-flight checks (web.1)
       Waiting for 10 seconds (web.1)
3a8beed3537b5710a50e0b8077133138cbefdb73b3d8372ea411a5f15e8e5b4b
remote:  !     App container failed to start (web.1)
=====> Start of greybox container output (web.1)
       /usr/lib/ruby/2.7.0/bundler/definition.rb:495:in `validate_ruby!': Your Ruby version is 2.7.0, but your Gemfile specified 3.0.3 (Bundler::RubyVersionMismatch)
        from /usr/lib/ruby/2.7.0/bundler/definition.rb:470:in `validate_runtime!'
        from /usr/lib/ruby/2.7.0/bundler.rb:143:in `setup'
        from /usr/lib/ruby/2.7.0/bundler/setup.rb:20:in `block in <top (required)>'
        from /usr/lib/ruby/2.7.0/bundler/ui/shell.rb:136:in `with_level'
        from /usr/lib/ruby/2.7.0/bundler/ui/shell.rb:88:in `silence'
        from /usr/lib/ruby/2.7.0/bundler/setup.rb:20:in `<top (required)>'
        from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from /app/config/boot.rb:3:in `<top (required)>'
        from bin/rails:3:in `require_relative'
        from bin/rails:3:in `<main>'
---8<---
       /usr/lib/ruby/2.7.0/bundler/definition.rb:495:in `validate_ruby!': Your Ruby version is 2.7.0, but your Gemfile specified 3.0.3 (Bundler::RubyVersionMismatch)
        from /usr/lib/ruby/2.7.0/bundler/definition.rb:470:in `validate_runtime!'
        from /usr/lib/ruby/2.7.0/bundler.rb:143:in `setup'
        from /usr/lib/ruby/2.7.0/bundler/setup.rb:20:in `block in <top (required)>'
        from /usr/lib/ruby/2.7.0/bundler/ui/shell.rb:136:in `with_level'
        from /usr/lib/ruby/2.7.0/bundler/ui/shell.rb:88:in `silence'
        from /usr/lib/ruby/2.7.0/bundler/setup.rb:20:in `<top (required)>'
        from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
        from /app/config/boot.rb:3:in `<top (required)>'
        from bin/rails:3:in `require_relative'
        from bin/rails:3:in `<main>'
=====> End of greybox container output (web.1)
remote: 2022/05/24 17:06:44 exit status 1
remote: parallel: This job failed:
remote: /var/lib/dokku/plugins/available/scheduler-docker-local/bin/scheduler-deploy-process-container greybox herokuish dokku/greybox:latest latest web 1 1
remote: 2022/05/24 17:06:45 exit status 1
remote: 2022/05/24 17:06:45 exit status 1
To greybox:greybox
 ! [remote rejected] staging -> master (pre-receive hook declined)
error: failed to push some refs to 'greybox:greybox'
?1 src % 
@brandoncc
Copy link
Contributor

Hello, and welcome!

The buildpack doesn't actually specify anything about your ruby version. Because of that, I don't think this error is related to the buildpack.

I searched DuckDuckGo for "dokku configure ruby version" and I found this. Have you set your .ruby-version?

If you have, make sure that your Gemfile is configured for the same ruby version as .ruby-version specifies (if your Gemfile specifies a ruby version).

I hope this helps. If you dig in further and find more evidence that it is the buildpack causing this, let me know and hopefully the new information will give a starting point on fixing the issue. I'd be happy to re-open the issue at that point.

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