Crate nomad_api_types

Source

Structs§

  • ACLAuthMethod is used to capture the properties of an authentication method used for single sing-on.
  • ACLAuthMethodConfig is used to store configuration of an auth method.
  • ACLAuthMethodListStub is the stub object returned when performing a listing of ACL auth-methods. It is intentionally minimal due to the unauthenticated nature of the list endpoint.
  • ACLBindingRule contains a direct relation to an ACLAuthMethod and represents a rule to apply when logging in via the named AuthMethod. This allows the transformation of OIDC provider claims, to Nomad based ACL concepts such as ACL Roles and Policies.
  • ACLBindingRuleListStub is the stub object returned when performing a listing of ACL binding rules.
  • ACLLoginRequest is the request object to begin auth with an external bearer token provider.
  • ACLPolicy is used to represent an ACL policy
  • ACLPolicyListStub is used to for listing ACL policies
  • ACLRole is an abstraction for the ACL system which allows the grouping of ACL policies into a single object. ACL tokens can be created and linked to a role; the token then inherits all the permissions granted by the policies.
  • ACLRoleListStub is the stub object returned when performing a listing of ACL roles. While it might not currently be different to the full response object, it allows us to future-proof the RPC in the event the ACLRole object grows over time.
  • ACLRolePolicyLink is used to link a policy to an ACL role. We use a struct rather than a list of strings as in the future we will want to add IDs to policies and then link via these.
  • ACLToken represents a client token which is used to Authenticate
  • This struct was generated based on the Go types of the official Nomad API.
  • ACLTokenRoleLink is used to link an ACL token to an ACL role. The ACL token can therefore inherit all the ACL policy permissions that the ACL role contains.
  • ACLOIDCAuthURLRequest is the request to make when starting the OIDC authentication login flow.
  • ACLOIDCAuthURLResponse is the response when starting the OIDC authentication login flow.
  • ACLOIDCCompleteAuthRequest is the request object to begin completing the OIDC auth cycle after receiving the callback from the OIDC provider.
  • This struct was generated based on the Go types of the official Nomad API.
  • Affinity is used to serialize task group affinities
  • AllocCheckStatus contains the current status of a nomad service discovery check.
  • AllocDeploymentStatus captures the status of the allocation as part of the deployment. This can include things like if the allocation has been marked as healthy.
  • AllocFileInfo holds information about a file inside the AllocDir
  • AllocNetworkStatus captures the status of an allocation’s network during runtime. Depending on the network mode, an allocation’s address may need to be known to other systems in Nomad such as service registration.
  • AllocResourceUsage holds the aggregated task resource usage of the allocation.
  • AllocStopResponse is the response to an AllocStopRequest
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • Allocation is used for serialization of allocations.
  • AllocationListStub is used to return a subset of an allocation during list operations.
  • AllocationMetric is used to deserialize allocation metrics.
  • This struct was generated based on the Go types of the official Nomad API.
  • Attribute is used to describe the value of an attribute, optionally specifying units
  • AutopilotConfiguration is used for querying/setting the Autopilot configuration. Autopilot helps manage operator tasks related to Nomad servers like removing failed servers from the Raft quorum.
  • AutopilotUpgrade holds the current upgrade status. (Enterprise only)
  • AutopilotZone holds the list of servers in a redundancy zone. (Enterprise only)
  • AutopilotZoneUpgradeVersions holds the list of servers in a redundancy zone for a specific version. (Enterprise only)
  • This struct was generated based on the Go types of the official Nomad API.
  • CheckRestart describes if and when a task should be restarted based on failing health checks.
  • This struct was generated based on the Go types of the official Nomad API.
  • Constraint is used to serialize a job placement constraint.
  • Consul represents configuration related to consul.
  • ConsulConnect represents a Consul Connect jobspec block.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • ConsulGateway is used to configure one of the Consul Connect Gateway types.
  • This struct was generated based on the Go types of the official Nomad API.
  • ConsulGatewayProxy is used to tune parameters of the proxy instance acting as one of the forms of Connect gateways that Consul supports.
  • ConsulGatewayTLSConfig is used to configure TLS for a gateway. Both ConsulIngressConfigEntry and ConsulIngressService use this struct. For more details, consult the Consul documentation: https://developer.hashicorp.com/consul/docs/connect/config-entries/ingress-gateway#listeners-services-tls
  • ConsulGatewayTLSSDSConfig is used to configure the gateway’s TLS listener to load certificates from an external Secret Discovery Service (SDS)
  • ConsulHTTPHeaderModifiers is a set of rules for HTTP header modification that should be performed by proxies as the request passes through them. It can operate on either request or response headers depending on the context in which it is used.
  • ConsulIngressConfigEntry represents the Consul Configuration Entry type for an Ingress Gateway.
  • ConsulIngressListener is used to configure a listener on a Consul Ingress Gateway.
  • ConsulIngressService is used to configure a service fronted by the ingress gateway. For more details, consult the Consul documentation: https://developer.hashicorp.com/consul/docs/connect/config-entries/ingress-gateway
  • This struct was generated based on the Go types of the official Nomad API.
  • ConsulMeshConfigEntry is a stub used to represent that the gateway service type should be for a Mesh Gateway. Unlike Ingress and Terminating, there is no actual Consul Config Entry type for mesh-gateway, at least for now. We still create a type for future proofing, instead just using a bool for example.
  • ConsulMeshGateway is used to configure mesh gateway usage when connecting to a connect upstream in another datacenter.
  • ConsulProxy represents a Consul Connect sidecar proxy jobspec block.
  • ConsulSidecarService represents a Consul Connect SidecarService jobspec block.
  • ConsulTerminatingConfigEntry represents the Consul Configuration Entry type for a Terminating Gateway.
  • ConsulTransparentProxy is used to configure the Envoy sidecar for “transparent proxying”, which creates IP tables rules inside the network namespace to ensure traffic flows thru the Envoy proxy
  • ConsulUpstream represents a Consul Connect upstream jobspec block.
  • CpuStats holds cpu usage related stats
  • CSIControllerInfo is the fingerprinted data from a CSI Plugin that is specific to the Controller API.
  • CSIInfo is the current state of a single CSI Plugin. This is updated regularly as plugin health changes on the node.
  • CSIMountOptions contain optional additional configuration that can be used when specifying that a Volume should be used with VolumeAccessTypeMount.
  • CSINodeInfo is the fingerprinted data from a CSI Plugin that is specific to the Node API.
  • CSIPlugin is used for serialization, see also nomad/structs/csi.go
  • This struct was generated based on the Go types of the official Nomad API.
  • CSISnapshot is the storage provider’s view of a volume snapshot
  • This struct was generated based on the Go types of the official Nomad API.
  • CSISnapshotListRequest is a request to a controller plugin to list all the snapshot known to the storage provider. This request is paginated by the plugin and accepts the QueryOptions.PerPage and QueryOptions.NextToken fields
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • CSIVolume is used for serialization, see also nomad/structs/csi.go
  • CSIVolumeCapability is a requested attachment and access mode for a volume
  • This struct was generated based on the Go types of the official Nomad API.
  • CSIVolumeExternalStub is the storage provider’s view of a volume, as returned from the controller plugin; all IDs are for external resources
  • This struct was generated based on the Go types of the official Nomad API.
  • CSIVolumeListStub omits allocations. See also nomad/structs/csi.go
  • Deployment is used to serialize an deployment.
  • DeploymentState tracks the state of a deployment for a given task group.
  • DeploymentUpdateResponse is used to respond to a deployment change. The response will include the modify index of the deployment as well as details of any triggered evaluation.
  • DeregisterOptions is used to pass through job deregistration parameters
  • DesiredTransition is used to mark an allocation as having a desired state transition. This information can be used by the scheduler to make the correct decision.
  • This struct was generated based on the Go types of the official Nomad API.
  • DeviceGroupStats contains statistics for each device of a particular device group, identified by the vendor, type and name of the device.
  • DeviceStats is the statistics for an individual device
  • Disconnect strategy defines how both clients and server should behave in case of disconnection between them.
  • DispatchPayloadConfig configures how a task gets its input from a job dispatch
  • This struct was generated based on the Go types of the official Nomad API.
  • DrainMetadata contains information about the most recent drain operation for a given Node.
  • DrainOptions is used to pass through node drain parameters
  • DrainSpec describes a Node’s drain behavior.
  • DrainStrategy describes a Node’s drain behavior.
  • DriverInfo is used to deserialize a DriverInfo entry
  • EphemeralDisk is an ephemeral disk object
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • EvalOptions is used to encapsulate options when forcing a job evaluation
  • Evaluation is used to serialize an evaluation.
  • EvaluationStub is used to serialize parts of an evaluation returned in the RelatedEvals field of an Evaluation.
  • Event holds information related to an event that occurred in Nomad. The Payload is a hydrated object related to the Topic
  • Events is a set of events for a corresponding index. Events returned for the index depend on which topics are subscribed to when a request is made.
  • This struct was generated based on the Go types of the official Nomad API.
  • FuzzyMatch is used to describe the ID of an object which may be a machine readable UUID or a human readable Name. If the object is a component of a Job, the Scope is a list of IDs starting from Namespace down to the parent object of ID.
  • FuzzySearchResponse is used to return fuzzy matches and information about whether the match list is truncated specific to each type of searchable Context.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • HostNetworkInfo is used to return metadata about a given HostNetwork
  • HostStats represents resource usage stats of the host running a Nomad client
  • HostVolumeInfo is used to return metadata about a given HostVolume.
  • Job is used to serialize a job.
  • JobACL represents an ACL policy’s attachment to a job, group, or task.
  • JobChildrenSummary contains the summary of children job status
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • JobListStub is used to return a subset of information about jobs during list operations.
  • This struct was generated based on the Go types of the official Nomad API.
  • JobRegisterResponse is used to respond to a job registration
  • JobScaleStatusResponse is used to return information about job scaling status
  • JobStabilityResponse is the response when marking a job as stable.
  • JobSubmission is used to hold information about the original content of a job specification being submitted to Nomad.
  • JobSummary summarizes the state of the allocations of a job
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • JobValidateResponse is the response from validate request
  • This struct was generated based on the Go types of the official Nomad API.
  • JobsParseRequest is used for arguments of the /v1/jobs/parse endpoint
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • LogConfig provides configuration for log rotation
  • MemoryStats holds memory usage related stats
  • MetricsSummary holds a roll-up of metrics info for a given interval
  • MigrateStrategy describes how allocations for a task group should be migrated between nodes (eg when draining).
  • MonitorMessage contains a message and log level.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • Namespace is used to serialize a namespace.
  • NamespaceCapabilities represents a set of capabilities allowed for this namespace, to be checked at job submission time.
  • NamespaceConsulConfiguration stores configuration about permissions to Consul clusters for a namespace, for use with Nomad Enterprise.
  • NamespaceNodePoolConfiguration stores configuration about node pools for a namespace.
  • NamespaceVaultConfiguration stores configuration about permissions to Vault clusters for a namespace, for use with Nomad Enterprise.
  • NetworkResource is used to describe required network resources of a given task.
  • Node is used to deserialize a node entry.
  • This struct was generated based on the Go types of the official Nomad API.
  • NodeDevice is an instance of a particular device.
  • NodeDeviceLocality stores information about the devices hardware locality on the node.
  • NodeDeviceResource captures a set of devices sharing a common vendor/type/device_name tuple.
  • This struct was generated based on the Go types of the official Nomad API.
  • NodeDrainUpdateResponse is used to respond to a node drain update
  • NodeEligibilityUpdateResponse is used to respond to a node eligibility update
  • NodeEvent is a single unit representing a node’s state change
  • NodeListStub is a subset of information returned during node list operations.
  • This struct was generated based on the Go types of the official Nomad API.
  • NodeMetaApplyRequest contains the Node meta update.
  • NodeMetaResponse contains the merged Node metadata.
  • NodePool is used to serialize a node pool.
  • NodePoolSchedulerConfiguration is used to serialize the scheduler configuration of a node pool.
  • NodePurgeResponse is used to deserialize a Purge response.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • NodeScoreMeta is used to serialize node scoring metadata displayed in the CLI during verbose mode
  • NUMAResource contains the NUMA affinity request for scheduling purposes.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • OperatorHealthReply is a representation of the overall health of the cluster
  • ParameterizedJobConfig is used to configure the parameterized job.
  • PeriodicConfig is for serializing periodic config for a job.
  • This struct was generated based on the Go types of the official Nomad API.
  • PlanOptions is used to pass through job planning parameters
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • PreemptionConfig specifies whether preemption is enabled based on scheduler type
  • QueryMeta is used to return meta data about a query
  • QueryOptions are used to parametrize a query
  • QuotaLimit describes the resource limit in a particular region.
  • QuotaSpec specifies the allowed resource usage across regions.
  • QuotaUsage is the resource usage of a Quota
  • RaftConfiguration is returned when querying for the current Raft configuration.
  • RaftServer has information about a server in the Raft configuration.
  • Recommendation is used to serialize a recommendation.
  • RecommendationApplyResponse is used to apply a set of recommendations
  • RegisterOptions is used to pass through job registration parameters
  • RequestedDevice is used to request a device for a task.
  • RescheduleEvent is used to keep track of previous attempts at rescheduling an allocation
  • Reschedule configures how Tasks are rescheduled when they crash or fail.
  • RescheduleTracker encapsulates previous reschedule events
  • ResourceUsage holds information related to cpu and memory stats
  • Resources encapsulates the required resources of a given task or task group.
  • RestartPolicy defines how the Nomad client restarts tasks in a taskgroup when they fail
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • ScalingPolicy is the user-specified API object for an autoscaling policy
  • ScalingPolicyListStub is used to return a subset of scaling policy information for the scaling policy list
  • ScalingRequest is the payload for a generic scaling action
  • SchedulerConfiguration is the config for controlling scheduler behavior
  • SchedulerConfigurationResponse is the response object that wraps SchedulerConfiguration
  • SchedulerSetConfigurationResponse is the response object used when updating scheduler configuration
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • ServerHealth is the health (from the leader’s point of view) of a server.
  • Service represents a Nomad job-submitters view of a Consul or Nomad service.
  • ServiceCheck represents a Nomad job-submitters view of a Consul service health check.
  • ServiceRegistration is an instance of a single allocation advertising itself as a named service with a specific address. Each registration is constructed from the job specification Service block. Whether the service is registered within Nomad, and therefore generates a ServiceRegistration is controlled by the Service.Provider parameter.
  • ServiceRegistrationListStub represents all service registrations held within a single namespace.
  • ServiceRegistrationStub is the stub object describing an individual namespaced service. The object is built in a manner which would allow us to add additional fields in the future, if we wanted.
  • ServiceWeights is the jobspec block which configures how a service instance is weighted in a DNS SRV request based on the service’s health status.
  • SidecarTask represents a subset of Task fields that can be set to override the fields of the Task generated for the sidecar
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • Spread is used to serialize task group allocation spread preferences
  • SpreadTarget is used to serialize target allocation spread percentages
  • StatObject is a collection of statistics either exposed at the top level or via nested StatObjects.
  • StatValue exposes the values of a particular statistic. The value may be of type float, integer, string or boolean. Numeric types can be exposed as a single value or as a fraction.
  • StreamFrame is used to frame data of a file when streaming
  • Task is a single process in a task group.
  • TaskArtifact is used to download artifacts before running a task.
  • TaskCSIPluginConfig contains the data that is required to setup a task as a CSI plugin. This will be used by the csi_plugin_supervisor_hook to configure mounts for the plugin and initiate the connection to the plugin catalog.
  • This struct was generated based on the Go types of the official Nomad API.
  • TaskEvent is an event that effects the state of a task and contains meta-data appropriate to the events type.
  • TaskGroup is the unit of scheduling.
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • TaskGroup summarizes the state of all the allocations of a particular TaskGroup
  • Experimental - TaskHandle is based on drivers.TaskHandle and used by remote task drivers to migrate task handles between allocations.
  • This struct was generated based on the Go types of the official Nomad API.
  • TaskResourceUsage holds aggregated resource usage of all processes in a Task and the resource usage of the individual pids
  • This struct was generated based on the Go types of the official Nomad API.
  • This struct was generated based on the Go types of the official Nomad API.
  • TaskState tracks the current state of a task and events that caused state transitions.
  • This struct was generated based on the Go types of the official Nomad API.
  • TerminalSize represents the size of the terminal
  • UpdateStrategy defines a task groups update strategy.
  • Variable specifies the metadata and contents to be stored in the encrypted Nomad backend.
  • This struct was generated based on the Go types of the official Nomad API.
  • VariableMetadata specifies the metadata for a variable and is used as the list object
  • This struct was generated based on the Go types of the official Nomad API.
  • VaultAccessor is a Vault ACL token created by Nomad for a task to access Vault using the legacy authentication flow.
  • VaultWorkloadIdentityUpgradeCheck is the result of verifying if the cluster is ready to switch to workload identities for Vault.
  • This struct was generated based on the Go types of the official Nomad API.
  • VolumeMount represents the relationship between a destination path in a task and the task group volume that should be mounted there.
  • VolumeRequest is a representation of a storage volume that a TaskGroup wishes to use.
  • WaitConfig is the Min/Max duration to wait for the Consul cluster to reach a consistent state before attempting to render Templates.
  • WorkloadIdentity is the jobspec block which determines if and how a workload identity is exposed to tasks.
  • WriteMeta is used to return meta data about a write
  • WriteOptions are used to parametrize a write

Functions§