summaryrefslogtreecommitdiffstats
path: root/modules/ssh
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2019-11-21 18:32:02 +0000
committertechknowlogick <techknowlogick@gitea.io>2019-11-21 13:32:02 -0500
commitcbaa1de9ec8ab1baa49357b660fab16a68097c84 (patch)
tree5f481d73c95ae24b91e7bb03abaa5cf921f806b5 /modules/ssh
parentd7ac9727bb5046118915cbb26b2dac1b7b27c9d4 (diff)
downloadgitea-cbaa1de9ec8ab1baa49357b660fab16a68097c84.tar.gz
gitea-cbaa1de9ec8ab1baa49357b660fab16a68097c84.zip
Add Graceful shutdown for Windows and hooks for shutdown of goroutines (#8964)
* Graceful Shutdown for windows and others Restructures modules/graceful, adding shutdown for windows, removing and replacing the old minwinsvc code. Creates a new waitGroup - terminate which allows for goroutines to finish up after the shutdown of the servers. Shutdown and terminate hooks are added for goroutines. * Remove unused functions - these can be added in a different PR * Add startup timeout functionality * Document STARTUP_TIMEOUT
Diffstat (limited to 'modules/ssh')
-rw-r--r--modules/ssh/ssh_graceful.go4
-rw-r--r--modules/ssh/ssh_windows.go24
2 files changed, 1 insertions, 27 deletions
diff --git a/modules/ssh/ssh_graceful.go b/modules/ssh/ssh_graceful.go
index d66c7d6540..4d7557e2ee 100644
--- a/modules/ssh/ssh_graceful.go
+++ b/modules/ssh/ssh_graceful.go
@@ -1,5 +1,3 @@
-// +build !windows
-
// Copyright 2019 The Gitea Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
@@ -26,5 +24,5 @@ func listen(server *ssh.Server) {
// Unused informs our cleanup routine that we will not be using a ssh port
func Unused() {
- graceful.InformCleanup()
+ graceful.Manager.InformCleanup()
}
diff --git a/modules/ssh/ssh_windows.go b/modules/ssh/ssh_windows.go
deleted file mode 100644
index 55032e17cd..0000000000
--- a/modules/ssh/ssh_windows.go
+++ /dev/null
@@ -1,24 +0,0 @@
-// +build windows
-
-// Copyright 2019 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package ssh
-
-import (
- "code.gitea.io/gitea/modules/log"
- "github.com/gliderlabs/ssh"
-)
-
-func listen(server *ssh.Server) {
- err := server.ListenAndServe()
- if err != nil {
- log.Critical("Failed to serve with builtin SSH server. %s", err)
- }
-}
-
-// Unused does nothing on windows
-func Unused() {
- // Do nothing
-}