package netlify import ( "context" "fmt" "lmika.dev/lmika/hugo-crm/models" "os" "os/exec" ) type Provider struct { authToken string } func New(authToken string) *Provider { return &Provider{ authToken: authToken, } } func (p *Provider) Publish(ctx context.Context, target models.PublishTarget, dir string) error { cmd := exec.CommandContext(ctx, "netlify", "deploy", "--dir", dir, "--prod") cmd.Env = append(os.Environ(), fmt.Sprintf("NETLIFY_SITE_ID=%v", target.TargetRef), fmt.Sprintf("NETLIFY_AUTH_TOKEN=%v", p.authToken)) cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr return cmd.Run() }