hashicorp/nomad · error

Unknown change mode %q

Error message

Unknown change mode %q

What it means

Vault.Validate: the vault block's change_mode is not noop, restart, or signal — typically a typo in the change_mode field of the vault stanza.

Source

Thrown at nomad/structs/structs.go:10567

	}
}

// Validate returns if the Vault block is valid.
func (v *Vault) Validate() error {
	if v == nil {
		return nil
	}

	var mErr multierror.Error

	switch v.ChangeMode {
	case VaultChangeModeSignal:
		if v.ChangeSignal == "" {
			_ = multierror.Append(&mErr, fmt.Errorf("Signal must be specified when using change mode %q", VaultChangeModeSignal))
		}
	case VaultChangeModeNoop, VaultChangeModeRestart:
	default:
		_ = multierror.Append(&mErr, fmt.Errorf("Unknown change mode %q", v.ChangeMode))
	}

	return mErr.ErrorOrNil()
}

type Secret struct {
	Name     string
	Provider string
	Path     string
	Config   map[string]any
	Env      map[string]string
}

func (s *Secret) Equal(o *Secret) bool {
	if s == nil || o == nil {
		return s == o
	}

View on GitHub (pinned to 482b49bf1a)

Solutions

  1. Set change_mode to "noop", "restart", or "signal"
  2. Omit change_mode; it defaults to "restart"
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at nomad/structs/structs.go:10567 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/3cafa417b09a811b. Report an issue: GitHub.