Internal

internal/adapters/corebundle

Package corebundle installs embedded managed scafld core assets into workspaces.

import "github.com/nilstate/scafld/v2/internal/adapters/corebundle"

Package corebundle installs embedded managed scafld core assets into workspaces.

Functions

func Init(ctx context.Context, root string) (Result, error)

Source: internal/adapters/corebundle/bundle.go:37

Init installs managed core assets for a newly bootstrapped workspace.

func InitAgentDocs(ctx context.Context, root string) (Result, error)

Source: internal/adapters/corebundle/agent_docs.go:18

InitAgentDocs installs root agent docs, prepending a scafld section when needed.

func InitGitignore(ctx context.Context, root string) (Result, error)

Source: internal/adapters/corebundle/gitignore.go:31

InitGitignore installs the scafld ignore contract into the workspace gitignore.

func Install(ctx context.Context, root string, opts Options) (Result, error)

Source: internal/adapters/corebundle/bundle.go:51

Install copies embedded assets into root according to opts.

func RefreshAgentDocs(ctx context.Context, root string) (Result, error)

Source: internal/adapters/corebundle/agent_docs.go:23

RefreshAgentDocs refreshes existing scafld sections in root agent docs.

func Update(ctx context.Context, root string) (Result, error)

Source: internal/adapters/corebundle/bundle.go:46

Update refreshes managed assets and default project prompt copies.

Types

type Options

Source: internal/adapters/corebundle/bundle.go:22

Options controls how embedded core assets are installed.

type Options struct {
	OverwriteCore         bool
	CreateProjectPrompts  bool
	RefreshProjectPrompts bool
	CreateProjectConfig   bool
}
Fields
  • OverwriteCore bool
  • CreateProjectPrompts bool
  • RefreshProjectPrompts bool
  • CreateProjectConfig bool

type Result

Source: internal/adapters/corebundle/bundle.go:30

Result summarizes files created, updated, or skipped during installation.

type Result struct {
	Created []string `json:"created"`
	Updated []string `json:"updated"`
	Skipped []string `json:"skipped"`
}
Fields
  • Created []string `json:"created"`
  • Updated []string `json:"updated"`
  • Skipped []string `json:"skipped"`