projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
13647: Count "failed to start services" as failure, not success.
[arvados.git]
/
services
/
crunch-run
/
git_mount_test.go
diff --git
a/services/crunch-run/git_mount_test.go
b/services/crunch-run/git_mount_test.go
index 82dce3ac26b57d44b2d902c13a859e12f3c2db41..5796ad7a278cfbb79df34210d3c81880e979a67b 100644
(file)
--- a/
services/crunch-run/git_mount_test.go
+++ b/
services/crunch-run/git_mount_test.go
@@
-6,9
+6,11
@@
package main
import (
"io/ioutil"
import (
"io/ioutil"
+ "net/url"
"os"
"path/filepath"
"os"
"path/filepath"
+ "git.curoverse.com/arvados.git/lib/config"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/arvadostest"
check "gopkg.in/check.v1"
"git.curoverse.com/arvados.git/sdk/go/arvados"
"git.curoverse.com/arvados.git/sdk/go/arvadostest"
check "gopkg.in/check.v1"
@@
-42,7
+44,7
@@
func (s *GitMountSuite) TestextractTree(c *check.C) {
UUID: arvadostest.Repository2UUID,
Commit: "fd3531f42995344f36c30b79f55f27b502f3d344",
}
UUID: arvadostest.Repository2UUID,
Commit: "fd3531f42995344f36c30b79f55f27b502f3d344",
}
- err := gm.extractTree(&ArvTestClient{}, s.tmpdir)
+ err := gm.extractTree(&ArvTestClient{}, s.tmpdir
, arvadostest.ActiveToken
)
c.Check(err, check.IsNil)
fnm := filepath.Join(s.tmpdir, "dir1/dir2/file with mode 0644")
c.Check(err, check.IsNil)
fnm := filepath.Join(s.tmpdir, "dir1/dir2/file with mode 0644")
@@
-67,6
+69,12
@@
func (s *GitMountSuite) TestextractTree(c *check.C) {
// Ensure there's no extra stuff like a ".git" dir
s.checkTmpdirContents(c, []string{"dir1"})
// Ensure there's no extra stuff like a ".git" dir
s.checkTmpdirContents(c, []string{"dir1"})
+
+ // Ensure tmpdir is world-readable and world-executable so the
+ // UID inside the container can use it.
+ fi, err = os.Stat(s.tmpdir)
+ c.Check(err, check.IsNil)
+ c.Check(fi.Mode()&os.ModePerm, check.Equals, os.FileMode(0755))
}
// Commit 5ebfab0 is not the tip of any branch or tag, but is
}
// Commit 5ebfab0 is not the tip of any branch or tag, but is
@@
-76,7
+84,7
@@
func (s *GitMountSuite) TestExtractNonTipCommit(c *check.C) {
UUID: arvadostest.Repository2UUID,
Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
}
UUID: arvadostest.Repository2UUID,
Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
}
- err := gm.extractTree(&ArvTestClient{}, s.tmpdir)
+ err := gm.extractTree(&ArvTestClient{}, s.tmpdir
, arvadostest.ActiveToken
)
c.Check(err, check.IsNil)
fnm := filepath.Join(s.tmpdir, "file only on testbranch")
c.Check(err, check.IsNil)
fnm := filepath.Join(s.tmpdir, "file only on testbranch")
@@
-91,7
+99,7
@@
func (s *GitMountSuite) TestNonexistentRepository(c *check.C) {
UUID: "zzzzz-s0uqq-nonexistentrepo",
Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
}
UUID: "zzzzz-s0uqq-nonexistentrepo",
Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
}
- err := gm.extractTree(&ArvTestClient{}, s.tmpdir)
+ err := gm.extractTree(&ArvTestClient{}, s.tmpdir
, arvadostest.ActiveToken
)
c.Check(err, check.NotNil)
c.Check(err, check.ErrorMatches, ".*repository not found.*")
c.Check(err, check.NotNil)
c.Check(err, check.ErrorMatches, ".*repository not found.*")
@@
-104,7
+112,7
@@
func (s *GitMountSuite) TestNonexistentCommit(c *check.C) {
UUID: arvadostest.Repository2UUID,
Commit: "bb66b6bb6b6bbb6b6b6b66b6b6b6b6b6b6b6b66b",
}
UUID: arvadostest.Repository2UUID,
Commit: "bb66b6bb6b6bbb6b6b6b66b6b6b6b6b6b6b6b66b",
}
- err := gm.extractTree(&ArvTestClient{}, s.tmpdir)
+ err := gm.extractTree(&ArvTestClient{}, s.tmpdir
, arvadostest.ActiveToken
)
c.Check(err, check.NotNil)
c.Check(err, check.ErrorMatches, ".*object not found.*")
c.Check(err, check.NotNil)
c.Check(err, check.ErrorMatches, ".*object not found.*")
@@
-118,7
+126,7
@@
func (s *GitMountSuite) TestGitUrlDiscoveryFails(c *check.C) {
UUID: arvadostest.Repository2UUID,
Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
}
UUID: arvadostest.Repository2UUID,
Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
}
- err := gm.extractTree(&ArvTestClient{}, s.tmpdir)
+ err := gm.extractTree(&ArvTestClient{}, s.tmpdir
, arvadostest.ActiveToken
)
c.Check(err, check.ErrorMatches, ".*gitUrl.*")
}
c.Check(err, check.ErrorMatches, ".*gitUrl.*")
}
@@
-167,8
+175,17
@@
func (s *GitMountSuite) TestInvalid(c *check.C) {
},
matcher: ".*UUID.*",
},
},
matcher: ".*UUID.*",
},
+ {
+ gm: gitMount{
+ Path: "/",
+ UUID: arvadostest.Repository2UUID,
+ Commit: "5ebfab0522851df01fec11ec55a6d0f4877b542e",
+ Writable: true,
+ },
+ matcher: ".*writable.*",
+ },
} {
} {
- err := trial.gm.extractTree(&ArvTestClient{}, s.tmpdir)
+ err := trial.gm.extractTree(&ArvTestClient{}, s.tmpdir
, arvadostest.ActiveToken
)
c.Check(err, check.NotNil)
s.checkTmpdirContents(c, []string{})
c.Check(err, check.NotNil)
s.checkTmpdirContents(c, []string{})
@@
-188,7
+205,11
@@
func (s *GitMountSuite) checkTmpdirContents(c *check.C, expect []string) {
func (*GitMountSuite) useTestGitServer(c *check.C) {
git_client.InstallProtocol("https", git_http.NewClient(arvados.InsecureHTTPClient))
func (*GitMountSuite) useTestGitServer(c *check.C) {
git_client.InstallProtocol("https", git_http.NewClient(arvados.InsecureHTTPClient))
- port, err := ioutil.ReadFile("../../tmp/arv-git-httpd-ssl.port")
+ loader := config.NewLoader(nil, nil)
+ cfg, err := loader.Load()
c.Assert(err, check.IsNil)
c.Assert(err, check.IsNil)
- discoveryMap["gitUrl"] = "https://localhost:" + string(port)
+ cluster, err := cfg.GetCluster("")
+ c.Assert(err, check.IsNil)
+
+ discoveryMap["gitUrl"] = (*url.URL)(&cluster.Services.GitHTTP.ExternalURL).String()
}
}