Documentation
¶
Index ¶
- func OIDCAccessTokenAuthorizer(cluster *arvados.Cluster, getdb func(context.Context) (*sqlx.DB, error)) *oidcTokenAuthorizer
- type Conn
- func (conn *Conn) AuthorizedKeyCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.AuthorizedKey, error)
- func (conn *Conn) AuthorizedKeyUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.AuthorizedKey, error)
- func (conn *Conn) CollectionCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.Collection, error)
- func (conn *Conn) CollectionGet(ctx context.Context, opts arvados.GetOptions) (arvados.Collection, error)
- func (conn *Conn) CollectionList(ctx context.Context, opts arvados.ListOptions) (arvados.CollectionList, error)
- func (conn *Conn) CollectionUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Collection, error)
- func (conn *Conn) ContainerGatewayTunnel(ctx context.Context, opts arvados.ContainerGatewayTunnelOptions) (resp arvados.ConnectionResponse, err error)
- func (conn *Conn) ContainerHTTPProxy(ctx context.Context, opts arvados.ContainerHTTPProxyOptions) (http.Handler, error)
- func (conn *Conn) ContainerRequestContainerStatus(ctx context.Context, opts arvados.GetOptions) (arvados.ContainerStatus, error)
- func (conn *Conn) ContainerRequestCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.ContainerRequest, error)
- func (conn *Conn) ContainerRequestDelete(ctx context.Context, opts arvados.DeleteOptions) (arvados.ContainerRequest, error)
- func (conn *Conn) ContainerRequestGet(ctx context.Context, opts arvados.GetOptions) (arvados.ContainerRequest, error)
- func (conn *Conn) ContainerRequestList(ctx context.Context, opts arvados.ListOptions) (arvados.ContainerRequestList, error)
- func (conn *Conn) ContainerRequestLog(ctx context.Context, opts arvados.ContainerLogOptions) (http.Handler, error)
- func (conn *Conn) ContainerRequestUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.ContainerRequest, error)
- func (conn *Conn) ContainerSSH(ctx context.Context, opts arvados.ContainerSSHOptions) (sshconn arvados.ConnectionResponse, err error)
- func (conn *Conn) ContainerUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Container, error)
- func (conn *Conn) CreateAPIClientAuthorization(ctx context.Context, rootToken string, authinfo rpc.UserSessionAuthInfo) (resp arvados.APIClientAuthorization, err error)
- func (conn *Conn) GroupContents(ctx context.Context, options arvados.GroupContentsOptions) (arvados.ObjectList, error)
- func (conn *Conn) GroupCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.Group, error)
- func (conn *Conn) GroupDelete(ctx context.Context, opts arvados.DeleteOptions) (arvados.Group, error)
- func (conn *Conn) GroupGet(ctx context.Context, opts arvados.GetOptions) (arvados.Group, error)
- func (conn *Conn) GroupList(ctx context.Context, opts arvados.ListOptions) (arvados.GroupList, error)
- func (conn *Conn) GroupUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Group, error)
- func (conn *Conn) LastVocabularyError() error
- func (conn *Conn) LinkCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.Link, error)
- func (conn *Conn) LinkUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Link, error)
- func (conn *Conn) Login(ctx context.Context, opts arvados.LoginOptions) (arvados.LoginResponse, error)
- func (conn *Conn) Logout(ctx context.Context, opts arvados.LogoutOptions) (arvados.LogoutResponse, error)
- func (conn *Conn) UserAuthenticate(ctx context.Context, opts arvados.UserAuthenticateOptions) (arvados.APIClientAuthorization, error)
- func (conn *Conn) VocabularyGet(ctx context.Context) (arvados.Vocabulary, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Conn ¶
type Conn struct {
// contains filtered or unexported fields
}
func NewConn ¶
func (*Conn) AuthorizedKeyCreate ¶
func (conn *Conn) AuthorizedKeyCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.AuthorizedKey, error)
AuthorizedKeyCreate checks that the provided public key is valid, then proxies to railsproxy.
func (*Conn) AuthorizedKeyUpdate ¶
func (conn *Conn) AuthorizedKeyUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.AuthorizedKey, error)
AuthorizedKeyUpdate checks that the provided public key is valid, then proxies to railsproxy.
func (*Conn) CollectionCreate ¶
func (conn *Conn) CollectionCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.Collection, error)
CollectionCreate defers to railsProxy for everything except blob signatures and vocabulary checking.
func (*Conn) CollectionGet ¶
func (conn *Conn) CollectionGet(ctx context.Context, opts arvados.GetOptions) (arvados.Collection, error)
CollectionGet defers to railsProxy for everything except blob signatures.
func (*Conn) CollectionList ¶
func (conn *Conn) CollectionList(ctx context.Context, opts arvados.ListOptions) (arvados.CollectionList, error)
CollectionList defers to railsProxy for everything except blob signatures.
func (*Conn) CollectionUpdate ¶
func (conn *Conn) CollectionUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Collection, error)
CollectionUpdate defers to railsProxy for everything except blob signatures and vocabulary checking.
func (*Conn) ContainerGatewayTunnel ¶
func (conn *Conn) ContainerGatewayTunnel(ctx context.Context, opts arvados.ContainerGatewayTunnelOptions) (resp arvados.ConnectionResponse, err error)
ContainerGatewayTunnel sets up a tunnel enabling us (controller) to connect to the caller's (crunch-run's) gateway server.
func (*Conn) ContainerHTTPProxy ¶
func (conn *Conn) ContainerHTTPProxy(ctx context.Context, opts arvados.ContainerHTTPProxyOptions) (http.Handler, error)
ContainerHTTPProxy proxies an incoming request through to the specified port on a running container, via crunch-run's container gateway.
func (*Conn) ContainerRequestContainerStatus ¶
func (conn *Conn) ContainerRequestContainerStatus(ctx context.Context, opts arvados.GetOptions) (arvados.ContainerStatus, error)
func (*Conn) ContainerRequestCreate ¶
func (conn *Conn) ContainerRequestCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.ContainerRequest, error)
ContainerRequestCreate defers to railsProxy for everything except vocabulary checking.
func (*Conn) ContainerRequestDelete ¶
func (conn *Conn) ContainerRequestDelete(ctx context.Context, opts arvados.DeleteOptions) (arvados.ContainerRequest, error)
func (*Conn) ContainerRequestGet ¶
func (conn *Conn) ContainerRequestGet(ctx context.Context, opts arvados.GetOptions) (arvados.ContainerRequest, error)
func (*Conn) ContainerRequestList ¶
func (conn *Conn) ContainerRequestList(ctx context.Context, opts arvados.ListOptions) (arvados.ContainerRequestList, error)
func (*Conn) ContainerRequestLog ¶
func (conn *Conn) ContainerRequestLog(ctx context.Context, opts arvados.ContainerLogOptions) (http.Handler, error)
ContainerRequestLog returns a WebDAV handler that reads logs from the indicated container request. It works by proxying the incoming HTTP request to
the container gateway, if there is an associated container that is running
a different controller process, if there is a running container whose gateway is accessible through a tunnel to a different controller process
keep-web, if saved logs exist and there is no gateway (or the associated container is finished)
an empty-collection stub, if there is no gateway and no saved log
For an incoming request
GET /arvados/v1/container_requests/{cr_uuid}/log/{c_uuid}{/c_log_path}
The upstream request may be to {c_uuid}'s container gateway
GET /arvados/v1/container_requests/{cr_uuid}/log/{c_uuid}{/c_log_path} X-Webdav-Prefix: /arvados/v1/container_requests/{cr_uuid}/log/{c_uuid} X-Webdav-Source: /log
...or the upstream request may be to keep-web (where {cr_log_uuid} is the container request log collection UUID)
GET /arvados/v1/container_requests/{cr_uuid}/log/{c_uuid}{/c_log_path} Host: {cr_log_uuid}.internal X-Webdav-Prefix: /arvados/v1/container_requests/{cr_uuid}/log X-Arvados-Container-Uuid: {c_uuid}
...or the request may be handled locally using an empty-collection stub.
func (*Conn) ContainerRequestUpdate ¶
func (conn *Conn) ContainerRequestUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.ContainerRequest, error)
ContainerRequestUpdate defers to railsProxy for everything except vocabulary checking.
func (*Conn) ContainerSSH ¶
func (conn *Conn) ContainerSSH(ctx context.Context, opts arvados.ContainerSSHOptions) (sshconn arvados.ConnectionResponse, err error)
ContainerSSH returns a connection to the SSH server in the appropriate crunch-run process on the worker node where the specified container is running.
If the returned error is nil, the caller is responsible for closing sshconn.Conn.
func (*Conn) ContainerUpdate ¶
func (conn *Conn) ContainerUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Container, error)
ContainerUpdate defers to railsProxy and then notifies the container priority updater thread.
func (*Conn) CreateAPIClientAuthorization ¶
func (conn *Conn) CreateAPIClientAuthorization(ctx context.Context, rootToken string, authinfo rpc.UserSessionAuthInfo) (resp arvados.APIClientAuthorization, err error)
func (*Conn) GroupContents ¶
func (conn *Conn) GroupContents(ctx context.Context, options arvados.GroupContentsOptions) (arvados.ObjectList, error)
func (*Conn) GroupCreate ¶
func (conn *Conn) GroupCreate(ctx context.Context, opts arvados.CreateOptions) (arvados.Group, error)
GroupCreate defers to railsProxy for everything except vocabulary checking.
func (*Conn) GroupDelete ¶
func (*Conn) GroupGet ¶
func (*Conn) GroupList ¶
func (*Conn) GroupUpdate ¶
func (conn *Conn) GroupUpdate(ctx context.Context, opts arvados.UpdateOptions) (arvados.Group, error)
GroupUpdate defers to railsProxy for everything except vocabulary checking.
func (*Conn) LastVocabularyError ¶
LastVocabularyError returns the last error encountered while loading the vocabulary file. Implements health.Func
func (*Conn) LinkCreate ¶
LinkCreate defers to railsProxy for everything except vocabulary checking.
func (*Conn) LinkUpdate ¶
LinkUpdate defers to railsProxy for everything except vocabulary checking.
func (*Conn) Login ¶
func (conn *Conn) Login(ctx context.Context, opts arvados.LoginOptions) (arvados.LoginResponse, error)
Login handles the login of conn giving to the appropriate loginController
func (*Conn) Logout ¶
func (conn *Conn) Logout(ctx context.Context, opts arvados.LogoutOptions) (arvados.LogoutResponse, error)
Logout handles the logout of conn giving to the appropriate loginController
func (*Conn) UserAuthenticate ¶
func (conn *Conn) UserAuthenticate(ctx context.Context, opts arvados.UserAuthenticateOptions) (arvados.APIClientAuthorization, error)
UserAuthenticate handles the User Authentication of conn giving to the appropriate loginController