// Copyright (C) The Arvados Authors. All rights reserved. // // SPDX-License-Identifier: AGPL-3.0 package localdb import ( "os" "os/exec" "testing" check "gopkg.in/check.v1" ) func haveDocker() bool { _, err := exec.Command("docker", "info").CombinedOutput() return err == nil } func (s *LDAPSuite) TestLoginLDAPViaPAM(c *check.C) { if testing.Short() { c.Skip("skipping docker test in short mode") } if !haveDocker() { c.Skip("skipping docker test because docker is not available") } pgproxy := newPgProxy(c, s.cluster) defer pgproxy.Close() cmd := exec.Command("bash", "login_ldap_docker_test.sh") cmd.Stdout = os.Stderr cmd.Stderr = os.Stderr cmd.Env = append(os.Environ(), "config_method=pam", "pgport="+pgproxy.Port()) err := cmd.Run() c.Check(err, check.IsNil) } func (s *LDAPSuite) TestLoginLDAPBuiltin(c *check.C) { if testing.Short() { c.Skip("skipping docker test in short mode") } if !haveDocker() { c.Skip("skipping docker test because docker is not available") } pgproxy := newPgProxy(c, s.cluster) defer pgproxy.Close() cmd := exec.Command("bash", "login_ldap_docker_test.sh") cmd.Stdout = os.Stderr cmd.Stderr = os.Stderr cmd.Env = append(os.Environ(), "config_method=ldap", "pgport="+pgproxy.Port()) err := cmd.Run() c.Check(err, check.IsNil) }