diff

package
v3.22.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 7, 2022 License: MIT Imports: 6 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ChangesetLess added in v3.2.0

func ChangesetLess(c Changeset, i, j int) bool

ChangesetLess returns true if c[i] < c[j].

func CorrectionLess added in v3.3.0

func CorrectionLess(c []*models.Correction, i, j int) bool

CorrectionLess returns true when comparing corrections.

func DebugKeyMapMap

func DebugKeyMapMap(note string, m map[models.RecordKey][]string)

DebugKeyMapMap debug prints the results from ChangedGroups.

Types

type Changeset

type Changeset []Correlation

Changeset stores many Correlation.

type Correlation

type Correlation struct {
	Existing *models.RecordConfig
	Desired  *models.RecordConfig
	// contains filtered or unexported fields
}

Correlation stores a difference between two domains.

func (Correlation) String

func (c Correlation) String() string

type Differ

type Differ interface {
	// IncrementalDiff performs a diff on a record-by-record basis, and returns a sets for which records need to be created, deleted, or modified.
	IncrementalDiff(existing []*models.RecordConfig) (unchanged, create, toDelete, modify Changeset, err error)
	// ChangedGroups performs a diff more appropriate for providers with a "RecordSet" model, where all records with the same name and type are grouped.
	// Individual record changes are often not useful in such scenarios. Instead we return a map of record keys to a list of change descriptions within that group.
	ChangedGroups(existing []*models.RecordConfig) (map[models.RecordKey][]string, error)
}

Differ is an interface for computing the difference between two zones.

func New

func New(dc *models.DomainConfig, extraValues ...func(*models.RecordConfig) map[string]string) Differ

New is a constructor for a Differ.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL