Documentation
¶
Overview ¶
Package smb implements the apply step that activates the Samba server: group and user membership, avahi, config validation, service enablement, and samba account passwords. It never writes config files — placement is mise's job (smb.conf and shares.conf are system dotfiles); this step only activates what is already placed.
Index ¶
Constants ¶
const DefaultGroup = "smb"
DefaultGroup is used when a module's smb spec declares no group.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ExecRunner ¶
type ExecRunner struct{}
ExecRunner is the real command runner.
func (ExecRunner) RunInteractive ¶
type Runner ¶
type Runner interface {
Run(ctx context.Context, name string, args ...string) (string, error)
RunInteractive(ctx context.Context, name string, args ...string) error
}
Runner runs commands for the step. Run captures combined output (stdout and stderr merged, so validation errors like testparm's carry their diagnostics); cancelling ctx kills the child process. RunInteractive attaches the terminal so a command can prompt (smbpasswd password entry).
type Step ¶
Step is the apply pipeline step for Samba server activation, consuming the resolved smb aggregate. Out receives intentional user-facing messages (the no-TTY smbpasswd skip warning); it defaults to os.Stdout.