Bug #15516

arvados-api-server and arvados-workbench packages dependent on arvados-server

Added by Peter Amstutz over 1 year ago. Updated about 1 year ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
Start date:
08/13/2019
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)
Story points:
-
Release relationship:
Auto

Description

arvados-api-server and arvados-workbench both have a hard dependency on arvados-server, which they use to read the new arvados config file. When installing or upgrading, arvados-server must be installed or upgraded before arvados-api-server post-install or service startup scripts are run. Base on the pattern of breakage on the dev clusters, this doesn't seem to be happening.


Subtasks

Task #15534: reviewResolvedNico César

Associated revisions

Revision 4031e38a
Added by Ward Vandewege over 1 year ago

Merge branch '15516-fix-arvados-server-dependencies'

closes #15516

Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <>

History

#1 Updated by Ward Vandewege over 1 year ago

  • Project changed from OPS to Arvados
  • Status changed from New to In Progress
  • Assigned To set to Ward Vandewege

Ready for review @ 2522f92cc25e55e57a31af7a59ebdbb066743445 on branch 15516-fix-arvados-server-dependencies

#2 Updated by Ward Vandewege over 1 year ago

  • Target version set to 2019-08-14 Sprint

#3 Updated by Ward Vandewege over 1 year ago

Removed unnecessary --force-test call in build/run-build-test-packages-one-target.sh, pushed updated d823e6afbd6a2287469da909f95976da79692e72

#5 Updated by Nico César over 1 year ago

I see:
00:10:31.428 Error: /tmp/tmp.MuRDh1DKom/bin/arvados-client=/usr/bin/arvados-client: Unable to figure out package name from fpm results:
00:10:31.428
00:10:31.429 {:timestamp=>"2019-08-12T17:54:53.807627+0000", :message=>"Invalid package configuration: Cannot package the path '/tmp/tmp.MuRDh1DKom/bin/arvados-client', does it exist?", :level=>:error}

#6 Updated by Ward Vandewege over 1 year ago

Nico César wrote:

I see:
00:10:31.428 Error: /tmp/tmp.MuRDh1DKom/bin/arvados-client=/usr/bin/arvados-client: Unable to figure out package name from fpm results:
00:10:31.428
00:10:31.429 {:timestamp=>"2019-08-12T17:54:53.807627+0000", :message=>"Invalid package configuration: Cannot package the path '/tmp/tmp.MuRDh1DKom/bin/arvados-client', does it exist?", :level=>:error}

That was caused by a genuine bug in the new code. The govendor call in calculate_go_package_version() generates STDOUT when it is downloading data (but not when it doesn't have to do anything), and that output was returned with the result of calculate_go_package_version(). Meh, bash, yuck, functions returning data via stdout...

I've switched calculate_go_package_version() to take a variable name as part of its command line, and then set that variable to the output from the function. This uses a bash 4.3+ feature called namerefs. This way, any stdout generated in calculate_go_package_version() won't corrupt the value it returns anymore, which avoids future problems of this type. I've given the get_complete_package_name() function the same treatment.

Fix pushed in 366a2efdd0ac4630f4381f3b47d70ef155ed2df4

#7 Updated by Ward Vandewege over 1 year ago

I pushed another bugfix in 2774e45aba64557259fc35155c62988449a8dc72 and ran a successful test on jenkins (but I removed --upload and replaced it with --debug before doing so, and then reverted that): https://ci.curoverse.com/job/build-packages-ubuntu1604/1360/console

#8 Updated by Ward Vandewege over 1 year ago

use of nameref documented in 26c7b3c97876a05ec7427bc2e5270108dcf00b17

#9 Updated by Nico César over 1 year ago

LGTM, we should merge and watch closely a merge. I will also check the expected output with dpkg on subsequent packages.

#10 Updated by Ward Vandewege over 1 year ago

  • Status changed from In Progress to Resolved

#11 Updated by Peter Amstutz about 1 year ago

  • Release set to 22

Also available in: Atom PDF