provisionerd
packageThis package is not in the latest version of its module.
Details
Validgo.mod file
The Go module system was introduced in Go 1.11 and is the official dependency management solution for Go.
Redistributable license
Redistributable licenses place minimal restrictions on how software can be used, modified, and redistributed.
Tagged version
Modules with tagged versions give importers more predictable builds.
Stable version
When a project reaches major version v1 it is considered stable.
- Learn more about best practices
Repository
Links
Documentation¶
Index¶
- func AuthenticateProvisioner(conn io.ReadWriter, token, jobID string) error
- func DialTLS(ctx context.Context, cert, addr string) (*tls.Conn, error)
- func EphemeralEcho(ctx context.Context, logger slog.Logger, ...) error
- func GenCert() (*ecdsa.PrivateKey, []byte, error)
- func NewRemoteConnector(ctx context.Context, logger slog.Logger, exec Executor) (agpl.Connector, error)
- type Executor
Constants¶
This section is empty.
Variables¶
This section is empty.
Functions¶
funcAuthenticateProvisioner¶
func AuthenticateProvisioner(connio.ReadWriter, token, jobIDstring)error
AuthenticateProvisioner performs the provisioner's side of the authenticationprotocol.
funcDialTLS¶
DialTLS establishes a TLS connection to the given addr using the given certas the root CA
funcEphemeralEcho¶
func EphemeralEcho(ctxcontext.Context,loggerslog.Logger,cacheDir, jobID, token, daemonCert, daemonAddressstring,)error
EphemeralEcho starts an Echo provisioner that connects to provisioner daemon,handles one job, then exits.
Types¶
typeExecutor¶
type Executor interface {// Execute a provisioner that connects back to the remoteConnector. errCh// allows signaling of errors asynchronously and is closed on completion// with no error.Execute(ctxcontext.Context,provisionerTypedatabase.ProvisionerType,jobID, token, daemonCert, daemonAddressstring) (errCh <-chanerror)}
Executor is responsible for executing the remote provisioners.
TODO: this interface is where we will run Kubernetes Jobs in a futureversion; right now, only the unit tests implement this interface.