mirror of https://github.com/portainer/portainer
refactor(edge): move stack response to a shared config [EE-5564] (#9033)
parent
9d3f13ac92
commit
79822e1d3b
|
@ -0,0 +1,48 @@
|
||||||
|
package edge
|
||||||
|
|
||||||
|
type (
|
||||||
|
|
||||||
|
// StackPayload represents the payload sent to the agent
|
||||||
|
StackPayload struct {
|
||||||
|
// ID of the stack
|
||||||
|
ID int
|
||||||
|
// Name of the stack
|
||||||
|
Name string
|
||||||
|
// Content of the stack file
|
||||||
|
FileContent string
|
||||||
|
// Namespace to use for kubernetes stack. Keep empty to use the manifest namespace.
|
||||||
|
Namespace string
|
||||||
|
// Version of the stack file
|
||||||
|
Version int
|
||||||
|
// Content of the .env file
|
||||||
|
DotEnvFileContent string
|
||||||
|
|
||||||
|
// RegistryCredentials holds the credentials for a Docker registry.
|
||||||
|
//
|
||||||
|
// Used only for EE
|
||||||
|
RegistryCredentials []RegistryCredentials
|
||||||
|
// PrePullImage is a flag indicating if the agent should pull the image before deploying the stack.
|
||||||
|
//
|
||||||
|
// Used only for EE
|
||||||
|
PrePullImage bool
|
||||||
|
// RePullImage is a flag indicating if the agent should pull the image if it is already present on the node.
|
||||||
|
//
|
||||||
|
// Used only for EE
|
||||||
|
RePullImage bool
|
||||||
|
// RetryDeploy is a flag indicating if the agent should retry to deploy the stack if it fails.
|
||||||
|
//
|
||||||
|
// Used only for EE
|
||||||
|
RetryDeploy bool
|
||||||
|
// EdgeUpdateID is the ID of the edge update related to this stack.
|
||||||
|
//
|
||||||
|
// Used only for EE
|
||||||
|
EdgeUpdateID int
|
||||||
|
}
|
||||||
|
|
||||||
|
// RegistryCredentials holds the credentials for a Docker registry.
|
||||||
|
RegistryCredentials struct {
|
||||||
|
ServerURL string
|
||||||
|
Username string
|
||||||
|
Secret string
|
||||||
|
}
|
||||||
|
)
|
|
@ -10,19 +10,12 @@ import (
|
||||||
"github.com/portainer/libhttp/request"
|
"github.com/portainer/libhttp/request"
|
||||||
"github.com/portainer/libhttp/response"
|
"github.com/portainer/libhttp/response"
|
||||||
portainer "github.com/portainer/portainer/api"
|
portainer "github.com/portainer/portainer/api"
|
||||||
|
"github.com/portainer/portainer/api/edge"
|
||||||
"github.com/portainer/portainer/api/http/middlewares"
|
"github.com/portainer/portainer/api/http/middlewares"
|
||||||
"github.com/portainer/portainer/api/internal/endpointutils"
|
"github.com/portainer/portainer/api/internal/endpointutils"
|
||||||
"github.com/portainer/portainer/api/kubernetes"
|
"github.com/portainer/portainer/api/kubernetes"
|
||||||
)
|
)
|
||||||
|
|
||||||
type configResponse struct {
|
|
||||||
StackFileContent string
|
|
||||||
DotEnvFileContent string
|
|
||||||
Name string
|
|
||||||
// Namespace to use for Kubernetes manifests, leave empty to use the namespaces defined in the manifest
|
|
||||||
Namespace string
|
|
||||||
}
|
|
||||||
|
|
||||||
// @summary Inspect an Edge Stack for an Environment(Endpoint)
|
// @summary Inspect an Edge Stack for an Environment(Endpoint)
|
||||||
// @description **Access policy**: public
|
// @description **Access policy**: public
|
||||||
// @tags edge, endpoints, edge_stacks
|
// @tags edge, endpoints, edge_stacks
|
||||||
|
@ -30,7 +23,7 @@ type configResponse struct {
|
||||||
// @produce json
|
// @produce json
|
||||||
// @param id path int true "environment(endpoint) Id"
|
// @param id path int true "environment(endpoint) Id"
|
||||||
// @param stackId path int true "EdgeStack Id"
|
// @param stackId path int true "EdgeStack Id"
|
||||||
// @success 200 {object} configResponse
|
// @success 200 {object} edge.StackPayload
|
||||||
// @failure 500
|
// @failure 500
|
||||||
// @failure 400
|
// @failure 400
|
||||||
// @failure 404
|
// @failure 404
|
||||||
|
@ -92,9 +85,9 @@ func (handler *Handler) endpointEdgeStackInspect(w http.ResponseWriter, r *http.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return response.JSON(w, configResponse{
|
return response.JSON(w, edge.StackPayload{
|
||||||
StackFileContent: string(stackFileContent),
|
|
||||||
DotEnvFileContent: string(dotEnvFileContent),
|
DotEnvFileContent: string(dotEnvFileContent),
|
||||||
|
FileContent: string(stackFileContent),
|
||||||
Name: edgeStack.Name,
|
Name: edgeStack.Name,
|
||||||
Namespace: namespace,
|
Namespace: namespace,
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue