X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5d4a115fc4a6d0d4c85bc85bbc4d257490d38d67..78b4cdb54bd58df85d61d72e639a728ec38bb377:/lib/install/deps.go diff --git a/lib/install/deps.go b/lib/install/deps.go index d4b79ace23..70774b313b 100644 --- a/lib/install/deps.go +++ b/lib/install/deps.go @@ -31,6 +31,12 @@ var Command cmd.Handler = &installCommand{} const goversion = "1.17.7" const ( + rubyversion = "2.7.5" + singularityversion = "3.7.4" + pjsversion = "1.9.8" + geckoversion = "0.24.0" + gradleversion = "5.3.1" + nodejsversion = "v12.22.2" devtestDatabasePassword = "insecure_arvados_test" workbench2version = "cfa81dfc3041cb459c8a0918a2732dfcf3a11d40" ) @@ -143,7 +149,6 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read "default-jdk-headless", "default-jre-headless", "gettext", - "iceweasel", "libattr1-dev", "libcrypt-ssleay-perl", "libfuse-dev", @@ -181,10 +186,15 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read "wget", "xvfb", ) + if test { + if osv.Debian && osv.Major <= 10 { + pkgs = append(pkgs, "iceweasel") + } else { + pkgs = append(pkgs, "firefox") + } + } if dev || test { - pkgs = append(pkgs, - "squashfs-tools", // for singularity - ) + pkgs = append(pkgs, "squashfs-tools") // for singularity } switch { case osv.Debian && osv.Major >= 10: @@ -210,7 +220,6 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read os.Mkdir("/var/lib/arvados", 0755) os.Mkdir("/var/lib/arvados/tmp", 0700) if prod || pkg { - os.Mkdir("/var/lib/arvados/wwwtmp", 0700) u, er := user.Lookup("www-data") if er != nil { err = fmt.Errorf("user.Lookup(%q): %w", "www-data", er) @@ -218,12 +227,12 @@ func (inst *installCommand) RunCommand(prog string, args []string, stdin io.Read } uid, _ := strconv.Atoi(u.Uid) gid, _ := strconv.Atoi(u.Gid) + os.Mkdir("/var/lib/arvados/wwwtmp", 0700) err = os.Chown("/var/lib/arvados/wwwtmp", uid, gid) if err != nil { return 1 } } - rubyversion := "2.7.2" rubymajorversion := rubyversion[:strings.LastIndex(rubyversion, ".")] if haverubyversion, err := exec.Command("/var/lib/arvados/bin/ruby", "-v").CombinedOutput(); err == nil && bytes.HasPrefix(haverubyversion, []byte("ruby "+rubyversion)) { logger.Print("ruby " + rubyversion + " already installed") @@ -260,7 +269,6 @@ ln -sfv /var/lib/arvados/go/bin/* /usr/local/bin/ } if !prod && !pkg { - pjsversion := "1.9.8" if havepjsversion, err := exec.Command("/usr/local/bin/phantomjs", "--version").CombinedOutput(); err == nil && string(havepjsversion) == "1.9.8\n" { logger.Print("phantomjs " + pjsversion + " already installed") } else { @@ -274,7 +282,6 @@ ln -sfv /var/lib/arvados/$PJS/bin/phantomjs /usr/local/bin/ } } - geckoversion := "0.24.0" if havegeckoversion, err := exec.Command("/usr/local/bin/geckodriver", "--version").CombinedOutput(); err == nil && strings.Contains(string(havegeckoversion), " "+geckoversion+" ") { logger.Print("geckodriver " + geckoversion + " already installed") } else { @@ -288,7 +295,6 @@ ln -sfv /var/lib/arvados/bin/geckodriver /usr/local/bin/ } } - gradleversion := "5.3.1" if havegradleversion, err := exec.Command("/usr/local/bin/gradle", "--version").CombinedOutput(); err == nil && strings.Contains(string(havegradleversion), "Gradle "+gradleversion+"\n") { logger.Print("gradle " + gradleversion + " already installed") } else { @@ -306,7 +312,6 @@ rm ${zip} } } - singularityversion := "3.7.4" if havesingularityversion, err := exec.Command("/var/lib/arvados/bin/singularity", "--version").CombinedOutput(); err == nil && strings.Contains(string(havesingularityversion), singularityversion) { logger.Print("singularity " + singularityversion + " already installed") } else if dev || test { @@ -449,7 +454,6 @@ make -C ./builddir install } if !prod { - nodejsversion := "v12.22.2" if havenodejsversion, err := exec.Command("/usr/local/bin/node", "--version").CombinedOutput(); err == nil && string(havenodejsversion) == nodejsversion+"\n" { logger.Print("nodejs " + nodejsversion + " already installed") } else { @@ -586,7 +590,7 @@ rsync -a --delete-after build/ /var/lib/arvados/workbench2/ "services/ws", } { fmt.Fprintf(stderr, "building %s...\n", srcdir) - cmd := exec.Command("go", "install", "-ldflags", "-X git.arvados.org/arvados.git/lib/cmd.version="+inst.PackageVersion+" -X main.version="+inst.PackageVersion) + cmd := exec.Command("go", "install", "-ldflags", "-X git.arvados.org/arvados.git/lib/cmd.version="+inst.PackageVersion+" -X main.version="+inst.PackageVersion+" -s -w") cmd.Env = append(cmd.Env, os.Environ()...) cmd.Env = append(cmd.Env, "GOBIN=/var/lib/arvados/bin") cmd.Dir = filepath.Join(inst.SourcePath, srcdir)