Documentation ¶
Overview ¶
Example ¶
t, err := tentez.New( context.TODO(), map[tentez.TargetType]tentez.Targets{ tentez.TargetTypeAwsListenerRule: tentez.AwsListenerRules([]tentez.AwsListenerRule{}), tentez.TargetTypeAwsListener: tentez.AwsListeners([]tentez.AwsListener{}), }, []tentez.Step{ { Type: tentez.StepTypeSleep, }, }, ) if err != nil { return } targetsData, err := t.Get(context.TODO()) if err != nil { return } output, err := yaml.Marshal(&targetsData) if err != nil { return } fmt.Print(string(output)) data, ok := targetsData[tentez.TargetTypeAwsListener].([]tentez.AwsListenerData) if ok && len(data) > 0 { name := data[0].Name fmt.Println(name) }
Output:
Index ¶
- Constants
- Variables
- func New(ctx context.Context, targets map[TargetType]Targets, steps []Step) (tentez, error)
- func NewFailedFetchTargetGroupsError(tgs []string) error
- type AwsListener
- type AwsListenerData
- type AwsListenerRule
- type AwsListenerRuleData
- type AwsListenerRules
- type AwsListeners
- type AwsTargetGroupTuple
- type Change
- type ChangeAction
- type ChangeActions
- type ChangeValueAwsListener
- type ChangeValueAwsListenerRule
- type ChangeValueElbV2TargetAction
- type ChangeValueElbV2TargetActionForward
- type ChangeValueElbV2TargetActionForwardTargetGroups
- type ChangeValueInterface
- type Client
- type Clock
- type Config
- type FailedFetchTargetGroupsError
- type GenerateConfigResourceTag
- type GenerateConfigResourceTagV1beta1
- type GenerateConfigResourceTagV1beta1Spec
- type GenerateConfigResourceTagVersion
- type RealClock
- type ResourceChange
- type SkipSwitchError
- type Step
- type StepType
- type Switch
- type Target
- type TargetType
- type Targets
- type TargetsData
- type Tentez
- type TerraformPlanJson
- type Ui
- type Weight
- type YamlStruct
Examples ¶
Constants ¶
View Source
const Version = "0.11.0"
Variables ¶
View Source
var Revision = "Devel"
Functions ¶
func NewFailedFetchTargetGroupsError ¶ added in v0.10.3
Types ¶
type AwsListener ¶
type AwsListenerData ¶
type AwsListenerData struct { Name string `yaml:"name"` ListnerArn string `yaml:"target"` Weights []AwsTargetGroupTuple `yaml:"weights"` AdditionalActions []elbv2Types.ActionTypeEnum `yaml:"additional_actions,omitempty"` }
type AwsListenerRule ¶
type AwsListenerRuleData ¶
type AwsListenerRuleData struct { Name string `yaml:"name"` ListenerRuleArn string `yaml:"target"` Weights []AwsTargetGroupTuple `yaml:"weights"` AdditionalActions []elbv2Types.ActionTypeEnum `yaml:"additional_actions,omitempty"` }
type AwsListenerRules ¶
type AwsListenerRules []AwsListenerRule
type AwsListeners ¶
type AwsListeners []AwsListener
type AwsTargetGroupTuple ¶
type Change ¶ added in v0.7.0
type Change struct { Actions ChangeActions `json:"actions"` Before json.RawMessage `json:"before"` After json.RawMessage `json:"after"` }
type ChangeAction ¶ added in v0.7.0
type ChangeAction string
const ( ChangeActionNoop ChangeAction = "no-op" ChangeActionCreate ChangeAction = "create" ChangeActionRead ChangeAction = "read" ChangeActionUpdate ChangeAction = "update" ChangeActionDelete ChangeAction = "delete" )
type ChangeActions ¶ added in v0.7.0
type ChangeActions []ChangeAction
func (ChangeActions) IsUpdate ¶ added in v0.7.0
func (c ChangeActions) IsUpdate() bool
type ChangeValueAwsListener ¶ added in v0.7.0
type ChangeValueAwsListener struct { Arn string `json:"arn"` DefaultActions []ChangeValueElbV2TargetAction `json:"default_action"` }
func (ChangeValueAwsListener) GetSwitchTarget ¶ added in v0.7.0
func (c ChangeValueAwsListener) GetSwitchTarget() (string, error)
func (ChangeValueAwsListener) GetTarget ¶ added in v0.7.0
func (c ChangeValueAwsListener) GetTarget() (string, error)
type ChangeValueAwsListenerRule ¶ added in v0.7.0
type ChangeValueAwsListenerRule struct { Arn string `json:"arn"` Actions []ChangeValueElbV2TargetAction `json:"action"` }
func (ChangeValueAwsListenerRule) GetSwitchTarget ¶ added in v0.7.0
func (c ChangeValueAwsListenerRule) GetSwitchTarget() (string, error)
func (ChangeValueAwsListenerRule) GetTarget ¶ added in v0.7.0
func (c ChangeValueAwsListenerRule) GetTarget() (string, error)
type ChangeValueElbV2TargetAction ¶ added in v0.7.0
type ChangeValueElbV2TargetAction struct { TargetGroupArn string `json:"target_group_arn"` Forward []ChangeValueElbV2TargetActionForward `json:"forward"` }
type ChangeValueElbV2TargetActionForward ¶ added in v0.7.0
type ChangeValueElbV2TargetActionForward struct {
TargetGroups []ChangeValueElbV2TargetActionForwardTargetGroups `json:"target_group"`
}
type ChangeValueElbV2TargetActionForwardTargetGroups ¶ added in v0.7.0
type ChangeValueInterface ¶ added in v0.7.0
type FailedFetchTargetGroupsError ¶ added in v0.10.3
type FailedFetchTargetGroupsError struct {
// contains filtered or unexported fields
}
func (*FailedFetchTargetGroupsError) Error ¶ added in v0.10.3
func (f *FailedFetchTargetGroupsError) Error() string
func (*FailedFetchTargetGroupsError) Is ¶ added in v0.10.3
func (f *FailedFetchTargetGroupsError) Is(target error) bool
type GenerateConfigResourceTag ¶ added in v0.10.0
type GenerateConfigResourceTag struct {
Version GenerateConfigResourceTagVersion `yaml:"version"`
}
type GenerateConfigResourceTagV1beta1 ¶ added in v0.10.0
type GenerateConfigResourceTagV1beta1 struct {
Spec GenerateConfigResourceTagV1beta1Spec `yaml:"spec"`
}
type GenerateConfigResourceTagV1beta1Spec ¶ added in v0.10.0
type GenerateConfigResourceTagVersion ¶ added in v0.10.0
type GenerateConfigResourceTagVersion string
const (
GenerateConfigResourceTagVersionV1beta1 GenerateConfigResourceTagVersion = "tentez.ResourceTag.v1beta1"
)
type ResourceChange ¶ added in v0.7.0
type SkipSwitchError ¶ added in v0.4.0
type SkipSwitchError struct {
Message string
}
func (SkipSwitchError) Error ¶ added in v0.4.0
func (s SkipSwitchError) Error() string
type TargetType ¶ added in v0.4.1
type TargetType string
const ( TargetTypeAwsListener TargetType = "aws_listeners" TargetTypeAwsListenerRule TargetType = "aws_listener_rules" )
type Targets ¶ added in v0.2.0
type Targets interface {
// contains filtered or unexported methods
}
type TargetsData ¶ added in v0.5.0
type TargetsData interface{}
type Tentez ¶ added in v0.2.0
type TerraformPlanJson ¶ added in v0.7.0
type TerraformPlanJson struct { FormatVersion string `json:"format_version"` ResourceChanges []ResourceChange `json:"resource_changes"` }
type Weight ¶
func (Weight) CalcNewRatio ¶ added in v0.4.0
func (Weight) CalcOldRatio ¶ added in v0.4.0
type YamlStruct ¶
type YamlStruct struct { Steps []Step `yaml:"steps"` AwsListeners AwsListeners `yaml:"aws_listeners"` AwsListenerRules AwsListenerRules `yaml:"aws_listener_rules"` }
func GenerateConfigFromResourceTags ¶ added in v0.10.0
func GenerateConfigFromTerraformPlanJsons ¶ added in v0.7.1
func GenerateConfigFromTerraformPlanJsons(jsons []TerraformPlanJson) (YamlStruct, error)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.