tcauthevents

package
Version: v19.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2019 License: MPL-2.0 Imports: 2 Imported by: 0

Documentation

Overview

The auth service is responsible for storing credentials, managing assignment of scopes, and validation of request signatures from other services.

These exchanges provides notifications when credentials or roles are updated. This is mostly so that multiple instances of the auth service can purge their caches and synchronize state. But you are of course welcome to use these for other purposes, monitoring changes for example.

See:

How to use this package

This package is designed to sit on top of http://godoc.org/github.com/taskcluster/pulse-go/pulse. Please read the pulse package overview to get an understanding of how the pulse client is implemented in go.

This package provides two things in addition to the basic pulse package: structured types for unmarshaling pulse message bodies into, and custom Binding interfaces, for defining the fixed strings for task cluster exchange names, and routing keys as structured types.

For example, when specifying a binding, rather than using:

pulse.Bind(
	"*.*.*.*.*.*.gaia.#",
	"exchange/taskcluster-queue/v1/task-defined",
)

You can rather use:

queueevents.TaskDefined{WorkerType: "gaia"}

In addition, this means that you will also get objects in your callback method like *queueevents.TaskDefinedMessage rather than just interface{}.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClientCreated

type ClientCreated struct {
	Reserved string `mwords:"#"`
}

Message that a new client has been created.

See #clientCreated

func (ClientCreated) ExchangeName

func (binding ClientCreated) ExchangeName() string

func (ClientCreated) NewPayloadObject

func (binding ClientCreated) NewPayloadObject() interface{}

func (ClientCreated) RoutingKey

func (binding ClientCreated) RoutingKey() string

type ClientDeleted

type ClientDeleted struct {
	Reserved string `mwords:"#"`
}

Message that a new client has been deleted.

See #clientDeleted

func (ClientDeleted) ExchangeName

func (binding ClientDeleted) ExchangeName() string

func (ClientDeleted) NewPayloadObject

func (binding ClientDeleted) NewPayloadObject() interface{}

func (ClientDeleted) RoutingKey

func (binding ClientDeleted) RoutingKey() string

type ClientMessage

type ClientMessage struct {

	// `clientId` of the client that was changed
	//
	// Syntax:     ^[A-Za-z0-9!@/:.+|_-]+$
	ClientID string `json:"clientId"`

	// Message version number
	//
	// Possible values:
	//   * 1
	Version float64 `json:"version"`
}

Message reporting that a client has changed

type ClientUpdated

type ClientUpdated struct {
	Reserved string `mwords:"#"`
}

Message that a new client has been updated.

See #clientUpdated

func (ClientUpdated) ExchangeName

func (binding ClientUpdated) ExchangeName() string

func (ClientUpdated) NewPayloadObject

func (binding ClientUpdated) NewPayloadObject() interface{}

func (ClientUpdated) RoutingKey

func (binding ClientUpdated) RoutingKey() string

type RoleCreated

type RoleCreated struct {
	Reserved string `mwords:"#"`
}

Message that a new role has been created.

See #roleCreated

func (RoleCreated) ExchangeName

func (binding RoleCreated) ExchangeName() string

func (RoleCreated) NewPayloadObject

func (binding RoleCreated) NewPayloadObject() interface{}

func (RoleCreated) RoutingKey

func (binding RoleCreated) RoutingKey() string

type RoleDeleted

type RoleDeleted struct {
	Reserved string `mwords:"#"`
}

Message that a new role has been deleted.

See #roleDeleted

func (RoleDeleted) ExchangeName

func (binding RoleDeleted) ExchangeName() string

func (RoleDeleted) NewPayloadObject

func (binding RoleDeleted) NewPayloadObject() interface{}

func (RoleDeleted) RoutingKey

func (binding RoleDeleted) RoutingKey() string

type RoleMessage

type RoleMessage struct {

	// `roleId` of the role that was changed
	//
	// Syntax:     ^[\x20-\x7e]+$
	RoleID string `json:"roleId"`

	// Message version number
	//
	// Possible values:
	//   * 1
	Version float64 `json:"version"`
}

Message reporting that a role has changed

type RoleUpdated

type RoleUpdated struct {
	Reserved string `mwords:"#"`
}

Message that a new role has been updated.

See #roleUpdated

func (RoleUpdated) ExchangeName

func (binding RoleUpdated) ExchangeName() string

func (RoleUpdated) NewPayloadObject

func (binding RoleUpdated) NewPayloadObject() interface{}

func (RoleUpdated) RoutingKey

func (binding RoleUpdated) RoutingKey() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL