[arvados] created: 2.7.0-5319-gb77707a7b0

git repository hosting git at public.arvados.org
Fri Nov 3 20:01:27 UTC 2023


        at  b77707a7b06d57145a7829458d476baf8573317e (commit)


commit b77707a7b06d57145a7829458d476baf8573317e
Author: Tom Clegg <tom at curii.com>
Date:   Tue Oct 31 10:53:08 2023 -0400

    20846: Remove old/conflicting erb script if needed.
    
    Otherwise:
    
    /tmp/tmp.tktwTXjGi1/ruby-3.2.2/lib/rubygems/installer.rb:272:in `check_executable_overwrite': "erb" from erb conflicts with /var/lib/arvados/bin/erb (Gem::InstallError)
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index 3784cf6a18..a5cfe87952 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -306,7 +306,8 @@ wget --progress=dot:giga -O- https://cache.ruby-lang.org/pub/ruby/`+rubymajorver
 cd "${tmp}/ruby-`+rubyversion+`"
 ./configure --disable-install-static-library --enable-shared --disable-install-doc --prefix /var/lib/arvados
 make -j8
-make install <(yes || true)
+rm -f /var/lib/arvados/bin/erb
+make install
 /var/lib/arvados/bin/gem update --no-document --system 3.4.21
 /var/lib/arvados/bin/gem install bundler --no-document
 `, stdout, stderr)

commit 814cc4a5534ec1fc47dd4425d6577f1aa0aaa01a
Author: Tom Clegg <tom at curii.com>
Date:   Thu Oct 26 11:23:43 2023 -0400

    20846: Fix workbench2 build recipe.
    
    Install recipe was failing on readonly source tree, e.g., mounted into
    a docker container by `arvados-package build`.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index 0d238d06fa..3784cf6a18 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -677,11 +677,24 @@ done
 			return 1
 		}
 
-		// Install workbench2 app to /var/lib/arvados/workbench2/
+		// Install workbench2 app to
+		// /var/lib/arvados/workbench2/.
+		//
+		// We copy the source tree from the (possibly
+		// readonly) source tree into a temp dir because `yarn
+		// build` writes to {source-tree}/build/. When we
+		// upgrade to react-scripts >= 4.0.2 we may be able to
+		// build from the source dir and write directly to the
+		// final destination (using
+		// YARN_INSTALL_STATE_PATH=/dev/null
+		// BUILD_PATH=/var/lib/arvados/workbench2) instead of
+		// using two rsync steps here.
 		if err = inst.runBash(`
-cd `+inst.SourcePath+`/services/workbench2
-VERSION="`+inst.PackageVersion+`" BUILD_NUMBER=1 GIT_COMMIT=000000000 yarn build
-rsync -a --delete-after build/ /var/lib/arvados/workbench2/
+tmp=/var/lib/arvados/tmp/workbench2
+trap "rm -r ${tmp}" ERR EXIT
+rsync -a --delete-after `+inst.SourcePath+`/services/workbench2/ "$tmp/"
+env -C "$tmp" VERSION="`+inst.PackageVersion+`" BUILD_NUMBER=1 GIT_COMMIT=000000000 yarn build
+rsync -a --delete-after "$tmp/build/" /var/lib/arvados/workbench2/
 `, stdout, stderr); err != nil {
 			return 1
 		}

commit 7a391142ec0c692e56f6aa63114d15ac995e4608
Author: Tom Clegg <tom at curii.com>
Date:   Thu Oct 26 09:45:45 2023 -0400

    20846: Fix python build recipe.
    
    See #20846#note-13.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index e15a386d16..0d238d06fa 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -604,9 +604,8 @@ pip3 install --no-cache-dir 'setuptools>=62.4.0' 'pip>=7'
 export ARVADOS_BUILDING_VERSION="`+inst.PackageVersion+`"
 for src in "`+inst.SourcePath+`/sdk/python" "`+inst.SourcePath+`/services/fuse"; do
   rsync -a --delete-after "$src/" "$tmp/"
