Versions in this module Expand all Collapse all v0 v0.3.0 Oct 18, 2026 v0.2.0 Oct 18, 2026 v0.1.0 Oct 18, 2026 Changes in this version + const AllowAll + const AllowEnv + const AllowPorts + const AllowVersions + const DefaultAppPort + const DefaultBranch + const DefaultBranchPrefix + const DefaultCleanup + const DefaultDatabase + const DefaultIsolation + const DefaultMount + const DefaultSleepAfter + const OverrideFile + var NameRe = regexp.MustCompile(`^[a-z][a-z0-9-]{0,39}$`) + func HasExpr(s string) bool + func PolicyReason(allowed []string) string + func Risky(changes []Change) []string + func Same(want, got *Project) error + type App struct + Branch string + Build *Build + Command string + Entrypoint string + Env map[string]string + Healthcheck *Healthcheck + Hooks *Hooks + Image string + Mount string + Optional bool + Path string + Port int + Repo string + Routes []string + Tmpfs []string + Ulimits map[string]*Ulimit + Uses []string + Volumes []string + func (a *App) AppPort() int + func (a *App) BaseBranch() string + type AppOverride struct + Env map[string]string + Port int + type Build struct + Args map[string]string + Context string + Dockerfile string + Target string + type Change struct + Risky bool + Section string + What string + func Diff(old, next *Project) []Change + type DataPolicy struct + Snapshots map[string]*Snapshot + type FeaturePolicy struct + BranchPrefix string + Cleanup string + Database string + Isolation string + MaxRunning int + SleepAfter string + type Healthcheck struct + Disable bool + Interval string + Retries int + StartPeriod string + Test []string + Timeout string + type Hooks struct + Build string + Install string + Migrate string + Seed string + type Override struct + Apps map[string]*AppOverride + Services map[string]*ServiceOverride + func ParseOverride(data []byte) (*Override, error) + type OverridePolicy struct + Allowed []string + type OverrideResult struct + Applied []string + Rejected []string + type Project struct + Apps map[string]*App + Data *DataPolicy + Domain string + Features *FeaturePolicy + Name string + Overrides *OverridePolicy + Services map[string]*Service + func ParseYAML(data []byte) (*Project, error) + func (p *Project) AppNames() []string + func (p *Project) ApplyOverride(o *Override, allowed []string, why string) (*Project, OverrideResult) + func (p *Project) Attached(app string) []string + func (p *Project) Check() error + func (p *Project) Clone() *Project + func (p *Project) CodeMount(app string) string + func (p *Project) DatabaseName(service string) string + func (p *Project) Expand(s string, resolve func(Ref) (string, error)) (string, error) + func (p *Project) Needs(name string) []string + func (p *Project) ParseRef(body string) (Ref, error) + func (p *Project) Policy() FeaturePolicy + func (p *Project) Processes(app, typ string) []string + func (p *Project) Runtime(app string) (string, *Service) + func (p *Project) ServiceNames() []string + func (p *Project) Validate() error + func (p *Project) WithSection(section string, data []byte) (*Project, error) + func (p *Project) WithoutApp(name string) *Project + func (p *Project) YAML() ([]byte, error) + type Ref struct + Attr string + Kind RefKind + Name string + Raw string + type RefKind int + const RefApp + const RefEnv + const RefSecret + const RefService + type Service struct + Apps []string + Command string + Data *ServiceData + Entrypoint string + Env map[string]string + Expose string + Healthcheck *Healthcheck + Image string + Optional bool + PerFeature string + Port int + Replicas int + Schedule string + Tmpfs []string + Type string + UIPort int + Ulimits map[string]*Ulimit + Uses []string + Version string + Volumes []string + func (s *Service) ExposePort() int + func (s *Service) ImageRef() string + func (s *Service) IsContainer() bool + func (s *Service) Kind() catalog.Kind + type ServiceData struct + Seed string + type ServiceOverride struct + Env map[string]string + Port int + Version string + type Snapshot struct + Mask map[string]string + Source string + type Ulimit struct + Hard int + Single int + Soft int