hashicorp/nomad · error

autopilot config not initialized yet

Error message

autopilot config not initialized yet

What it means

AutopilotGetConfiguration found no autopilot config in the state store yet; on a freshly started or not-yet-initialized cluster the config has not been applied via Raft, so there is nothing to return.

Source

Thrown at nomad/operator_endpoint.go:333

	if authErr != nil {
		return structs.ErrPermissionDenied
	}

	// This action requires operator read access.
	aclObj, err := op.srv.ResolveACL(args)
	if err != nil {
		return err
	} else if !aclObj.AllowOperatorRead() {
		return structs.ErrPermissionDenied
	}

	state := op.srv.fsm.State()
	_, config, err := state.AutopilotConfig()
	if err != nil {
		return err
	}
	if config == nil {
		return fmt.Errorf("autopilot config not initialized yet")
	}

	*reply = *config

	return nil
}

// AutopilotSetConfiguration is used to set the current Autopilot configuration.
func (op *Operator) AutopilotSetConfiguration(args *structs.AutopilotSetConfigRequest, reply *bool) error {

	authErr := op.srv.Authenticate(op.ctx, args)
	if done, err := op.srv.forward("Operator.AutopilotSetConfiguration", args, args, reply); done {
		return err
	}
	op.srv.MeasureRPCRate("operator", structs.RateMetricWrite, args)
	if authErr != nil {
		return structs.ErrPermissionDenied
	}

View on GitHub (pinned to 482b49bf1a)

Solutions

  1. Wait for the cluster (especially a new leader) to initialize and apply the autopilot config, then retry
  2. Check server logs and Raft health if the condition persists
  3. Set the autopilot configuration explicitly to initialize it
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at nomad/operator_endpoint.go:333 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of hashicorp/nomad@482b49bf1a (2026-09-04). Data as JSON: /api/errors/bd5737df36d48abc. Report an issue: GitHub.