ab7eb5de6e
Move some common Vault API data struct decoding out of the Vault client so it can be reused in other situations. Make Vault job validation its own function so it's easier to expand it. Rename the `Job.VaultPolicies` method to just `Job.Vault` since it returns the full Vault block, not just their policies. Set `ChangeMode` on `Vault.Canonicalize`. Add some missing tests. Allows specifying an entity alias that will be used by Nomad when deriving the task Vault token. An entity alias assigns an indentity to a token, allowing better control and management of Vault clients since all tokens with the same indentity alias will now be considered the same client. This helps track Nomad activity in Vault's audit logs and better control over Vault billing. Add support for a new Nomad server configuration to define a default entity alias to be used when deriving Vault tokens. This default value will be used if the task doesn't have an entity alias defined.
41 lines
1.4 KiB
Go
41 lines
1.4 KiB
Go
//go:build !ent
|
|
// +build !ent
|
|
|
|
package nomad
|
|
|
|
import (
|
|
"github.com/hashicorp/nomad/nomad/structs"
|
|
)
|
|
|
|
// enforceSubmitJob is used to check any Sentinel policies for the submit-job scope
|
|
func (j *Job) enforceSubmitJob(override bool, job *structs.Job) (error, error) {
|
|
return nil, nil
|
|
}
|
|
|
|
// multiregionRegister is used to send a job across multiple regions
|
|
func (j *Job) multiregionRegister(args *structs.JobRegisterRequest, reply *structs.JobRegisterResponse, newVersion uint64) (bool, error) {
|
|
return false, nil
|
|
}
|
|
|
|
// multiregionStart is used to kick-off a deployment across multiple regions
|
|
func (j *Job) multiregionStart(args *structs.JobRegisterRequest, reply *structs.JobRegisterResponse) error {
|
|
return nil
|
|
}
|
|
|
|
// multiregionDrop is used to deregister regions from a previous version of the
|
|
// job that are no longer in use
|
|
func (j *Job) multiregionDrop(args *structs.JobRegisterRequest, reply *structs.JobRegisterResponse) error {
|
|
return nil
|
|
}
|
|
|
|
// multiregionStop is used to fan-out Job.Deregister RPCs to all regions if
|
|
// the global flag is passed to Job.Deregister
|
|
func (j *Job) multiregionStop(job *structs.Job, args *structs.JobDeregisterRequest, reply *structs.JobDeregisterResponse) error {
|
|
return nil
|
|
}
|
|
|
|
// interpolateMultiregionFields interpolates a job for a specific region
|
|
func (j *Job) interpolateMultiregionFields(args *structs.JobPlanRequest) error {
|
|
return nil
|
|
}
|