Project

General

Profile

Actions

Bug #15516

closed

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

Added by Peter Amstutz over 4 years ago. Updated about 4 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
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 1 (0 open1 closed)

Task #15534: reviewResolvedNico César08/13/2019Actions
Actions #1

Updated by Ward Vandewege over 4 years ago

  • Project changed from 40 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

Actions #2

Updated by Ward Vandewege over 4 years ago

  • Target version set to 2019-08-14 Sprint
Actions #3

Updated by Ward Vandewege over 4 years ago

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

Actions #5

Updated by Nico César over 4 years 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}

Actions #6

Updated by Ward Vandewege over 4 years 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

Actions #7

Updated by Ward Vandewege over 4 years 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

Actions #8

Updated by Ward Vandewege over 4 years ago

use of nameref documented in 26c7b3c97876a05ec7427bc2e5270108dcf00b17

Actions #9

Updated by Nico César over 4 years ago

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

Actions #10

Updated by Ward Vandewege over 4 years ago

  • Status changed from In Progress to Resolved
Actions #11

Updated by Peter Amstutz about 4 years ago

  • Release set to 22
Actions

Also available in: Atom PDF