[ARVADOS] updated: 2.1.0-2165-g63ad24fa4

Git user git at public.arvados.org
Thu Mar 24 18:47:52 UTC 2022


Summary of changes:
 cmd/arvados-package/fpm.go                         |  4 +++
 cmd/arvados-package/install.go                     |  2 +-
 .../install/arvados.service                        |  4 +--
 lib/install/deps.go                                | 34 ++++++++++++++++++++++
 lib/install/init.go                                | 15 +++++++---
 5 files changed, 52 insertions(+), 7 deletions(-)
 copy cmd/arvados-server/arvados-controller.service => lib/install/arvados.service (90%)

       via  63ad24fa4b86c7a2fe033f6ef809091dbf4f138c (commit)
       via  de45f10281ab715d0deb1076112242394a37f297 (commit)
       via  f29c762f298d7c02ecc963ecd99936b86da1bcfa (commit)
      from  fe0c81c57f073e69bd334bd456046d88bd5f58df (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 63ad24fa4b86c7a2fe033f6ef809091dbf4f138c
Author: Tom Clegg <tom at curii.com>
Date:   Thu Mar 24 14:45:29 2022 -0400

    18700: Enable TrustAllContent in package testinstall.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/cmd/arvados-package/install.go b/cmd/arvados-package/install.go
index af72c2c39..b49d1e347 100644
--- a/cmd/arvados-package/install.go
+++ b/cmd/arvados-package/install.go
@@ -119,7 +119,7 @@ eatmydata apt-get install --reinstall -y --no-install-recommends arvados-server-
 SUDO_FORCE_REMOVE=yes apt-get autoremove -y
 
 /etc/init.d/postgresql start
-arvados-server init -cluster-id x1234 -domain=$domain -login=test
+arvados-server init -cluster-id x1234 -domain=$domain -login=test -insecure
 exec arvados-server boot -listen-host=0.0.0.0 $bootargs
 `)
 	cmd.Stdout = stdout
diff --git a/lib/install/init.go b/lib/install/init.go
index db78a282f..c88546da9 100644
--- a/lib/install/init.go
+++ b/lib/install/init.go
@@ -34,6 +34,7 @@ type initCommand struct {
 	Domain             string
 	PostgreSQLPassword string
 	Login              string
+	Insecure           bool
 }
 
 func (initcmd *initCommand) RunCommand(prog string, args []string, stdin io.Reader, stdout, stderr io.Writer) int {
@@ -61,6 +62,7 @@ func (initcmd *initCommand) RunCommand(prog string, args []string, stdin io.Read
 	flags.StringVar(&initcmd.ClusterID, "cluster-id", "", "cluster `id`, like x1234 for a dev cluster")
 	flags.StringVar(&initcmd.Domain, "domain", hostname, "cluster public DNS `name`, like x1234.arvadosapi.com")
 	flags.StringVar(&initcmd.Login, "login", "", "login `backend`: test, pam, or ''")
+	flags.BoolVar(&initcmd.Insecure, "insecure", false, "accept invalid TLS certificates and configure TrustAllContent (do not use in production!)")
 	if ok, code := cmd.ParseFlags(flags, prog, args, "", stderr); !ok {
 		return code
 	} else if *versionFlag {
@@ -151,6 +153,9 @@ func (initcmd *initCommand) RunCommand(prog string, args []string, stdin io.Read
           "http://0.0.0.0:9007/": {}
     Collections:
       BlobSigningKey: {{printf "%q" ( .RandomHex 50 )}}
+      {{if .Insecure}}
+      TrustAllContent: true
+      {{end}}
     Containers:
       DispatchPrivateKey: {{printf "%q" .GenerateSSHPrivateKey}}
     ManagementToken: {{printf "%q" ( .RandomHex 50 )}}
@@ -161,8 +166,10 @@ func (initcmd *initCommand) RunCommand(prog string, args []string, stdin io.Read
         user: arvados
         password: {{printf "%q" .PostgreSQLPassword}}
     SystemRootToken: {{printf "%q" ( .RandomHex 50 )}}
+    {{if .Insecure}}
     TLS:
       Insecure: true
+    {{end}}
     Volumes:
       {{.ClusterID}}-nyw5e-000000000000000:
         Driver: Directory

commit de45f10281ab715d0deb1076112242394a37f297
Author: Tom Clegg <tom at curii.com>
Date:   Thu Mar 24 13:39:31 2022 -0400

    18700: Add systemd unit file to arvados-server-easy package.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/cmd/arvados-package/fpm.go b/cmd/arvados-package/fpm.go
index aec645a68..d81abab58 100644
--- a/cmd/arvados-package/fpm.go
+++ b/cmd/arvados-package/fpm.go
@@ -97,6 +97,10 @@ func fpm(ctx context.Context, opts opts, stdin io.Reader, stdout, stderr io.Writ
 		"--verbose",
 		"--deb-use-file-permissions",
 		"--rpm-use-file-permissions",
+		"/etc/systemd/system/multi-user.target.wants/arvados.service",
+		"/lib/systemd/system/arvados.service",
+		"/usr/bin/arvados-client",
+		"/usr/bin/arvados-server",
 		"/var/lib/arvados",
 		"/var/www/.gem",
 		"/var/www/.passenger",
diff --git a/lib/install/arvados.service b/lib/install/arvados.service
new file mode 100644
index 000000000..cb411c63a
--- /dev/null
+++ b/lib/install/arvados.service
@@ -0,0 +1,27 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
+[Unit]
+Description=Arvados server
+Documentation=https://doc.arvados.org/
+After=network.target
+AssertPathExists=/etc/arvados/config.yml
+
+# systemd>=230 (debian:9) obeys StartLimitIntervalSec in the [Unit] section
+StartLimitIntervalSec=0
+
+[Service]
+Type=notify
+EnvironmentFile=-/etc/arvados/environment
+ExecStart=/usr/bin/arvados-server boot
+# Set a reasonable default for the open file limit
+LimitNOFILE=65536
+Restart=always
+RestartSec=1
+
+# systemd<=219 (centos:7, debian:8, ubuntu:trusty) obeys StartLimitInterval in the [Service] section
+StartLimitInterval=0
+
+[Install]
+WantedBy=multi-user.target
diff --git a/lib/install/deps.go b/lib/install/deps.go
index 44e46eec4..2aa77f0a2 100644
--- a/lib/install/deps.go
+++ b/lib/install/deps.go
@@ -8,6 +8,7 @@ import (
 	"bufio"
 	"bytes"
 	"context"
+	_ "embed"
 	"errors"
 	"flag"
 	"fmt"
@@ -42,6 +43,9 @@ const (
 	workbench2version       = "5e020488f67b5bc919796e0dc8b0b9f3b3ff23b0"
 )
 
+//go:embed arvados.service
+var arvadosServiceFile []byte
+
 type installCommand struct {
 	ClusterType    string
 	SourcePath     string
@@ -540,6 +544,19 @@ yarn install
 			}
 		}
 
+		// Symlink user-facing Go programs /usr/bin/x ->
+		// /var/lib/arvados/bin/x
+		for _, prog := range []string{"arvados-client", "arvados-server"} {
+			err = os.Remove("/usr/bin/" + prog)
+			if err != nil && !errors.Is(err, os.ErrNotExist) {
+				return 1
+			}
+			err = os.Symlink("/var/lib/arvados/bin/"+prog, "/usr/bin/"+prog)
+			if err != nil {
+				return 1
+			}
+		}
+
 		// Copy assets from source tree to /var/lib/arvados/share
 		cmd := exec.Command("install", "-v", "-t", "/var/lib/arvados/share", filepath.Join(inst.SourcePath, "sdk/python/tests/nginx.conf"))
 		cmd.Stdout = stdout
@@ -611,6 +628,23 @@ rsync -a --delete-after build/ /var/lib/arvados/workbench2/
 `, stdout, stderr); err != nil {
 			return 1
 		}