-  cd "$tmp"
-  python3 setup.py install
-  cd ..
+  env -C "$tmp" python3 setup.py build
+  pip3 install "$tmp"
   rm -rf "$tmp"
 done
 `, stdout, stderr); err != nil {

commit a369357c88259a337536d6586ee25bda83e3a8b4
Author: Tom Clegg <tom at curii.com>
Date:   Wed Oct 25 15:52:58 2023 -0400

    20846: Disable workbench1 in `arvados-server boot`.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/boot/cmd.go b/lib/boot/cmd.go
index 41a2dab5ed..3d653e97af 100644
--- a/lib/boot/cmd.go
+++ b/lib/boot/cmd.go
@@ -69,7 +69,7 @@ func (bcmd bootCommand) run(ctx context.Context, prog string, args []string, std
 	flags.StringVar(&super.ClusterType, "type", "production", "cluster `type`: development, test, or production")
 	flags.StringVar(&super.ListenHost, "listen-host", "127.0.0.1", "host name or interface address for internal services whose InternalURLs are not configured")
 	flags.StringVar(&super.ControllerAddr, "controller-address", ":0", "desired controller address, `host:port` or `:port`")
-	flags.BoolVar(&super.NoWorkbench1, "no-workbench1", false, "do not run workbench1")
+	flags.BoolVar(&super.NoWorkbench1, "no-workbench1", true, "do not run workbench1")
 	flags.BoolVar(&super.NoWorkbench2, "no-workbench2", false, "do not run workbench2")
 	flags.BoolVar(&super.OwnTemporaryDatabase, "own-temporary-database", false, "bring up a postgres server and create a temporary database")
 	timeout := flags.Duration("timeout", 0, "maximum time to wait for cluster to be ready")
diff --git a/lib/boot/supervisor.go b/lib/boot/supervisor.go
index e913a7fe08..abec2b0f4a 100644
--- a/lib/boot/supervisor.go
+++ b/lib/boot/supervisor.go
@@ -371,10 +371,7 @@ func (super *Supervisor) runCluster() error {
 		}},
 	}
 	if !super.NoWorkbench1 {
-		tasks = append(tasks,
-			installPassenger{src: "apps/workbench", varlibdir: "workbench1", depends: []supervisedTask{railsDatabase{}}}, // dependency ensures workbench doesn't delay api install/startup
-			runPassenger{src: "apps/workbench", varlibdir: "workbench1", svc: super.cluster.Services.Workbench1, depends: []supervisedTask{installPassenger{src: "apps/workbench", varlibdir: "workbench1"}}},
-		)
+		return errors.New("workbench1 is no longer supported")
 	}
 	if !super.NoWorkbench2 {
 		tasks = append(tasks,

commit 4ad36ef0580a438f10c0f76a99c7502f5ed4473b
Author: Tom Clegg <tom at curii.com>
Date:   Wed Oct 25 15:49:21 2023 -0400

    20846: Remove workbench1 from `arvados-server install`.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index 1bde2e8055..e15a386d16 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -613,75 +613,70 @@ done
 			return 1
 		}
 
-		// Install Rails apps to /var/lib/arvados/{railsapi,workbench1}/
-		for dstdir, srcdir := range map[string]string{
-			"railsapi":   "services/api",
-			"workbench1": "apps/workbench",
+		// Install RailsAPI to /var/lib/arvados/railsapi/
+		fmt.Fprintln(stderr, "building railsapi...")
+		cmd = exec.Command("rsync",
+			"-a", "--no-owner", "--no-group", "--delete-after", "--delete-excluded",
+			"--exclude", "/coverage",
+			"--exclude", "/log",
+			"--exclude", "/node_modules",
+			"--exclude", "/tmp",
+			"--exclude", "/public/assets",
+			"--exclude", "/vendor",
+			"--exclude", "/config/environments",
+			"./", "/var/lib/arvados/railsapi/")
+		cmd.Dir = filepath.Join(inst.SourcePath, "services", "api")
+		cmd.Stdout = stdout
+		cmd.Stderr = stderr
+		err = cmd.Run()
+		if err != nil {
+			return 1
+		}
+		for _, cmdline := range [][]string{
+			{"mkdir", "-p", "log", "public/assets", "tmp", "vendor", ".bundle", "/var/www/.bundle", "/var/www/.gem", "/var/www/.npm", "/var/www/.passenger"},
+			{"touch", "log/production.log"},
+			{"chown", "-R", "--from=root", "www-data:www-data", "/var/www/.bundle", "/var/www/.gem", "/var/www/.npm", "/var/www/.passenger", "log", "tmp", "vendor", ".bundle", "Gemfile.lock", "config.ru", "config/environment.rb"},
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/gem", "install", "--user", "--conservative", "--no-document", "bundler:" + bundlerversion},
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "deployment", "true"},
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "path", "/var/www/.gem"},
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "without", "development test diagnostics performance"},
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "install", "--jobs", fmt.Sprintf("%d", runtime.NumCPU())},
+
+			{"chown", "www-data:www-data", ".", "public/assets"},
+			// {"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "system", "true"},
+			{"sudo", "-u", "www-data", "ARVADOS_CONFIG=none", "RAILS_GROUPS=assets", "RAILS_ENV=production", "PATH=/var/lib/arvados/bin:" + os.Getenv("PATH"), "/var/lib/arvados/bin/bundle", "exec", "rake", "npm:install"},
+			{"sudo", "-u", "www-data", "ARVADOS_CONFIG=none", "RAILS_GROUPS=assets", "RAILS_ENV=production", "PATH=/var/lib/arvados/bin:" + os.Getenv("PATH"), "/var/lib/arvados/bin/bundle", "exec", "rake", "assets:precompile"},
+			{"chown", "root:root", "."},
+			{"chown", "-R", "root:root", "public/assets", "vendor"},
+
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "exec", "passenger-config", "build-native-support"},
+			{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "exec", "passenger-config", "install-standalone-runtime"},
 		} {
-			fmt.Fprintf(stderr, "building %s...\n", srcdir)
-			cmd := exec.Command("rsync",
-				"-a", "--no-owner", "--no-group", "--delete-after", "--delete-excluded",
-				"--exclude", "/coverage",
-				"--exclude", "/log",
-				"--exclude", "/node_modules",
-				"--exclude", "/tmp",
-				"--exclude", "/public/assets",
-				"--exclude", "/vendor",
-				"--exclude", "/config/environments",
-				"./", "/var/lib/arvados/"+dstdir+"/")
-			cmd.Dir = filepath.Join(inst.SourcePath, srcdir)
-			cmd.Stdout = stdout
-			cmd.Stderr = stderr
-			err = cmd.Run()
-			if err != nil {
-				return 1
+			if cmdline[len(cmdline)-2] == "rake" {
+				continue
 			}
-			for _, cmdline := range [][]string{
-				{"mkdir", "-p", "log", "public/assets", "tmp", "vendor", ".bundle", "/var/www/.bundle", "/var/www/.gem", "/var/www/.npm", "/var/www/.passenger"},
-				{"touch", "log/production.log"},
-				{"chown", "-R", "--from=root", "www-data:www-data", "/var/www/.bundle", "/var/www/.gem", "/var/www/.npm", "/var/www/.passenger", "log", "tmp", "vendor", ".bundle", "Gemfile.lock", "config.ru", "config/environment.rb"},
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/gem", "install", "--user", "--conservative", "--no-document", "bundler:" + bundlerversion},
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "deployment", "true"},
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "path", "/var/www/.gem"},
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "without", "development test diagnostics performance"},
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "install", "--jobs", fmt.Sprintf("%d", runtime.NumCPU())},
-
-				{"chown", "www-data:www-data", ".", "public/assets"},
-				// {"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "config", "set", "--local", "system", "true"},
-				{"sudo", "-u", "www-data", "ARVADOS_CONFIG=none", "RAILS_GROUPS=assets", "RAILS_ENV=production", "PATH=/var/lib/arvados/bin:" + os.Getenv("PATH"), "/var/lib/arvados/bin/bundle", "exec", "rake", "npm:install"},
-				{"sudo", "-u", "www-data", "ARVADOS_CONFIG=none", "RAILS_GROUPS=assets", "RAILS_ENV=production", "PATH=/var/lib/arvados/bin:" + os.Getenv("PATH"), "/var/lib/arvados/bin/bundle", "exec", "rake", "assets:precompile"},
-				{"chown", "root:root", "."},
-				{"chown", "-R", "root:root", "public/assets", "vendor"},
-
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "exec", "passenger-config", "build-native-support"},
-				{"sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "exec", "passenger-config", "install-standalone-runtime"},
-			} {
-				if cmdline[len(cmdline)-2] == "rake" && dstdir != "workbench1" {
-					continue
-				}
-				cmd = exec.Command(cmdline[0], cmdline[1:]...)
-				cmd.Dir = "/var/lib/arvados/" + dstdir
-				cmd.Stdout = stdout
-				cmd.Stderr = stderr
-				fmt.Fprintf(stderr, "... %s\n", cmd.Args)
-				err = cmd.Run()
-				if err != nil {
-					return 1
-				}
-			}
-			cmd = exec.Command("sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "exec", "passenger-config", "validate-install")
-			cmd.Dir = "/var/lib/arvados/" + dstdir
+			cmd = exec.Command(cmdline[0], cmdline[1:]...)
+			cmd.Dir = "/var/lib/arvados/railsapi"
 			cmd.Stdout = stdout
 			cmd.Stderr = stderr
+			fmt.Fprintf(stderr, "... %s\n", cmd.Args)
 			err = cmd.Run()
-			if err != nil && !strings.Contains(err.Error(), "exit status 2") {
-				// Exit code 2 indicates there were warnings (like
-				// "other passenger installations have been detected",
-				// which we can't expect to avoid) but no errors.
-				// Other non-zero exit codes (1, 9) indicate errors.
+			if err != nil {
 				return 1
 			}
 		}
+		cmd = exec.Command("sudo", "-u", "www-data", "/var/lib/arvados/bin/bundle", "exec", "passenger-config", "validate-install")
+		cmd.Dir = "/var/lib/arvados/railsapi"
+		cmd.Stdout = stdout
+		cmd.Stderr = stderr
+		err = cmd.Run()
+		if err != nil && !strings.Contains(err.Error(), "exit status 2") {
+			// Exit code 2 indicates there were warnings (like
+			// "other passenger installations have been detected",
+			// which we can't expect to avoid) but no errors.
+			// Other non-zero exit codes (1, 9) indicate errors.
+			return 1
+		}
 
 		// Install workbench2 app to /var/lib/arvados/workbench2/
 		if err = inst.runBash(`

