Project

General

Profile

Actions

Bug #18112

closed

[ubuntu 18.04] bundler 1.16.1 incompatible with latest arvados-api-server and arvados-workbench packages

Added by Ward Vandewege about 3 years ago. Updated about 3 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
Story points:
-
Release relationship:
Auto

Description

This only applies when NOT using rvm.

The system ruby-bundler package for Ubuntu 18.04 is version 1.16.1, and it is apparently incompatible with our latest arvados-api-server and arvados-workbench packages.

E.g. when upgrading arvados-api-server on a system with ruby-bundler 1.16.1 installed:

# dpkg -l |grep bundl
ii  bundler                                1.16.1-1                                    all          Manage Ruby application dependencies
ii  ruby-bundler                           1.16.1-1                                    all          Manage Ruby application dependencies (runtime)

# gem list |grep bundler
bundler (2.2.19, 1.17.3, 1.16.1)

# apt install arvados-workbench --reinstall
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 35.3 MB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://apt.arvados.org/bionic bionic-dev/main amd64 arvados-workbench amd64 2.3.0~dev20210902200728-1 [35.3 MB]
Fetched 35.3 MB in 2s (18.0 MB/s)             
(Reading database ... 168841 files and directories currently installed.)
Preparing to unpack .../arvados-workbench_2.3.0~dev20210902200728-1_amd64.deb ...
Unpacking arvados-workbench (2.3.0~dev20210902200728-1) over (2.3.0~dev20210902200728-1) ...
Setting up arvados-workbench (2.3.0~dev20210902200728-1) ...

Assumption: nginx is configured to serve Rails from
            /var/www/arvados-workbench/current
Assumption: nginx and passenger run as www-data

Creating symlinks to configuration in /etc/arvados/workbench ...... done.
Running bundle config set --local path /var/www/arvados-workbench/shared/vendor_bundle... done.
Running bundle install... done.
Ensuring directory and file permissions ...... done.
Checking configuration for completeness...You must use Bundler 2 or greater with this lockfile.
 failed.

PLEASE NOTE:

The arvados-workbench package was not configured completely because
/etc/arvados/config.yml needs some tweaking.
Please refer to the documentation at
<http://doc.arvados.org/install/install-workbench-app.html#configure> for more details.

When config.yml has been modified,
reconfigure or reinstall this package.

Or on a clean system, with ruby-bundler preinstalled:

# dpkg -l |grep bundler
ii  ruby-bundler               1.16.1-1                            all          Manage Ruby application dependencies (runtime)
# gem list|grep bund
bundler (1.16.1)

# apt install arvados-api-server
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
...

Setting up arvados-api-server (2.3.0~dev20210902200728-1) ...

WARNING: Web service (Nginx or Apache) not found.

To override, set the WEB_SERVICE environment variable to the name of the service
hosting the Rails server.

For Debian-based systems, then reconfigure this package with dpkg-reconfigure.

For RPM-based systems, then reinstall this package.

Assumption:  is configured to serve Rails from
            /var/www/arvados-api/current
Assumption:  and passenger run as www-data

Creating symlinks to configuration in /etc/arvados/api ...... done.
Running bundle config set --local path /var/www/arvados-api/shared/vendor_bundle...Traceback (most recent call last):
    2: from bin/bundle:8:in `<main>'
    1: from /usr/lib/ruby/2.5.0/rubygems.rb:263:in `bin_path'
/usr/lib/ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': Could not find 'bundler' (2.2.19) required by your /var/www/arvados-api/current/Gemfile.lock. (Gem::GemNotFoundException)
To update to the lastest version installed on your system, run `bundle update --bundler`.
To install the missing version, run `gem install bundler:2.2.19`
 failed.
dpkg: error processing package arvados-api-server (--configure):
 installed arvados-api-server package post-installation script subprocess returned error exit status 1
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Errors were encountered while processing:
 arvados-api-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

Interestingly, this is not a problem on Debian 10, which ships with ruby-bundler 1.17.3.

Presumably we could just add a conflict with ruby-bundler on our arvados-api-server and arvados-workbench packages for Ubuntu 18.04, as a workaround for this problem.


Subtasks 1 (0 open1 closed)

Task #18115: review 18112-ubuntu1804-bundler-fixResolvedWard Vandewege09/07/2021Actions
Actions

Also available in: Atom PDF