Documentation ¶
Index ¶
- Constants
- Variables
- func DeprecateVersions(r *mux.Router, versions ...string)
- func ErrorResponse(w http.ResponseWriter, r *http.Request, apiError error)
- func ImplementsServer(router *mux.Router) error
- func JSONResponse(w http.ResponseWriter, r *http.Request, result interface{})
- func MakeAPINotFound(path string) *fluxerr.Error
- func MakeURL(endpoint string, router *mux.Router, routeName string, urlParams ...string) (*url.URL, error)
- func NewAPIRouter() *mux.Router
- func NewUpstreamRouter() *mux.Router
- func UpstreamRoutes(r *mux.Router)
- func WriteError(w http.ResponseWriter, r *http.Request, code int, err error)
- type SortAccept
Constants ¶
const ( // Formerly Upstream methods, now (in v11) included in server API Ping = "Ping" Version = "Version" Notify = "Notify" ListServices = "ListServices" ListServicesWithOptions = "ListServicesWithOptions" ListImages = "ListImages" ListImagesWithOptions = "ListImagesWithOptions" UpdateManifests = "UpdateManifests" JobStatus = "JobStatus" SyncStatus = "SyncStatus" Export = "Export" GitRepoConfig = "GitRepoConfig" UpdateImages = "UpdateImages" UpdatePolicies = "UpdatePolicies" GetPublicSSHKey = "GetPublicSSHKey" RegeneratePublicSSHKey = "RegeneratePublicSSHKey" )
const ( RegisterDaemonV6 = "RegisterDaemonV6" RegisterDaemonV7 = "RegisterDaemonV7" RegisterDaemonV8 = "RegisterDaemonV8" RegisterDaemonV9 = "RegisterDaemonV9" RegisterDaemonV10 = "RegisterDaemonV10" RegisterDaemonV11 = "RegisterDaemonV11" )
The RegisterDaemonX routes should move to weaveworks/flux-adapter once we remove `--connect`, since they are pertinent only to making an RPC relay connection.
const (
LogEvent = "LogEvent"
)
This is part of the API -- but it's the outward-facing (or service provider) API, rather than the flux API.
Variables ¶
var ErrorDeprecated = &fluxerr.Error{ Type: fluxerr.Missing, Help: `The API endpoint requested appears to have been deprecated. This indicates your client (fluxctl) needs to be updated: please see https://github.com/weaveworks/flux/releases If you still have this problem after upgrading, please file an issue at https://github.com/weaveworks/flux/issues mentioning what you were attempting to do. `, Err: errors.New("API endpoint deprecated"), }
fluxerr.User, Help: `The request failed authentication This most likely means you have a missing or incorrect token. Please make sure you supply a service token, either by setting the environment variable FLUX_SERVICE_TOKEN, or using the argument --token with fluxctl. `, Err: errors.New("request failed authentication"), }Type:
Functions ¶
func DeprecateVersions ¶
func ErrorResponse ¶
func ErrorResponse(w http.ResponseWriter, r *http.Request, apiError error)
func ImplementsServer ¶
ImplementsServer verifies that a given `*mux.Router` has handlers for all routes specified in `NewAPIRouter()`.
We can't easily check whether a router implements the `api.Server` interface, as would be desired, so we rely on the knowledge that `*client.Client` implements `api.Server` while also depending on route name strings defined in this package.
Returns an error if router doesn't fully implement `NewAPIRouter()`, nil otherwise.
func JSONResponse ¶
func JSONResponse(w http.ResponseWriter, r *http.Request, result interface{})
func MakeAPINotFound ¶
func NewAPIRouter ¶
func NewUpstreamRouter ¶
func UpstreamRoutes ¶
These (routes, and constructor following) should move to weaveworks/flux-adapter when `--connect` is removed from fluxd.
func WriteError ¶
Types ¶
type SortAccept ¶
type SortAccept struct {
// contains filtered or unexported fields
}
func (SortAccept) Len ¶
func (s SortAccept) Len() int
func (SortAccept) Less ¶
func (s SortAccept) Less(i, j int) bool
We want to sort by descending order of suitability: higher quality to lower quality, and preferred to less preferred.
func (SortAccept) Swap ¶
func (s SortAccept) Swap(i, j int)