Documentation ¶
Index ¶
- Variables
- func NewErrorAction(err error) store.ErrorAction
- func NewImageBuilder(db build.DockerBuilder, custb build.CustomBuilder, ...) *imageBuilder
- func ParseYAMLFromManifests(manifests ...model.Manifest) ([]k8s.K8sEntity, error)
- func ProvideSubscribers(hud hud.HeadsUpDisplay, ts *hud.TerminalStream, tp *prompt.TerminalPrompt, ...) []store.Subscriber
- func SpanIDForBuildLog(buildCount int) logstore.SpanID
- type BuildAndDeployer
- type BuildController
- type BuildLogActionWriter
- type BuildOrder
- type CompositeBuildAndDeployer
- type DockerComposeBuildAndDeployer
- type FallbackTester
- type HudStoppedAction
- type ImageBuildAndDeployer
- type InitAction
- type KINDLoader
- type LiveUpdateBuildAndDeployer
- type LocalTargetBuildAndDeployer
- type ManifestReloadedAction
- type PodWatcherMaker
- type ProfilerManager
- type ServiceWatcherMaker
- type TelemetryScriptRanAction
- type UIDUpdateAction
- type Upper
Constants ¶
This section is empty.
Variables ¶
var DeployerBaseWireSet = wire.NewSet(wire.Value(dockerfile.Labels{}), wire.Value(UpperReducer), sidecar.WireSet, k8s.ProvideMinikubeClient, build.DefaultDockerBuilder, build.NewDockerImageBuilder, build.NewExecCustomBuilder, wire.Bind(new(build.CustomBuilder), new(*build.ExecCustomBuilder)), NewLocalTargetBuildAndDeployer, NewImageBuildAndDeployer, containerupdate.NewDockerUpdater, containerupdate.NewSyncletUpdater, containerupdate.NewExecUpdater, NewLiveUpdateBuildAndDeployer, NewDockerComposeBuildAndDeployer, NewImageBuilder, DefaultBuildOrder, tracer.InitOpenTelemetry, wire.Bind(new(BuildAndDeployer), new(*CompositeBuildAndDeployer)), NewCompositeBuildAndDeployer, buildcontrol.ProvideUpdateMode, )
var DeployerWireSet = wire.NewSet( DeployerBaseWireSet, containerupdate.NewSyncletManager, )
var DeployerWireSetTest = wire.NewSet( DeployerBaseWireSet, containerupdate.NewSyncletManagerForTests, wire.InterfaceValue(new(trace.SpanProcessor), (trace.SpanProcessor)(nil)), synclet.FakeGRPCWrapper, )
var ImageBuildCount = &view.View{ Name: "image_build_count", Measure: ImageBuildDuration, Aggregation: view.Count(), Description: "Image build count", TagKeys: []tag.Key{KeyImageRef, KeyBuildError}, }
var ImageBuildDuration = stats.Float64( "image_build_duration", "Image build duration", stats.UnitMilliseconds)
Loosely adapted from how opencensus does HTTP aggregations: https://github.com/census-instrumentation/opencensus-specs/blob/master/stats/HTTP.md#http-stats https://pkg.go.dev/go.opencensus.io/plugin/ochttp
var ImageBuildDurationDistribution = view.Distribution(
10, 100, 500, 1000, 2000, 5000,
10000, 15000, 20000, 30000, 45000, 60000, 120000,
240000, 480000, 1000000, 2000000, 5000000)
var ImageBuildDurationView = &view.View{ Name: "image_build_duration_dist", Measure: ImageBuildDuration, Aggregation: ImageBuildDurationDistribution, Description: "Image build time, by image ref", TagKeys: []tag.Key{KeyImageRef, KeyBuildError}, }
var KeyBuildError = tag.MustNewKey("build_error")
var KeyImageRef = tag.MustNewKey("image_ref")
Metric and label names must match the following rules: https://prometheus.io/docs/concepts/data_model/#metric-names-and-labels
var UpperReducer = store.Reducer(upperReducerFn)
Functions ¶
func NewErrorAction ¶
func NewErrorAction(err error) store.ErrorAction
func NewImageBuilder ¶ added in v0.14.1
func NewImageBuilder(db build.DockerBuilder, custb build.CustomBuilder, updateMode buildcontrol.UpdateMode) *imageBuilder
func ParseYAMLFromManifests ¶
func ProvideSubscribers ¶ added in v0.8.0
func ProvideSubscribers( hud hud.HeadsUpDisplay, ts *hud.TerminalStream, tp *prompt.TerminalPrompt, pw *k8swatch.PodWatcher, sw *k8swatch.ServiceWatcher, plm *runtimelog.PodLogManager, pfc *portforward.Controller, fwm *fswatch.WatchManager, gm *fswatch.GitManager, bc *BuildController, cc *configs.ConfigsController, dcw *dcwatch.EventWatcher, dclm *runtimelog.DockerComposeLogManager, pm *ProfilerManager, sm containerupdate.SyncletManager, ar *analytics.AnalyticsReporter, hudsc *server.HeadsUpServerController, au *analytics.AnalyticsUpdater, ewm *k8swatch.EventWatchManager, tcum *cloud.CloudStatusManager, dp *dockerprune.DockerPruner, tc *telemetry.Controller, lc *local.Controller, podm *k8srollout.PodMonitor, ec *exit.Controller, mc *metrics.Controller, ) []store.Subscriber
func SpanIDForBuildLog ¶ added in v0.10.24
Types ¶
type BuildAndDeployer ¶
type BuildAndDeployer interface { // Returns a BuildResultSet containing output (build result and associated // file changes) for each target built in this call. The BuildResultSet only // contains results for newly built targets--if a target was clean and didn't // need to be built, it doesn't appear in the result set. // // BuildResult can be used to construct a set of BuildStates, which contain // the last successful builds of each target and the files changed since that // build. BuildAndDeploy(ctx context.Context, st store.RStore, specs []model.TargetSpec, currentState store.BuildStateSet) (store.BuildResultSet, error) }
type BuildController ¶
type BuildController struct {
// contains filtered or unexported fields
}
func NewBuildController ¶
func NewBuildController(b BuildAndDeployer) *BuildController
func (*BuildController) DisableForTesting ¶ added in v0.1.0
func (c *BuildController) DisableForTesting()
type BuildLogActionWriter ¶ added in v0.2.0
type BuildLogActionWriter struct {
// contains filtered or unexported fields
}
type BuildOrder ¶
type BuildOrder []BuildAndDeployer
func DefaultBuildOrder ¶
func DefaultBuildOrder(lubad *LiveUpdateBuildAndDeployer, ibad *ImageBuildAndDeployer, dcbad *DockerComposeBuildAndDeployer, ltbad *LocalTargetBuildAndDeployer, updMode buildcontrol.UpdateMode, env k8s.Env, runtime container.Runtime) BuildOrder
func (BuildOrder) String ¶ added in v0.7.11
func (bo BuildOrder) String() string
type CompositeBuildAndDeployer ¶
type CompositeBuildAndDeployer struct {
// contains filtered or unexported fields
}
CompositeBuildAndDeployer tries to run each builder in order. If a builder emits an error, it uses the FallbackTester to determine whether the error is critical enough to stop the whole pipeline, or to fallback to the next builder.
func NewCompositeBuildAndDeployer ¶
func NewCompositeBuildAndDeployer(builders BuildOrder, tracer trace.Tracer) *CompositeBuildAndDeployer
func (*CompositeBuildAndDeployer) BuildAndDeploy ¶
func (composite *CompositeBuildAndDeployer) BuildAndDeploy(ctx context.Context, st store.RStore, specs []model.TargetSpec, currentState store.BuildStateSet) (store.BuildResultSet, error)
type DockerComposeBuildAndDeployer ¶ added in v0.4.1
type DockerComposeBuildAndDeployer struct {
// contains filtered or unexported fields
}
func NewDockerComposeBuildAndDeployer ¶ added in v0.4.1
func NewDockerComposeBuildAndDeployer(dcc dockercompose.DockerComposeClient, dc docker.Client, ib *imageBuilder, c build.Clock) *DockerComposeBuildAndDeployer
func (*DockerComposeBuildAndDeployer) BuildAndDeploy ¶ added in v0.4.1
func (bd *DockerComposeBuildAndDeployer) BuildAndDeploy(ctx context.Context, st store.RStore, specs []model.TargetSpec, currentState store.BuildStateSet) (res store.BuildResultSet, err error)
type FallbackTester ¶
type HudStoppedAction ¶ added in v0.1.0
type HudStoppedAction struct {
// contains filtered or unexported fields
}
func NewHudStoppedAction ¶ added in v0.1.0
func NewHudStoppedAction(err error) HudStoppedAction
func (HudStoppedAction) Action ¶ added in v0.1.0
func (HudStoppedAction) Action()
type ImageBuildAndDeployer ¶
type ImageBuildAndDeployer struct {
// contains filtered or unexported fields
}
func NewImageBuildAndDeployer ¶
func NewImageBuildAndDeployer( db build.DockerBuilder, customBuilder build.CustomBuilder, k8sClient k8s.Client, env k8s.Env, analytics *analytics.TiltAnalytics, updMode buildcontrol.UpdateMode, c build.Clock, runtime container.Runtime, kl KINDLoader, syncletContainer sidecar.SyncletContainer, ) *ImageBuildAndDeployer
func (*ImageBuildAndDeployer) BuildAndDeploy ¶
func (ibd *ImageBuildAndDeployer) BuildAndDeploy(ctx context.Context, st store.RStore, specs []model.TargetSpec, stateSet store.BuildStateSet) (resultSet store.BuildResultSet, err error)
func (*ImageBuildAndDeployer) SetInjectSynclet ¶
func (ibd *ImageBuildAndDeployer) SetInjectSynclet(inject bool)
Turn on synclet injection. Should be called before any builds.
type InitAction ¶
type InitAction struct { EngineMode store.EngineMode TiltfilePath string ConfigFiles []string UserArgs []string TiltBuild model.TiltBuild StartTime time.Time AnalyticsUserOpt analytics.Opt CloudAddress string Token token.Token TerminalMode store.TerminalMode }
func (InitAction) Action ¶
func (InitAction) Action()
type KINDLoader ¶ added in v0.14.0
type KINDLoader interface {
LoadToKIND(ctx context.Context, ref reference.NamedTagged) error
}
func NewKINDLoader ¶ added in v0.14.0
func NewKINDLoader(env k8s.Env, clusterName k8s.ClusterName) KINDLoader
type LiveUpdateBuildAndDeployer ¶ added in v0.9.5
type LiveUpdateBuildAndDeployer struct {
// contains filtered or unexported fields
}
func NewLiveUpdateBuildAndDeployer ¶ added in v0.9.5
func NewLiveUpdateBuildAndDeployer(dcu *containerupdate.DockerUpdater, scu *containerupdate.SyncletUpdater, ecu *containerupdate.ExecUpdater, updMode buildcontrol.UpdateMode, env k8s.Env, runtime container.Runtime, c build.Clock) *LiveUpdateBuildAndDeployer
func (*LiveUpdateBuildAndDeployer) BuildAndDeploy ¶ added in v0.9.5
func (lubad *LiveUpdateBuildAndDeployer) BuildAndDeploy(ctx context.Context, st store.RStore, specs []model.TargetSpec, stateSet store.BuildStateSet) (store.BuildResultSet, error)
type LocalTargetBuildAndDeployer ¶ added in v0.10.8
type LocalTargetBuildAndDeployer struct {
// contains filtered or unexported fields
}
TODO(maia): CommandRunner interface for testability
func NewLocalTargetBuildAndDeployer ¶ added in v0.10.8
func NewLocalTargetBuildAndDeployer(c build.Clock) *LocalTargetBuildAndDeployer
func (*LocalTargetBuildAndDeployer) BuildAndDeploy ¶ added in v0.10.8
func (bd *LocalTargetBuildAndDeployer) BuildAndDeploy(ctx context.Context, st store.RStore, specs []model.TargetSpec, stateSet store.BuildStateSet) (resultSet store.BuildResultSet, err error)
type ManifestReloadedAction ¶
type ManifestReloadedAction struct { OldManifest model.Manifest NewManifest model.Manifest Error error }
func (ManifestReloadedAction) Action ¶
func (ManifestReloadedAction) Action()
type ProfilerManager ¶ added in v0.4.2
type ProfilerManager struct {
// contains filtered or unexported fields
}
func NewProfilerManager ¶ added in v0.4.2
func NewProfilerManager() *ProfilerManager
func (*ProfilerManager) OnChange ¶ added in v0.4.2
func (p *ProfilerManager) OnChange(ctx context.Context, st store.RStore)
type TelemetryScriptRanAction ¶ added in v0.10.25
func (TelemetryScriptRanAction) Action ¶ added in v0.10.25
func (TelemetryScriptRanAction) Action()
type UIDUpdateAction ¶ added in v0.8.9
type UIDUpdateAction struct { UID types.UID EventType watch.EventType ManifestName model.ManifestName Entity k8s.K8sEntity }
func (UIDUpdateAction) Action ¶ added in v0.8.9
func (UIDUpdateAction) Action()
Source Files ¶
- actions.go
- build_and_deployer.go
- buildcontroller.go
- docker_compose_build_and_deployer.go
- extractors.go
- image_build_and_deployer.go
- image_builder.go
- live_update_build_and_deployer.go
- live_update_state_tree.go
- local_target_build_and_deployer.go
- parse.go
- pod.go
- profiler.go
- subscribers.go
- upper.go
- wire_gen.go