mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-24 16:03:43 +08:00
Merge pull request #5312 from wanyaoqi/bugfix/wyq/fix-bm-register
fix bm register get remote address
This commit is contained in:
@@ -156,11 +156,15 @@ func bmRegisterMiddleware(h bmRegisterFunc) appsrv.FilterHandler {
|
||||
newCtx.ResponseError(httperrors.NewMissingParameterError("hostname"))
|
||||
return
|
||||
}
|
||||
remoteIp, _, err := net.SplitHostPort(r.RemoteAddr)
|
||||
if err != nil {
|
||||
newCtx.ResponseError(httperrors.NewInternalServerError("Parse ip error %s", err))
|
||||
return
|
||||
remoteIp, _ := newCtx.Data().GetString("ssh_ip")
|
||||
if len(remoteIp) == 0 {
|
||||
remoteIp, _, err = net.SplitHostPort(r.RemoteAddr)
|
||||
if err != nil {
|
||||
newCtx.ResponseError(httperrors.NewInternalServerError("Parse ip error %s", err))
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
sshPort, err := newCtx.Data().Int("ssh_port")
|
||||
if err != nil {
|
||||
newCtx.ResponseError(httperrors.NewMissingParameterError("ssh_port"))
|
||||
|
||||
@@ -44,10 +44,14 @@ func addHandler(method, prefix string, f appsrv.FilterHandler, app *appsrv.Appli
|
||||
}
|
||||
|
||||
func getBmAgentUrl(ctx context.Context, w http.ResponseWriter, r *http.Request) {
|
||||
ipAddr, _, err := net.SplitHostPort(r.RemoteAddr)
|
||||
if err != nil {
|
||||
httperrors.NewInternalServerError("Parse remote ip error %s", err)
|
||||
return
|
||||
var err error
|
||||
ipAddr := r.URL.Query().Get("ssh_ip")
|
||||
if len(ipAddr) == 0 {
|
||||
ipAddr, _, err = net.SplitHostPort(r.RemoteAddr)
|
||||
if err != nil {
|
||||
httperrors.NewInternalServerError("Parse remote ip error %s", err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
n, _ := models.NetworkManager.GetOnPremiseNetworkOfIP(ipAddr, "", tristate.None)
|
||||
@@ -71,7 +75,7 @@ func getBmPrepareScript(ctx context.Context, w http.ResponseWriter, r *http.Requ
|
||||
httperrors.NotAcceptableError(w, "Baremetal package not prepared")
|
||||
return
|
||||
}
|
||||
regionUrl, err := auth.GetServiceURL("compute_v2", options.Options.Region, "", "")
|
||||
regionUrl, err := auth.GetPublicServiceURL("compute_v2", options.Options.Region, "")
|
||||
if err != nil {
|
||||
log.Errorln(err)
|
||||
httperrors.InternalServerError(w, err.Error())
|
||||
|
||||
Reference in New Issue
Block a user