tiltextension

package
v0.23.4 Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2021 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package extension implements Tilt extensions. This is not the internal Starkit abstraction, but the user-visible feature. In a Tiltfile, you can write `load("ext://foo", "bar")` to load the function bar from the extension foo.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Downloader added in v0.17.5

type Downloader interface {
	RootDir() string
	Download(ctx context.Context, pkg string) (string, error)
}

type Fetcher

type Fetcher interface {
	Fetch(ctx context.Context, moduleName string) (ModuleContents, error)
	CleanUp() error
}

type GithubFetcher

type GithubFetcher struct {
	// contains filtered or unexported fields
}

func NewGithubFetcher

func NewGithubFetcher(dlr Downloader) *GithubFetcher

func (*GithubFetcher) CleanUp added in v0.17.5

func (f *GithubFetcher) CleanUp() error

func (*GithubFetcher) Fetch

func (f *GithubFetcher) Fetch(ctx context.Context, moduleName string) (ModuleContents, error)

type LocalStore

type LocalStore struct {
	// contains filtered or unexported fields
}

func NewLocalStore

func NewLocalStore(baseDir string) *LocalStore

func (*LocalStore) ModulePath

func (s *LocalStore) ModulePath(ctx context.Context, moduleName string) (string, error)

func (*LocalStore) Write

func (s *LocalStore) Write(ctx context.Context, contents ModuleContents) (string, error)

TODO(dmiller): should this error if we try to write an extension with the same name as one that already exists?

type Metadata

type Metadata struct {
	Name              string
	ExtensionRegistry string
	TimeFetched       time.Time
}

type MetadataFile

type MetadataFile struct {
	Extensions []Metadata
}

type ModuleContents

type ModuleContents struct {
	Name              string
	Dir               string
	ExtensionRegistry string
	TimeFetched       time.Time
}

type Plugin added in v0.22.4

type Plugin struct {
	// contains filtered or unexported fields
}

func NewPlugin added in v0.22.4

func NewPlugin(fetcher Fetcher, store Store) *Plugin

func (*Plugin) LocalPath added in v0.22.4

func (e *Plugin) LocalPath(t *starlark.Thread, arg string) (localPath string, err error)

func (Plugin) NewState added in v0.22.4

func (e Plugin) NewState() interface{}

func (*Plugin) OnStart added in v0.22.4

func (e *Plugin) OnStart(env *starkit.Environment) error

type State added in v0.18.11

type State struct {
	ExtsLoaded map[string]bool
}

func GetState added in v0.18.11

func GetState(m starkit.Model) (State, error)

func MustState added in v0.18.11

func MustState(model starkit.Model) State

type Store

type Store interface {
	// ModulePath is used to check if an extension exists before fetching it
	// Returns ErrNotExist if module doesn't exist
	ModulePath(ctx context.Context, moduleName string) (string, error)
	Write(ctx context.Context, contents ModuleContents) (string, error)
}

type TempDirDownloader added in v0.17.5

type TempDirDownloader struct {
	// contains filtered or unexported fields
}

func NewTempDirDownloader added in v0.17.5

func NewTempDirDownloader() (*TempDirDownloader, error)

func (*TempDirDownloader) Download added in v0.17.5

func (d *TempDirDownloader) Download(ctx context.Context, pkg string) (string, error)

func (*TempDirDownloader) RootDir added in v0.17.5

func (d *TempDirDownloader) RootDir() string

Jump to

Keyboard shortcuts

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