Diff
1diff --git a/pkg/git/lfs.go b/pkg/git/lfs.go
2index 7dc4b8b353ea480501eab855fee922d2a94f74ee..4b0065f3e5e3d830347dc2bbc3b50ead7a19b347 100644
3--- a/pkg/git/lfs.go
4+++ b/pkg/git/lfs.go
5@@ -159,8 +159,6 @@ func (t *lfsTransfer) StartUpload(oid string, r io.Reader, _ transfer.Args) (io.
6 return nil, err
7 }
8
9- t.logger.Infof("Object name: %s", obj.Name())
10-
11 return &uploadObject{
12 oid: oid,
13 size: written,
14diff --git a/testscript/script_test.go b/testscript/script_test.go
15index 0b1b619e28d656363afe56e28dc6336a969e8e2d..32ebe77c127a343571e430657263ac8c93a63e81 100644
16--- a/testscript/script_test.go
17+++ b/testscript/script_test.go
18@@ -148,7 +148,6 @@ func TestScript(t *testing.T) {
19 cfg.HTTP.PublicURL = "http://" + httpListen
20 cfg.Stats.ListenAddr = statsListen
21 cfg.LFS.Enabled = true
22- // cfg.LFS.SSHEnabled = true
23
24 // Parse os SOFT_SERVE environment variables
25 if err := cfg.ParseEnv(); err != nil {
26diff --git a/testscript/testdata/ssh-lfs.txtar b/testscript/testdata/ssh-lfs.txtar
27new file mode 100644
28index 0000000000000000000000000000000000000000..a3753b66a92c44256c4804b1bb21c51a384ce732
29--- /dev/null
30+++ b/testscript/testdata/ssh-lfs.txtar
31@@ -0,0 +1,76 @@
32+# vi: set ft=conf
33+
34+[windows] dos2unix err1.txt err2.txt err3.txt errauth.txt
35+
36+# enable ssh lfs transfer
37+env SOFT_SERVE_LFS_SSH_ENABLED=true
38+# start soft serve
39+exec soft serve &
40+# wait for server to start
41+waitforserver
42+
43+# create a user
44+soft user create foo --key "$USER1_AUTHORIZED_KEY"
45+
46+# create a repo
47+soft repo create repo1
48+soft repo create repo1p -p
49+usoft repo create repo2
50+usoft repo create repo2p -p
51+
52+# SSH Git LFS Transfer command
53+! soft git-lfs-transfer
54+cmp stderr err1.txt
55+! soft git-lfs-transfer repo1
56+cmp stderr err2.txt
57+soft git-lfs-transfer repo1 download
58+stdout '000eversion=1\n000clocking\n0000'
59+soft git-lfs-transfer repo1 upload
60+stdout '000eversion=1\n000clocking\n0000'
61+usoft git-lfs-transfer repo1 download
62+stdout '000eversion=1\n000clocking\n0000'
63+! usoft git-lfs-transfer repo1 upload
64+cmp stderr errauth.txt
65+
66+# Unauthorized user
67+! usoft git-lfs-transfer
68+cmp stderr err1.txt
69+! usoft git-lfs-transfer repo1p
70+cmp stderr err2.txt
71+! usoft git-lfs-transfer repo1p download
72+cmp stderr errauth.txt
73+! usoft git-lfs-transfer repo1p upload
74+cmp stderr errauth.txt
75+
76+# push & create repo with some files, commits, tags...
77+mkdir ./repo1
78+git -c init.defaultBranch=master -C repo1 init
79+mkfile ./repo1/README.md '# Project\nfoo'
80+mkfile ./repo1/foo.png 'foo'
81+mkfile ./repo1/bar.png 'bar'
82+git -C repo1 remote add origin ssh://localhost:$SSH_PORT/repo1
83+git -C repo1 lfs install --local
84+git -C repo1 lfs track '*.png'
85+git -C repo1 add -A
86+git -C repo1 commit -m 'first'
87+git -C repo1 tag v0.1.0
88+git -C repo1 push origin HEAD
89+git -C repo1 push origin HEAD --tags
90+
91+# clone repo with ssh lfs-transfer
92+git clone ssh://localhost:$SSH_PORT/repo1 repo1c
93+exists repo1c/README.md
94+exists repo1c/foo.png
95+exists repo1c/bar.png
96+
97+# stop the server
98+[windows] stopserver
99+
100+-- err1.txt --
101+Error: accepts 2 arg(s), received 0
102+-- err2.txt --
103+Error: accepts 2 arg(s), received 1
104+-- err3.txt --
105+Error: invalid request
106+-- errauth.txt --
107+Error: you are not authorized to do this