[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