Documentation
¶
Index ¶
- Constants
- Variables
- func DigestTaskDefinitionsFromDir(dir string) (digest string, err error)
- func EvaluateJavaScriptModification(src string, script string) (out string, err error)
- func ParseGroupVersionResource(s string) (res schema.GroupVersionResource, err error)
- func RetrieveMetadataName(obj any) (name string, err error)
- type Flags
- type Session
- type SessionList
- type Task
- type TaskDefinition
- type TaskDefinitionList
- type TaskList
- type TaskOptions
Constants ¶
View Source
const FieldManagerReplikator = "io.github.yankeguo/replikator"
Variables ¶
View Source
var (
ErrScriptTimeout = errors.New("script timeout")
)
Functions ¶
func DigestTaskDefinitionsFromDir ¶ added in v0.3.0
DigestTaskDefinitionsFromDir creates digest for TaskDefinitions in dir, for change detection
func EvaluateJavaScriptModification ¶ added in v0.2.0
EvaluateJavaScriptModification evaluates the javascript modification script on the src, input and output are both JSON string
func ParseGroupVersionResource ¶ added in v0.2.0
func ParseGroupVersionResource(s string) (res schema.GroupVersionResource, err error)
ParseGroupVersionResource parse a string to GroupVersionResource
func RetrieveMetadataName ¶ added in v0.3.0
RetrieveMetadataName retrieve metadata.name from an object
Types ¶
type Flags ¶
func ParseFlags ¶
func (Flags) CreateKubernetesClient ¶ added in v0.3.0
func (flags Flags) CreateKubernetesClient() (client *kubernetes.Clientset, dynClient *dynamic.DynamicClient, err error)
type Session ¶ added in v0.3.0
type Session struct {
// contains filtered or unexported fields
}
type SessionList ¶ added in v0.3.0
type SessionList []*Session
func (SessionList) Run ¶ added in v0.3.0
func (list SessionList) Run(ctx context.Context)
type Task ¶
type Task struct {
// contains filtered or unexported fields
}
func (*Task) NewSession ¶ added in v0.3.0
func (t *Task) NewSession(opts TaskOptions) *Session
NewSession creates a new session for the task with kubernetes client and dynamic client
type TaskDefinition ¶ added in v0.2.0
type TaskDefinition struct {
Resource string `yaml:"resource"`
Source struct {
Namespace string `yaml:"namespace"`
Name string `yaml:"name"`
} `yaml:"source"`
Target struct {
Namespace string `yaml:"namespace"`
Name string `yaml:"name"`
} `yaml:"target"`
Modification struct {
JSONPatch []any `yaml:"jsonpatch"`
Javascript string `yaml:"javascript"`
} `yaml:"modification"`
}
TaskDefinition is the definition of a Task
func (TaskDefinition) Build ¶ added in v0.2.0
func (def TaskDefinition) Build() (out *Task, err error)
Build creates a Task from TaskDefinition
type TaskDefinitionList ¶ added in v0.3.0
type TaskDefinitionList []TaskDefinition
func LoadTaskDefinitionsFromDir ¶ added in v0.2.0
func LoadTaskDefinitionsFromDir(dir string) (defs TaskDefinitionList, err error)
LoadTaskDefinitionsFromDir loads TaskDefinitions from dir
func LoadTaskDefinitionsFromFile ¶ added in v0.3.0
func LoadTaskDefinitionsFromFile(file string) (defs TaskDefinitionList, err error)
LoadTaskDefinitionsFromFile loads TaskDefinition from file
func (TaskDefinitionList) Build ¶ added in v0.3.0
func (defs TaskDefinitionList) Build() (tasks TaskList, err error)
type TaskList ¶ added in v0.3.0
type TaskList []*Task
func (TaskList) NewSessions ¶ added in v0.3.0
func (list TaskList) NewSessions(opts TaskOptions) (out SessionList)
type TaskOptions ¶ added in v0.2.0
type TaskOptions struct {
Client *kubernetes.Clientset
DynamicClient *dynamic.DynamicClient
}
TaskOptions is the options for creating a new session
Source Files
¶
Click to show internal directories.
Click to hide internal directories.