+
+		err = os.WriteFile("/lib/systemd/system/arvados.service", arvadosServiceFile, 0777)
+		if err != nil {
+			return 1
+		}
+		// This is equivalent to "systemd enable", but does
+		// not depend on the systemctl program being
+		// available.
+		symlink := "/etc/systemd/system/multi-user.target.wants/arvados.service"
+		err = os.Remove(symlink)
+		if err != nil && !errors.Is(err, os.ErrNotExist) {
+			return 1
+		}
+		err = os.Symlink("/lib/systemd/system/arvados.service", symlink)
+		if err != nil {
+			return 1
+		}
 	}
 
 	return 0

commit f29c762f298d7c02ecc963ecd99936b86da1bcfa
Author: Tom Clegg <tom at curii.com>
Date:   Thu Mar 24 11:18:33 2022 -0400

    18700: Use different ports for WebDAV and WebDAVDownload ext URLs.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/lib/install/init.go b/lib/install/init.go
index 8e7f181c4..db78a282f 100644
--- a/lib/install/init.go
+++ b/lib/install/init.go
@@ -112,25 +112,25 @@ func (initcmd *initCommand) RunCommand(prog string, args []string, stdin io.Read
       Websocket:
         InternalURLs:
           "http://0.0.0.0:8005/": {}
-        ExternalURL: {{printf "%q" ( print "wss://" .Domain ":4436/websocket" ) }}
+        ExternalURL: {{printf "%q" ( print "wss://" .Domain ":4435/websocket" ) }}
       Keepbalance:
         InternalURLs:
           "http://0.0.0.0:9005/": {}
       GitHTTP:
         InternalURLs:
           "http://0.0.0.0:9001/": {}
-        ExternalURL: {{printf "%q" ( print "https://" .Domain ":4437/" ) }}
+        ExternalURL: {{printf "%q" ( print "https://" .Domain ":4436/" ) }}
       DispatchCloud:
         InternalURLs:
           "http://0.0.0.0:9006/": {}
       Keepproxy:
         InternalURLs:
           "http://0.0.0.0:25108/": {}
-        ExternalURL: {{printf "%q" ( print "https://" .Domain ":4438/" ) }}
+        ExternalURL: {{printf "%q" ( print "https://" .Domain ":4437/" ) }}
       WebDAV:
         InternalURLs:
           "http://0.0.0.0:9002/": {}
-        ExternalURL: {{printf "%q" ( print "https://" .Domain ":4439/" ) }}
+        ExternalURL: {{printf "%q" ( print "https://" .Domain ":4438/" ) }}
       WebDAVDownload:
         InternalURLs:
           "http://0.0.0.0:8004/": {}

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


hooks/post-receive
-- 




More information about the arvados-commits mailing list