Detailed changes
@@ -79,20 +79,20 @@ func TestScript(t *testing.T) {
UpdateScripts: *update,
RequireExplicitExec: true,
Cmds: map[string]func(ts *testscript.TestScript, neg bool, args []string){
- "soft": cmdSoft("admin", admin1.Signer()),
- "usoft": cmdSoft("user1", user1.Signer()),
- "git": cmdGit(admin1Key),
- "ugit": cmdGit(user1Key),
- "curl": cmdCurl,
- "mkfile": cmdMkfile,
- "envfile": cmdEnvfile,
- "readfile": cmdReadfile,
- "dos2unix": cmdDos2Unix,
- "new-webhook": cmdNewWebhook,
- "waitforserver": cmdWaitforserver,
- "stopserver": cmdStopserver,
- "ui": cmdUI(admin1.Signer()),
- "uui": cmdUI(user1.Signer()),
+ "soft": cmdSoft("admin", admin1.Signer()),
+ "usoft": cmdSoft("user1", user1.Signer()),
+ "git": cmdGit(admin1Key),
+ "ugit": cmdGit(user1Key),
+ "curl": cmdCurl,
+ "mkfile": cmdMkfile,
+ "envfile": cmdEnvfile,
+ "readfile": cmdReadfile,
+ "dos2unix": cmdDos2Unix,
+ "new-webhook": cmdNewWebhook,
+ "ensureserverrunning": cmdEnsureServerRunning,
+ "stopserver": cmdStopserver,
+ "ui": cmdUI(admin1.Signer()),
+ "uui": cmdUI(user1.Signer()),
},
Setup: func(e *testscript.Env) error {
// Add binPath to PATH
@@ -470,9 +470,18 @@ func cmdCurl(ts *testscript.TestScript, neg bool, args []string) {
check(ts, cmd.Execute(), neg)
}
-func cmdWaitforserver(ts *testscript.TestScript, neg bool, args []string) {
- // wait until the server is up
- addr := net.JoinHostPort("localhost", ts.Getenv("SSH_PORT"))
+func cmdEnsureServerRunning(ts *testscript.TestScript, neg bool, args []string) {
+ if len(args) < 1 {
+ ts.Fatalf("Must supply a TCP port of one of the services to connect to. " +
+ "These are set as env vars as they are randomized. " +
+ "Example usage: \"cmdensureserverrunning SSH_PORT\"\n" +
+ "Valid values for the env var: SSH_PORT|HTTP_PORT|GIT_PORT|STATS_PORT")
+ }
+
+ port := ts.Getenv(args[0])
+
+ // verify that the server is up
+ addr := net.JoinHostPort("localhost", port)
for {
conn, _ := net.DialTimeout(
"tcp",
@@ -480,6 +489,7 @@ func cmdWaitforserver(ts *testscript.TestScript, neg bool, args []string) {
time.Second,
)
if conn != nil {
+ ts.Logf("Server is running on port: %s", port)
conn.Close()
break
}
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# set settings
soft settings allow-keyless true
@@ -3,8 +3,8 @@
# start soft serve
exec soft serve --sync-hooks &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
soft --help
cmpenv stdout help.txt
@@ -8,8 +8,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create user
soft user create user1 --key "$USER1_AUTHORIZED_KEY"
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create user
soft user create user1 --key "$USER1_AUTHORIZED_KEY"
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# import a repo
soft repo import --mirror charmbracelet/catwalk https://github.com/charmbracelet/catwalk.git
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo
soft repo create repo1
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# setup
soft repo import test https://github.com/charmbracelet/catwalk.git
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo
soft repo import basic1 https://github.com/git-fixtures/basic
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo
soft repo create repo1 -d 'description' -H -p -n 'repo11'
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
soft repo create repo1
soft repo create repo-to-delete
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# import private
soft repo import --private repo1 https://github.com/charmbracelet/catwalk.git
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo & user1 with admin
soft repo create repo1 -p
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo
soft repo create repo-empty -d 'description' -H -p -n 'repo-empty'
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo
soft repo create repo1
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a repo
soft repo create repo-123
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# get original username
soft info
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# check default allow-keyless
soft settings allow-keyless true
@@ -8,8 +8,8 @@ skip 'breaks with git-lfs 3.5.1'
env SOFT_SERVE_LFS_SSH_ENABLED=true
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a user
soft user create foo --key "$USER1_AUTHORIZED_KEY"
@@ -4,8 +4,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create a user
soft user create foo --key "$USER1_AUTHORIZED_KEY"
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# create user
soft user create user1 --key "$USER1_AUTHORIZED_KEY"
@@ -2,8 +2,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# test repositories tab
ui '" q"'
@@ -5,8 +5,8 @@
# start soft serve
exec soft serve &
-# wait for server to start
-waitforserver
+# wait for SSH server to start
+ensureserverrunning SSH_PORT
# add key to admin
soft user add-pubkey admin "$ADMIN2_AUTHORIZED_KEY"