tests: wait gitea ready
* retry gitea create admin user command until ready * wait for gitea api to be ready
This commit is contained in:
parent
c3ee99e2df
commit
4b5bd93c0a
|
@ -93,11 +93,32 @@ func setupGitea(t *testing.T, dir, dockerBridgeAddress string) *testutil.TestGit
|
||||||
if err := tgitea.Start(); err != nil {
|
if err := tgitea.Start(); err != nil {
|
||||||
t.Fatalf("unexpected err: %v", err)
|
t.Fatalf("unexpected err: %v", err)
|
||||||
}
|
}
|
||||||
time.Sleep(5 * time.Second)
|
|
||||||
|
|
||||||
|
// wait for gitea ready
|
||||||
|
err = testutil.Wait(30*time.Second, func() (bool, error) {
|
||||||
cmd := exec.Command(tgitea.GiteaPath, "admin", "create-user", "--name", giteaUser01, "--email", giteaUser01+"@example.com", "--password", "password", "--admin", "--config", tgitea.ConfigPath)
|
cmd := exec.Command(tgitea.GiteaPath, "admin", "create-user", "--name", giteaUser01, "--email", giteaUser01+"@example.com", "--password", "password", "--admin", "--config", tgitea.ConfigPath)
|
||||||
if out, err := cmd.CombinedOutput(); err != nil {
|
// just retry until no error
|
||||||
t.Fatalf("unexpected err: %v, out: %s", err, out)
|
if err := cmd.Run(); err != nil {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
return true, nil
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
t.Fatalf("unexpected err: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
giteaAPIURL := fmt.Sprintf("http://%s:%s", tgitea.HTTPListenAddress, tgitea.HTTPPort)
|
||||||
|
giteaClient := gitea.NewClient(giteaAPIURL, "")
|
||||||
|
|
||||||
|
// Wait for gitea api to be ready
|
||||||
|
err = testutil.Wait(30*time.Second, func() (bool, error) {
|
||||||
|
if _, err := giteaClient.ListAccessTokens(giteaUser01, "password"); err != nil {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
return true, nil
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
t.Fatalf("unexpected err: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
return tgitea
|
return tgitea
|
||||||
|
|
Loading…
Reference in New Issue