Repository: hashicorp/nomad
File: nomad/config.go (Go)

Code before:
	LicenseConfig *LicenseConfig

	// SearchConfig provides knobs for Search API.
	SearchConfig *structs.SearchConfig

	// RaftBoltNoFreelistSync configures whether freelist syncing is enabled.
	RaftBoltNoFreelistSync bool

	// AgentShutdown is used to call agent.Shutdown from the context of a Server
	// It is used primarily for licensing
	AgentShutdown func() error

	// DeploymentQueryRateLimit is in queries per second and is used by the
	// DeploymentWatcher to throttle the amount of simultaneously deployments
	DeploymentQueryRateLimit float64

	// JobDefaultPriority is the default Job priority if not specified.
	JobDefaultPriority int

	// JobMaxPriority is an upper bound on the Job priority.
	JobMaxPriority int

	// JobTrackedVersions is the number of historic Job versions that are kept.
	JobTrackedVersions int

	// JobMaxCount is the maximum number of task group instances for a single Job.
	JobMaxCount int

	Reporting *config.ReportingConfig

	// OIDCIssuer is the URL for the OIDC Issuer field in Workload Identity JWTs.
	// If this is not configured the /.well-known/openid-configuration endpoint
	// will not be available.
	OIDCIssuer string

	// KEKProviders are used to wrap the Nomad keyring
	KEKProviderConfigs []*structs.KEKProviderConfig

	// StartTimeout is provided to the server so that it can time out setup and
	// startup process that are expected to complete before the server is
	// considered healthy. Without this, the server can hang indefinitely
	// waiting for these.
	StartTimeout time.Duration

	// NodeIntroductionConfig is the configuration for the node introduction
	// feature. This feature allows servers to validate node registration
	// requests and perform the appropriate enforcement actions.
	NodeIntroductionConfig *structs.NodeIntroductionConfig

	// LogFile is used by MonitorExport to stream a server's log file
	LogFile string `hcl:"log_file"`

Review comment (suggestion):
Just for consistency with internal language:

```suggestion
	// JobMaxCount is the maximum total task group counts for a single Job.
```

Code after:
	LicenseConfig *LicenseConfig

	// SearchConfig provides knobs for Search API.
	SearchConfig *structs.SearchConfig

	// RaftBoltNoFreelistSync configures whether freelist syncing is enabled.
	RaftBoltNoFreelistSync bool

	// AgentShutdown is used to call agent.Shutdown from the context of a Server
	// It is used primarily for licensing
	AgentShutdown func() error

	// DeploymentQueryRateLimit is in queries per second and is used by the
	// DeploymentWatcher to throttle the amount of simultaneously deployments
	DeploymentQueryRateLimit float64

	// JobDefaultPriority is the default Job priority if not specified.
	JobDefaultPriority int

	// JobMaxPriority is an upper bound on the Job priority.
	JobMaxPriority int

	// JobTrackedVersions is the number of historic Job versions that are kept.
	JobTrackedVersions int

	// JobMaxCount is the maximum total task group counts for a single Job.
	JobMaxCount int

	Reporting *config.ReportingConfig

	// OIDCIssuer is the URL for the OIDC Issuer field in Workload Identity JWTs.
	// If this is not configured the /.well-known/openid-configuration endpoint
	// will not be available.
	OIDCIssuer string

	// KEKProviders are used to wrap the Nomad keyring
	KEKProviderConfigs []*structs.KEKProviderConfig

	// StartTimeout is provided to the server so that it can time out setup and
	// startup process that are expected to complete before the server is
	// considered healthy. Without this, the server can hang indefinitely
	// waiting for these.
	StartTimeout time.Duration

	// NodeIntroductionConfig is the configuration for the node introduction
	// feature. This feature allows servers to validate node registration
	// requests and perform the appropriate enforcement actions.
	NodeIntroductionConfig *structs.NodeIntroductionConfig

	// LogFile is used by MonitorExport to stream a server's log file
	LogFile string `hcl:"log_file"`