MCPcopy Create free account
hub / github.com/Facets-cloud/flow / printPlaybookMetadata

Function printPlaybookMetadata

internal/app/show.go:492–587  ·  view source on GitHub ↗

printPlaybookMetadata writes the human-readable view of a playbook row.

(db *sql.DB, pb *flowdb.Playbook, root string)

Source from the content-addressed store, hash-verified

490
491// printPlaybookMetadata writes the human-readable view of a playbook row.
492func printPlaybookMetadata(db *sql.DB, pb *flowdb.Playbook, root string) {
493 archivedMarker := ""
494 if pb.ArchivedAt.Valid {
495 archivedMarker = " (archived)"
496 }
497 fmt.Printf("slug: %s%s\n", pb.Slug, archivedMarker)
498 fmt.Printf("name: %s\n", pb.Name)
499 if pb.ProjectSlug.Valid {
500 fmt.Printf("project: %s\n", pb.ProjectSlug.String)
501 } else {
502 fmt.Printf("project: (floating)\n")
503 }
504
505 wdLine := pb.WorkDir
506 if wd, err := flowdb.GetWorkdir(db, pb.WorkDir); err == nil {
507 var parts []string
508 if wd.Name.Valid && wd.Name.String != "" {
509 parts = append(parts, "known: "+wd.Name.String)
510 } else {
511 parts = append(parts, "known")
512 }
513 if wd.GitRemote.Valid && wd.GitRemote.String != "" {
514 parts = append(parts, "origin: "+wd.GitRemote.String)
515 }
516 wdLine = fmt.Sprintf("%s [%s]", pb.WorkDir, strings.Join(parts, ", "))
517 }
518 fmt.Printf("work_dir: %s\n", wdLine)
519
520 fmt.Printf("created: %s\n", pb.CreatedAt)
521 fmt.Printf("updated: %s\n", pb.UpdatedAt)
522 if pb.ArchivedAt.Valid {
523 fmt.Printf("archived: %s\n", pb.ArchivedAt.String)
524 }
525
526 pbDir := filepath.Join(root, "playbooks", pb.Slug)
527 briefPath := filepath.Join(pbDir, "brief.md")
528 fmt.Printf("brief: %s\n", briefPath)
529
530 updates := listUpdateFiles(filepath.Join(pbDir, "updates"))
531 if len(updates) == 0 {
532 fmt.Println("updates: (none)")
533 } else {
534 fmt.Println("updates:")
535 for _, u := range updates {
536 fmt.Printf(" - %s\n", u)
537 }
538 }
539
540 // Recent runs (last 5).
541 runs, err := flowdb.ListTasks(db, flowdb.TaskFilter{
542 Kind: "playbook_run",
543 PlaybookSlug: pb.Slug,
544 })
545 if err != nil {
546 fmt.Fprintf(os.Stderr, "warning: list runs: %v\n", err)
547 }
548 if len(runs) == 0 {
549 fmt.Println("runs (last 5): (none)")

Callers 1

showPlaybookCmdFunction · 0.85

Calls 6

GetWorkdirFunction · 0.92
ListTasksFunction · 0.92
listUpdateFilesFunction · 0.85
statusAbbrevFunction · 0.85
enumerateAuxFilesFunction · 0.85
kbFilesFunction · 0.85

Tested by

no test coverage detected