Merge branch 'main' into 18842-arv-mount-disk-config
[arvados.git] / lib / install / deps.go
index 187bac4b42c4d48be5f16d639483ae7daf87bf72..1b4bf7266d29124dd56a92c9d9284828896cd706 100644 (file)
@@ -30,18 +30,18 @@ import (
 
 var Command cmd.Handler = &installCommand{}
 
-const goversion = "1.17.7"
+const goversion = "1.18.8"
 
 const (
-       rubyversion             = "2.7.5"
+       rubyversion             = "2.7.6"
        bundlerversion          = "2.2.19"
        singularityversion      = "3.9.9"
        pjsversion              = "1.9.8"
        geckoversion            = "0.24.0"
        gradleversion           = "5.3.1"
-       nodejsversion           = "v12.22.11"
+       nodejsversion           = "v12.22.12"
        devtestDatabasePassword = "insecure_arvados_test"
-       workbench2version       = "2454ac35292a79594c32a80430740317ed5005cf"
+       workbench2version       = "e30e54d674c95ee15e296c71e471c1555bdc5a38" // 2.4.3
 )
 
 //go:embed arvados.service
@@ -155,16 +155,14 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read
                        "default-jre-headless",
                        "gettext",
                        "libattr1-dev",
-                       "libcrypt-ssleay-perl",
                        "libfuse-dev",
+                       "libgbm1", // cypress / workbench2 tests
                        "libgnutls28-dev",
-                       "libjson-perl",
                        "libpam-dev",
                        "libpcre3-dev",
                        "libpq-dev",
                        "libreadline-dev",
                        "libssl-dev",
-                       "libwww-perl",
                        "libxml2-dev",
                        "libxslt1-dev",
                        "linkchecker",
@@ -190,6 +188,7 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read
                        "uuid-dev",
                        "wget",
                        "xvfb",
+                       "zlib1g-dev", // services/api
                )
                if test {
                        if osv.Debian && osv.Major <= 10 {
@@ -204,11 +203,13 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read
                }
                switch {
                case osv.Debian && osv.Major >= 11:
-                       pkgs = append(pkgs, "libcurl4", "perl-modules-5.32")
+                       pkgs = append(pkgs, "g++", "libcurl4", "libcurl4-openssl-dev")
                case osv.Debian && osv.Major >= 10:
-                       pkgs = append(pkgs, "libcurl4", "perl-modules")
-               default:
-                       pkgs = append(pkgs, "libcurl3", "perl-modules")
+                       pkgs = append(pkgs, "g++", "libcurl4", "libcurl4-openssl-dev")
+               case osv.Debian || osv.Ubuntu:
+                       pkgs = append(pkgs, "g++", "libcurl3", "libcurl3-openssl-dev")
+               case osv.Centos:
+                       pkgs = append(pkgs, "gcc", "gcc-c++", "libcurl-devel", "postgresql-devel")
                }
                cmd := exec.CommandContext(ctx, "apt-get")
                if inst.EatMyData {
@@ -506,6 +507,7 @@ setcap "cap_sys_admin+pei cap_sys_chroot+pei" /var/lib/arvados/bin/nsenter
                } else {
                        err = inst.runBash(`
 NJS=`+nodejsversion+`
+rm -rf /var/lib/arvados/node-*-linux-x64
 wget --progress=dot:giga -O- https://nodejs.org/dist/${NJS}/node-${NJS}-linux-x64.tar.xz | sudo tar -C /var/lib/arvados -xJf -
 ln -sfv /var/lib/arvados/node-${NJS}-linux-x64/bin/{node,npm} /usr/local/bin/
 `, stdout, stderr)
@@ -857,7 +859,7 @@ func prodpkgs(osv osversion) []string {
                "libcurl3-gnutls",
                "libxslt1.1",
                "nginx",
-               "python",
+               "python3",
                "sudo",
        }
        if osv.Debian || osv.Ubuntu {
@@ -867,21 +869,12 @@ func prodpkgs(osv osversion) []string {
                        pkgs = append(pkgs, "python3-distutils") // sdk/cwl
                }
                return append(pkgs,
-                       "g++",
-                       "libcurl4-openssl-dev", // services/api
-                       "libpq-dev",
-                       "libpython2.7", // services/fuse
                        "mime-support", // keep-web
-                       "zlib1g-dev",   // services/api
                )
        } else if osv.Centos {
                return append(pkgs,
                        "fuse-libs", // services/fuse
-                       "gcc",
-                       "gcc-c++",
-                       "libcurl-devel",    // services/api
-                       "mailcap",          // keep-web
-                       "postgresql-devel", // services/api
+                       "mailcap",   // keep-web
                )
        } else {
                panic("os version not supported")