commit bf31106bd4a74dd41cae846e1d51e02e033e9a90
Author: Tom Clegg <tom at curii.com>
Date:   Wed Oct 25 15:42:30 2023 -0400

    20846: Use newer setuptools.
    
    services/fuse -> llfuse -> python-daemon -> setuptools >= 62.4.0.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index fc0062cd75..1bde2e8055 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -600,7 +600,7 @@ v=/var/lib/arvados/lib/python
 tmp=/var/lib/arvados/tmp/python
 python3 -m venv "$v"
 . "$v/bin/activate"
-pip3 install --no-cache-dir 'setuptools>=18.5' 'pip>=7'
+pip3 install --no-cache-dir 'setuptools>=62.4.0' 'pip>=7'
 export ARVADOS_BUILDING_VERSION="`+inst.PackageVersion+`"
 for src in "`+inst.SourcePath+`/sdk/python" "`+inst.SourcePath+`/services/fuse"; do
   rsync -a --delete-after "$src/" "$tmp/"

commit d4a4a96d0690c3527acb71a624c58e696249f879
Author: Tom Clegg <tom at curii.com>
Date:   Tue Oct 24 15:06:01 2023 -0400

    20846: Fix dependencies for ubuntu 22.04.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index 5fecc5794e..fc0062cd75 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -208,9 +208,8 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read
 				"gnupg")          // docker install recipe
 		}
 		switch {
-		case osv.Debian && osv.Major >= 11:
-			pkgs = append(pkgs, "g++", "libcurl4", "libcurl4-openssl-dev")
-		case osv.Debian && osv.Major >= 10:
+		case osv.Debian && osv.Major >= 10,
+			osv.Ubuntu && osv.Major >= 22:
 			pkgs = append(pkgs, "g++", "libcurl4", "libcurl4-openssl-dev")
 		case osv.Debian || osv.Ubuntu:
 			pkgs = append(pkgs, "g++", "libcurl3", "libcurl3-openssl-dev")

commit 04f7b48fcae392b3f2d3ff1adfd822a18fb9b951
Author: Tom Clegg <tom at curii.com>
Date:   Tue Oct 24 11:56:00 2023 -0400

    20846: Add libffi-dev dependency for building ruby 3.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index 4a6f54fc34..5fecc5794e 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -154,6 +154,7 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read
 			"default-jre-headless",
 			"gettext",
 			"libattr1-dev",
+			"libffi-dev",
 			"libfuse-dev",
 			"libgbm1", // cypress / workbench2 tests
 			"libgnutls28-dev",

commit 9031b369f5b31d6ea44573c9539b5bd6aa153cd5
Author: Tom Clegg <tom at curii.com>
Date:   Tue Oct 24 11:36:38 2023 -0400

    20846: Force overwriting old executables during ruby install.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index c3751815fd..4a6f54fc34 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -306,7 +306,7 @@ wget --progress=dot:giga -O- https://cache.ruby-lang.org/pub/ruby/`+rubymajorver
 cd "${tmp}/ruby-`+rubyversion+`"
 ./configure --disable-install-static-library --enable-shared --disable-install-doc --prefix /var/lib/arvados
 make -j8
-make install
+make install <(yes || true)
 /var/lib/arvados/bin/gem update --no-document --system 3.4.21
 /var/lib/arvados/bin/gem install bundler --no-document
 `, stdout, stderr)

commit 486623f4ded7e95e085a590e2b5e6cb988b1ad7c
Author: Tom Clegg <tom at curii.com>
Date:   Mon Oct 23 17:21:49 2023 -0400

    20846: Update ruby install recipe, add libyaml dep for psych gem.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index ba416efaac..c3751815fd 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -164,6 +164,7 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read
 			"libssl-dev",
 			"libxml2-dev",
 			"libxslt1-dev",
+			"libyaml-dev",
 			"linkchecker",
 			"lsof",
 			"make",
@@ -306,6 +307,7 @@ cd "${tmp}/ruby-`+rubyversion+`"
 ./configure --disable-install-static-library --enable-shared --disable-install-doc --prefix /var/lib/arvados
 make -j8
 make install
+/var/lib/arvados/bin/gem update --no-document --system 3.4.21
 /var/lib/arvados/bin/gem install bundler --no-document
 `, stdout, stderr)
 		if err != nil {

commit 5bc07be644dfaa923df770f0411735302cb68ddf
Author: Tom Clegg <tom at curii.com>
Date:   Mon Oct 23 14:13:47 2023 -0400

    20846: Update install docs to match `arvados-server install` recipe.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/doc/_includes/_install_ruby_and_bundler.liquid b/doc/_includes/_install_ruby_and_bundler.liquid
index 8fae4bf3bf..f933082498 100644
--- a/doc/_includes/_install_ruby_and_bundler.liquid
+++ b/doc/_includes/_install_ruby_and_bundler.liquid
@@ -99,15 +99,15 @@ Build and install Ruby:
 <notextile>
 <pre><code><span class="userinput">mkdir -p ~/src
 cd ~/src
-curl -f https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.5.tar.gz | tar xz
-cd ruby-2.7.5
-./configure --disable-install-rdoc
-make
+curl -f https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.2.tar.gz | tar xz
+cd ruby-3.2.2
+./configure --disable-install-static-library --enable-shared --disable-install-doc
+make -j8
 sudo make install
 
 # Make sure the post install script can find the gem and ruby executables
 sudo ln -s /usr/local/bin/gem /usr/bin/gem
 sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
 # Install bundler
-sudo -i gem install bundler</span>
+sudo -i gem install bundler --no-document</span>
 </code></pre></notextile>

commit 9a9a55d66bbc28b460c8ffdf1973fd567e1ea6c3
Author: Tom Clegg <tom at curii.com>
Date:   Mon Oct 23 14:13:36 2023 -0400

    20846: Update ruby to 3.2.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/deps.go b/lib/install/deps.go
index 62438645ff..ba416efaac 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -33,7 +33,7 @@ var Command cmd.Handler = &installCommand{}
 const goversion = "1.20.6"
 
 const (
-	rubyversion             = "2.7.7"
+	rubyversion             = "3.2.2"
 	bundlerversion          = "2.2.19"
 	singularityversion      = "3.10.4"
 	pjsversion              = "1.9.8"

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list