From f09ba45754cccbda62bc928962227ef68a681192 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Fri, 8 Aug 2025 20:26:16 +0000 Subject: [PATCH 01/11] Add CLI documentation generator --- cmd/doc_gen.go | 242 ++++++++++++++++++++++++++++++++++++++++++++++ cmd/main.go | 8 ++ docs/app/_meta.js | 3 +- go.mod | 2 + go.sum | 2 + 5 files changed, 256 insertions(+), 1 deletion(-) create mode 100644 cmd/doc_gen.go diff --git a/cmd/doc_gen.go b/cmd/doc_gen.go new file mode 100644 index 000000000..e3bb041a9 --- /dev/null +++ b/cmd/doc_gen.go @@ -0,0 +1,242 @@ +package main + +import ( + "errors" + "fmt" + "os" + "path/filepath" + "sort" + "strings" + + "github.com/spf13/cobra/doc" + "golang.org/x/text/cases" + "golang.org/x/text/language" +) + +// generateCLIDocs creates per-command docs under the given directory. If the path +// is relative, it is resolved against the repository root (directory containing go.mod). +func generateCLIDocs(outputDir string) error { + resolvedDir, err := resolveOutputPath(outputDir) + if err != nil { + return err + } + + if err := os.MkdirAll(resolvedDir, 0o755); err != nil { + return err + } + + // Generate a markdown file per command, with custom file names and content wrapper + linkHandler := func(name string) string { + // Cobra passes names like "pelican_serve.md"; strip root prefix but keep underscores so we can group by tokens + base := strings.TrimSuffix(name, filepath.Ext(name)) + base = strings.TrimPrefix(base, "pelican_") + base = strings.TrimPrefix(base, "pelican-") + return base + ".mdx" + } + + filePrepender := func(filename string) string { + // Create a minimal MDX frontmatter; derive a title from filename + title := filename + if base := filepath.Base(filename); base != "" { + title = strings.TrimSuffix(base, filepath.Ext(base)) + title = strings.ReplaceAll(title, "_", " ") + title = strings.ReplaceAll(title, "-", " ") + title = cases.Title(language.English).String(title) + } + return fmt.Sprintf("---\ntitle: %s\n---\n\n", title) + } + + // Cobra writes files directly to the destination directory (with .md extension) + if err := doc.GenMarkdownTreeCustom(rootCmd, resolvedDir, filePrepender, linkHandler); err != nil { + return err + } + + // Rename generated .md files to .mdx so links and index work as expected + if err := renameMdToMdx(resolvedDir); err != nil { + return err + } + + // Group by command tokens: e.g., object/get -> object/get/page.mdx + if err := enforceAppRouterLayout(resolvedDir); err != nil { + return err + } + + // Ensure a landing page exists (Nextra v3 app dir expects page.mdx) + if _, err := writeIndexPage(resolvedDir); err != nil { + return err + } + + return nil +} + +// renameMdToMdx renames all .md files in dir to .mdx +func renameMdToMdx(dir string) error { + entries, err := os.ReadDir(dir) + if err != nil { + return err + } + for _, e := range entries { + if e.IsDir() { + continue + } + name := e.Name() + if filepath.Ext(name) != ".md" { + continue + } + oldPath := filepath.Join(dir, name) + newPath := filepath.Join(dir, strings.TrimSuffix(name, ".md")+".mdx") + if err := os.Rename(oldPath, newPath); err != nil { + return err + } + } + return nil +} + +// enforceAppRouterLayout moves each command .mdx into nested subfolders based on underscore tokens, ending with page.mdx +func enforceAppRouterLayout(dir string) error { + entries, err := os.ReadDir(dir) + if err != nil { + return err + } + for _, e := range entries { + if e.IsDir() { + continue + } + name := e.Name() + if filepath.Ext(name) != ".mdx" || name == "page.mdx" { + continue + } + base := strings.TrimSuffix(name, ".mdx") + // Build nested path from underscore-delimited tokens + segments := strings.Split(base, "_") + if len(segments) == 0 { + continue + } + // Create nested directory path + targetDir := filepath.Join(append([]string{dir}, segments...)...) + if err := os.MkdirAll(targetDir, 0o755); err != nil { + return err + } + src := filepath.Join(dir, name) + dst := filepath.Join(targetDir, "page.mdx") + _ = os.Remove(dst) + if err := os.Rename(src, dst); err != nil { + return err + } + } + return nil +} + +// writeIndexPage creates a page.mdx that links to all generated command pages and returns the list of slugs (top-level groups). +func writeIndexPage(dir string) ([]string, error) { + entries, err := os.ReadDir(dir) + if err != nil { + return nil, err + } + + var groups []string + for _, e := range entries { + if !e.IsDir() { + continue + } + if fileExists(filepath.Join(dir, e.Name(), "page.mdx")) { + groups = append(groups, e.Name()) + } + } + sort.Strings(groups) + + var b strings.Builder + b.WriteString("---\ntitle: Commands Reference\n---\n\n") + b.WriteString("The following CLI commands are available.\n\n") + for _, group := range groups { + groupTitle := cases.Title(language.English).String(strings.ReplaceAll(strings.ReplaceAll(group, "-", " "), "_", " ")) + b.WriteString(fmt.Sprintf("- [%s](./%s/)\n", groupTitle, group)) + // List children recursively + if err := writeNestedList(&b, filepath.Join(dir, group), " ", fmt.Sprintf("./%s/", group)); err != nil { + return nil, err + } + } + b.WriteString("\n") + + if err := os.WriteFile(filepath.Join(dir, "page.mdx"), []byte(b.String()), 0o644); err != nil { + return nil, err + } + return groups, nil +} + +func writeNestedList(b *strings.Builder, currentDir string, indent string, baseHref string) error { + entries, err := os.ReadDir(currentDir) + if err != nil { + return err + } + var children []string + for _, e := range entries { + if !e.IsDir() { + continue + } + if fileExists(filepath.Join(currentDir, e.Name(), "page.mdx")) { + children = append(children, e.Name()) + } + } + sort.Strings(children) + for _, child := range children { + childTitle := cases.Title(language.English).String(strings.ReplaceAll(strings.ReplaceAll(child, "-", " "), "_", " ")) + b.WriteString(fmt.Sprintf("%s- [%s](%s%s/)\n", indent, childTitle, baseHref, child)) + // Recurse further + if err := writeNestedList(b, filepath.Join(currentDir, child), indent+" ", baseHref+child+"/"); err != nil { + return err + } + } + return nil +} + +// resolveOutputPath returns an absolute path for the output. If the provided path +// is absolute, it is returned as-is. If it is relative, we attempt to resolve it +// relative to the repository root (detected by locating go.mod). If no repo root +// can be determined, it is resolved relative to the current working directory. +func resolveOutputPath(path string) (string, error) { + if filepath.IsAbs(path) { + return path, nil + } + + repoRoot, err := findRepoRoot() + if err == nil && repoRoot != "" { + return filepath.Join(repoRoot, path), nil + } + + cwd, err := os.Getwd() + if err != nil { + return "", err + } + return filepath.Join(cwd, path), nil +} + +// findRepoRoot walks up from the current working directory to find a directory +// containing go.mod and returns that directory path. +func findRepoRoot() (string, error) { + cwd, err := os.Getwd() + if err != nil { + return "", err + } + + dir := cwd + for { + if fileExists(filepath.Join(dir, "go.mod")) { + return dir, nil + } + + parent := filepath.Dir(dir) + if parent == dir { // reached filesystem root + return "", errors.New("repository root not found (no go.mod)") + } + dir = parent + } +} + +func fileExists(path string) bool { + info, err := os.Stat(path) + if err != nil { + return false + } + return !info.IsDir() +} diff --git a/cmd/main.go b/cmd/main.go index 616ec8cab..8c9316b3b 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -32,9 +32,17 @@ import ( "github.com/pelicanplatform/pelican/server_utils" ) +//go:generate go run . generate-docs func main() { logging.SetupLogBuffering() defer logging.FlushLogs(false) + if len(os.Args) > 1 && os.Args[1] == "generate-docs" { + err := generateCLIDocs("docs/app/commands-reference") + if err != nil { + os.Exit(1) + } + return + } err := handleCLI(os.Args) if err != nil { os.Exit(1) diff --git a/docs/app/_meta.js b/docs/app/_meta.js index ce44b4cdf..62cde7a4c 100644 --- a/docs/app/_meta.js +++ b/docs/app/_meta.js @@ -9,5 +9,6 @@ export default { "monitoring-pelican-services": "Monitoring Pelican Services", "advanced-usage": "Advanced Usage", "faq": "FAQs and Troubleshooting", - "api-docs": "API Documentation" + "api-docs": "API Documentation", + "commands-reference": "Commands Reference" } diff --git a/go.mod b/go.mod index a7ec7007a..030ee769d 100644 --- a/go.mod +++ b/go.mod @@ -61,6 +61,7 @@ require ( github.com/aymerick/douceur v0.2.0 // indirect github.com/charmbracelet/lipgloss v0.12.1 // indirect github.com/charmbracelet/x/ansi v0.1.4 // indirect + github.com/cpuguy83/go-md2man/v2 v2.0.6 // indirect github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect github.com/dlclark/regexp2 v1.11.0 // indirect github.com/glebarez/go-sqlite v1.21.2 // indirect @@ -83,6 +84,7 @@ require ( github.com/muesli/reflow v0.3.0 // indirect github.com/muesli/termenv v0.15.3-0.20240618155329-98d742f6907a // indirect github.com/redis/go-redis/v9 v9.0.2 // indirect + github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sagikazarmark/locafero v0.6.0 // indirect github.com/sethvargo/go-retry v0.2.4 // indirect github.com/sourcegraph/conc v0.3.0 // indirect diff --git a/go.sum b/go.sum index f320ec070..ed328c9b5 100644 --- a/go.sum +++ b/go.sum @@ -136,6 +136,7 @@ github.com/containerd/continuity v0.4.3 h1:6HVkalIp+2u1ZLH1J/pYX2oBVXlJZvh1X1A7b github.com/containerd/continuity v0.4.3/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ= github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs= github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0= github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/cyphar/filepath-securejoin v0.4.1 h1:JyxxyPEaktOD+GAnqIqTf9A8tHyAG22rowi7HkoSU1s= @@ -679,6 +680,7 @@ github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sagikazarmark/locafero v0.6.0 h1:ON7AQg37yzcRPU69mt7gwhFEBwxI6P9T4Qu3N51bwOk= github.com/sagikazarmark/locafero v0.6.0/go.mod h1:77OmuIc6VTraTXKXIs/uvUxKGUXjE1GbemJYHqdNjX0= From 0e53979017cbe69dc13391c3115b76d52a12db43 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Mon, 8 Sep 2025 19:50:56 +0000 Subject: [PATCH 02/11] Try adding placeholder from generate package --- cmd/doc_gen.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/cmd/doc_gen.go b/cmd/doc_gen.go index e3bb041a9..c40437ab9 100644 --- a/cmd/doc_gen.go +++ b/cmd/doc_gen.go @@ -3,6 +3,7 @@ package main import ( "errors" "fmt" + "log" "os" "path/filepath" "sort" @@ -13,9 +14,26 @@ import ( "golang.org/x/text/language" ) +// copied from generate/next_generator.go +func GenPlaceholderPathForNext() { + dir := "../web_ui/frontend/out" + if err := os.MkdirAll(dir, 0755); err != nil { + log.Fatalf("error: %v", err) + } + + filePath := filepath.Join(dir, "placeholder") + + file, err := os.Create(filePath) + if err != nil { + log.Fatalf("error: %v", err) + } + file.Close() +} + // generateCLIDocs creates per-command docs under the given directory. If the path // is relative, it is resolved against the repository root (directory containing go.mod). func generateCLIDocs(outputDir string) error { + GenPlaceholderPathForNext() resolvedDir, err := resolveOutputPath(outputDir) if err != nil { return err From a8a2b936bba9a0f37e7d8c41a9fd1552db10adc6 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Mon, 8 Sep 2025 20:01:24 +0000 Subject: [PATCH 03/11] Trying to fix actions --- .github/workflows/go-generate-check.yml | 5 +++++ .github/workflows/pre-commit-linter.yml | 3 ++- .github/workflows/test-linux.yml | 2 ++ .github/workflows/test-macos-windows.yml | 4 ++++ 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/workflows/go-generate-check.yml b/.github/workflows/go-generate-check.yml index 70edfd292..5efd3e707 100644 --- a/.github/workflows/go-generate-check.yml +++ b/.github/workflows/go-generate-check.yml @@ -13,6 +13,11 @@ jobs: with: go-version: "1.23" + - name: Create frontend export placeholder + run: | + mkdir -p web_ui/frontend/out + touch web_ui/frontend/out/placeholder + - name: Run Go Generate run: go generate ./... diff --git a/.github/workflows/pre-commit-linter.yml b/.github/workflows/pre-commit-linter.yml index 27257dbb1..28a273139 100644 --- a/.github/workflows/pre-commit-linter.yml +++ b/.github/workflows/pre-commit-linter.yml @@ -27,7 +27,8 @@ jobs: - name: Generate placeholder files id: generate-placeholder run: | - go generate ./... + mkdir -p web_ui/frontend/out + touch web_ui/frontend/out/placeholder - name: Set up Python uses: actions/setup-python@v5 diff --git a/.github/workflows/test-linux.yml b/.github/workflows/test-linux.yml index 52345b2ba..443fc50b0 100644 --- a/.github/workflows/test-linux.yml +++ b/.github/workflows/test-linux.yml @@ -63,6 +63,8 @@ jobs: ${{ runner.os }}-go- - name: Test run: | + mkdir -p web_ui/frontend/out + touch web_ui/frontend/out/placeholder make web-build # Disabling until we are able to make it more reliable -- shouldn't punish other folks for challenging tests! #go test -timeout 15m -coverpkg=./director -covermode=count -coverprofile=${{ matrix.coverprofile }} -tags=${{ matrix.tags }} ./director -run TestStatMemory diff --git a/.github/workflows/test-macos-windows.yml b/.github/workflows/test-macos-windows.yml index ded3bb344..92df70476 100644 --- a/.github/workflows/test-macos-windows.yml +++ b/.github/workflows/test-macos-windows.yml @@ -72,6 +72,8 @@ jobs: - name: Test macOS if: runner.os == 'macOS' run: | + mkdir -p web_ui/frontend/out + touch web_ui/frontend/out/placeholder make web-build #go test -timeout 15m -coverpkg=./director -covermode=count -coverprofile=coverage.out ./director -run TestStatMemory go test -p=4 -timeout 15m -coverpkg=./... -covermode=count -coverprofile=coverage.out ./... -skip TestStatMemory @@ -83,6 +85,8 @@ jobs: GOMODCACHE: D:\gomodcache GOTMPDIR: D:\gotmp run: | + mkdir -p web_ui/frontend/out + echo. > web_ui/frontend/out/placeholder make web-build go test -p=4 -timeout 15m -coverpkg=./... -covermode=count -coverprofile=coverage.out ./... - name: Run GoReleaser for macOS From 476b027c3386fca9baecf9adc96e6b0332b15610 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Mon, 8 Sep 2025 20:21:15 +0000 Subject: [PATCH 04/11] Add placeholder to Dockerfile --- images/Dockerfile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/images/Dockerfile b/images/Dockerfile index 44159b7aa..0534ec5ef 100644 --- a/images/Dockerfile +++ b/images/Dockerfile @@ -142,6 +142,10 @@ RUN --mount=type=cache,id=go-cache,target=/root/.cache/go-build,sharing=shared \ set -eux + # Create frontend placeholder to satisfy go:embed pattern + mkdir -p web_ui/frontend/out + touch web_ui/frontend/out/placeholder + if ${IS_NONRELEASE_BUILD}; then goreleaser build --clean --single-target --snapshot else From c7a1a107faabca6dc35380e1aea407fbd679d7c2 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Mon, 8 Sep 2025 20:25:38 +0000 Subject: [PATCH 05/11] Try to fix powershell --- .github/workflows/test-macos-windows.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-macos-windows.yml b/.github/workflows/test-macos-windows.yml index 92df70476..b97b15a68 100644 --- a/.github/workflows/test-macos-windows.yml +++ b/.github/workflows/test-macos-windows.yml @@ -86,7 +86,7 @@ jobs: GOTMPDIR: D:\gotmp run: | mkdir -p web_ui/frontend/out - echo. > web_ui/frontend/out/placeholder + New-Item -Path web_ui/frontend/out/placeholder -ItemType File -Force make web-build go test -p=4 -timeout 15m -coverpkg=./... -covermode=count -coverprofile=coverage.out ./... - name: Run GoReleaser for macOS From fcceb20ee4ddce939e9602db03df12f5743d1ce8 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Tue, 9 Sep 2025 20:24:52 +0000 Subject: [PATCH 06/11] Fixed links and removed the index page --- cmd/doc_gen.go | 78 ++++---------------------------------------------- 1 file changed, 6 insertions(+), 72 deletions(-) diff --git a/cmd/doc_gen.go b/cmd/doc_gen.go index c40437ab9..0fa59adb9 100644 --- a/cmd/doc_gen.go +++ b/cmd/doc_gen.go @@ -6,7 +6,6 @@ import ( "log" "os" "path/filepath" - "sort" "strings" "github.com/spf13/cobra/doc" @@ -43,13 +42,16 @@ func generateCLIDocs(outputDir string) error { return err } + docPathRoot := filepath.Base(outputDir) + // Generate a markdown file per command, with custom file names and content wrapper linkHandler := func(name string) string { // Cobra passes names like "pelican_serve.md"; strip root prefix but keep underscores so we can group by tokens base := strings.TrimSuffix(name, filepath.Ext(name)) - base = strings.TrimPrefix(base, "pelican_") - base = strings.TrimPrefix(base, "pelican-") - return base + ".mdx" + path := strings.ReplaceAll(base, "_", "/") + // Must be an absolute path from the site root + result := fmt.Sprintf("/%s/%s/", docPathRoot, path) + return result } filePrepender := func(filename string) string { @@ -79,11 +81,6 @@ func generateCLIDocs(outputDir string) error { return err } - // Ensure a landing page exists (Nextra v3 app dir expects page.mdx) - if _, err := writeIndexPage(resolvedDir); err != nil { - return err - } - return nil } @@ -145,69 +142,6 @@ func enforceAppRouterLayout(dir string) error { return nil } -// writeIndexPage creates a page.mdx that links to all generated command pages and returns the list of slugs (top-level groups). -func writeIndexPage(dir string) ([]string, error) { - entries, err := os.ReadDir(dir) - if err != nil { - return nil, err - } - - var groups []string - for _, e := range entries { - if !e.IsDir() { - continue - } - if fileExists(filepath.Join(dir, e.Name(), "page.mdx")) { - groups = append(groups, e.Name()) - } - } - sort.Strings(groups) - - var b strings.Builder - b.WriteString("---\ntitle: Commands Reference\n---\n\n") - b.WriteString("The following CLI commands are available.\n\n") - for _, group := range groups { - groupTitle := cases.Title(language.English).String(strings.ReplaceAll(strings.ReplaceAll(group, "-", " "), "_", " ")) - b.WriteString(fmt.Sprintf("- [%s](./%s/)\n", groupTitle, group)) - // List children recursively - if err := writeNestedList(&b, filepath.Join(dir, group), " ", fmt.Sprintf("./%s/", group)); err != nil { - return nil, err - } - } - b.WriteString("\n") - - if err := os.WriteFile(filepath.Join(dir, "page.mdx"), []byte(b.String()), 0o644); err != nil { - return nil, err - } - return groups, nil -} - -func writeNestedList(b *strings.Builder, currentDir string, indent string, baseHref string) error { - entries, err := os.ReadDir(currentDir) - if err != nil { - return err - } - var children []string - for _, e := range entries { - if !e.IsDir() { - continue - } - if fileExists(filepath.Join(currentDir, e.Name(), "page.mdx")) { - children = append(children, e.Name()) - } - } - sort.Strings(children) - for _, child := range children { - childTitle := cases.Title(language.English).String(strings.ReplaceAll(strings.ReplaceAll(child, "-", " "), "_", " ")) - b.WriteString(fmt.Sprintf("%s- [%s](%s%s/)\n", indent, childTitle, baseHref, child)) - // Recurse further - if err := writeNestedList(b, filepath.Join(currentDir, child), indent+" ", baseHref+child+"/"); err != nil { - return err - } - } - return nil -} - // resolveOutputPath returns an absolute path for the output. If the provided path // is absolute, it is returned as-is. If it is relative, we attempt to resolve it // relative to the repository root (detected by locating go.mod). If no repo root From c3d223961cf15ea0d77f8b176822f78c115bc063 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Tue, 9 Sep 2025 20:30:45 +0000 Subject: [PATCH 07/11] Remove generated tag --- cmd/root.go | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/root.go b/cmd/root.go index a943e4690..70ca350fe 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -149,6 +149,7 @@ func init() { rootCmd.AddCommand(config_printer.ConfigCmd) preferredPrefix := config.GetPreferredPrefix() rootCmd.Use = strings.ToLower(preferredPrefix.String()) + rootCmd.DisableAutoGenTag = true rootCmd.PersistentFlags().StringVar(&cfgFile, "config", "", "config file (default is $HOME/.config/pelican/pelican.yaml)") From 11c5b7a5f4414ea2475564307ae67753c5734b6a Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Tue, 9 Sep 2025 20:42:47 +0000 Subject: [PATCH 08/11] Clean up white space --- cmd/doc_gen.go | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/cmd/doc_gen.go b/cmd/doc_gen.go index 0fa59adb9..098603daa 100644 --- a/cmd/doc_gen.go +++ b/cmd/doc_gen.go @@ -3,6 +3,7 @@ package main import ( "errors" "fmt" + "io/fs" "log" "os" "path/filepath" @@ -81,6 +82,10 @@ func generateCLIDocs(outputDir string) error { return err } + if err := postProcessMdxFiles(resolvedDir); err != nil { + return err + } + return nil } @@ -192,3 +197,42 @@ func fileExists(path string) bool { } return !info.IsDir() } + +func postProcessMdxFiles(dir string) error { + return filepath.WalkDir(dir, func(path string, d fs.DirEntry, err error) error { + if err != nil { + return err + } + if !d.IsDir() && strings.HasSuffix(d.Name(), ".mdx") { + content, err := os.ReadFile(path) + if err != nil { + return err + } + + if len(content) == 0 { + return nil + } + + // Trim trailing spaces on each line + lines := strings.Split(string(content), "\n") + for i, line := range lines { + lines[i] = strings.TrimRight(line, " \t") + } + fullContent := strings.Join(lines, "\n") + + // Ensure single newline at EOF + fullContent = strings.TrimRight(fullContent, "\n") + "\n" + + if string(content) != fullContent { + info, err := d.Info() + if err != nil { + return err + } + if err := os.WriteFile(path, []byte(fullContent), info.Mode()); err != nil { + return err + } + } + } + return nil + }) +} From 70b732e70f48b5c4ed4760c565b7f5df4a2fed73 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Tue, 9 Sep 2025 20:44:04 +0000 Subject: [PATCH 09/11] Add documentation --- .../commands-reference/pelican/cache/page.mdx | 29 ++++++++++ .../pelican/cache/serve/page.mdx | 33 +++++++++++ .../pelican/config/describe/page.mdx | 44 +++++++++++++++ .../pelican/config/dump/page.mdx | 44 +++++++++++++++ .../pelican/config/get/page.mdx | 51 +++++++++++++++++ .../pelican/config/page.mdx | 36 ++++++++++++ .../pelican/config/summary/page.mdx | 44 +++++++++++++++ .../pelican/credentials/page.mdx | 33 +++++++++++ .../pelican/credentials/prefix/add/page.mdx | 36 ++++++++++++ .../credentials/prefix/delete/page.mdx | 36 ++++++++++++ .../pelican/credentials/prefix/page.mdx | 36 ++++++++++++ .../pelican/credentials/prefix/print/page.mdx | 36 ++++++++++++ .../pelican/credentials/prefix/set/page.mdx | 36 ++++++++++++ .../pelican/credentials/print/page.mdx | 36 ++++++++++++ .../pelican/credentials/replace/page.mdx | 36 ++++++++++++ .../credentials/reset-password/page.mdx | 36 ++++++++++++ .../pelican/credentials/token/get/page.mdx | 36 ++++++++++++ .../pelican/credentials/token/page.mdx | 33 +++++++++++ .../pelican/director/page.mdx | 41 ++++++++++++++ .../pelican/director/serve/page.mdx | 34 ++++++++++++ .../pelican/downtime/create/page.mdx | 38 +++++++++++++ .../pelican/downtime/delete/page.mdx | 38 +++++++++++++ .../pelican/downtime/list/page.mdx | 42 ++++++++++++++ .../pelican/downtime/page.mdx | 40 ++++++++++++++ .../pelican/downtime/update/page.mdx | 38 +++++++++++++ .../pelican/generate/page.mdx | 29 ++++++++++ .../pelican/generate/password/page.mdx | 42 ++++++++++++++ .../pelican/key/create/page.mdx | 40 ++++++++++++++ .../commands-reference/pelican/key/page.mdx | 29 ++++++++++ .../pelican/namespace/delete/page.mdx | 36 ++++++++++++ .../pelican/namespace/list/page.mdx | 35 ++++++++++++ .../pelican/namespace/page.mdx | 34 ++++++++++++ .../pelican/namespace/register/page.mdx | 37 +++++++++++++ .../pelican/object/copy/page.mdx | 38 +++++++++++++ .../pelican/object/get/page.mdx | 39 +++++++++++++ .../pelican/object/ls/page.mdx | 37 +++++++++++++ .../pelican/object/page.mdx | 36 ++++++++++++ .../pelican/object/put/page.mdx | 39 +++++++++++++ .../pelican/object/share/page.mdx | 34 ++++++++++++ .../pelican/object/stat/page.mdx | 34 ++++++++++++ .../pelican/object/sync/page.mdx | 35 ++++++++++++ .../pelican/origin/config/page.mdx | 32 +++++++++++ .../pelican/origin/page.mdx | 32 +++++++++++ .../pelican/origin/serve/page.mdx | 44 +++++++++++++++ .../pelican/origin/token/create/page.mdx | 55 +++++++++++++++++++ .../pelican/origin/token/page.mdx | 31 +++++++++++ .../pelican/origin/token/verify/page.mdx | 33 +++++++++++ .../pelican/origin/web-ui/page.mdx | 29 ++++++++++ .../origin/web-ui/reset-password/page.mdx | 34 ++++++++++++ docs/app/commands-reference/pelican/page.mdx | 41 ++++++++++++++ .../pelican/plugin/page.mdx | 30 ++++++++++ .../pelican/plugin/stage/page.mdx | 37 +++++++++++++ .../pelican/plugin/transfer/page.mdx | 32 +++++++++++ .../pelican/registry/page.mdx | 46 ++++++++++++++++ .../pelican/registry/serve/page.mdx | 33 +++++++++++ .../pelican/token/create/page.mdx | 51 +++++++++++++++++ .../commands-reference/pelican/token/page.mdx | 29 ++++++++++ 57 files changed, 2105 insertions(+) create mode 100644 docs/app/commands-reference/pelican/cache/page.mdx create mode 100644 docs/app/commands-reference/pelican/cache/serve/page.mdx create mode 100644 docs/app/commands-reference/pelican/config/describe/page.mdx create mode 100644 docs/app/commands-reference/pelican/config/dump/page.mdx create mode 100644 docs/app/commands-reference/pelican/config/get/page.mdx create mode 100644 docs/app/commands-reference/pelican/config/page.mdx create mode 100644 docs/app/commands-reference/pelican/config/summary/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/prefix/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/print/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/replace/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/reset-password/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/token/get/page.mdx create mode 100644 docs/app/commands-reference/pelican/credentials/token/page.mdx create mode 100644 docs/app/commands-reference/pelican/director/page.mdx create mode 100644 docs/app/commands-reference/pelican/director/serve/page.mdx create mode 100644 docs/app/commands-reference/pelican/downtime/create/page.mdx create mode 100644 docs/app/commands-reference/pelican/downtime/delete/page.mdx create mode 100644 docs/app/commands-reference/pelican/downtime/list/page.mdx create mode 100644 docs/app/commands-reference/pelican/downtime/page.mdx create mode 100644 docs/app/commands-reference/pelican/downtime/update/page.mdx create mode 100644 docs/app/commands-reference/pelican/generate/page.mdx create mode 100644 docs/app/commands-reference/pelican/generate/password/page.mdx create mode 100644 docs/app/commands-reference/pelican/key/create/page.mdx create mode 100644 docs/app/commands-reference/pelican/key/page.mdx create mode 100644 docs/app/commands-reference/pelican/namespace/delete/page.mdx create mode 100644 docs/app/commands-reference/pelican/namespace/list/page.mdx create mode 100644 docs/app/commands-reference/pelican/namespace/page.mdx create mode 100644 docs/app/commands-reference/pelican/namespace/register/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/copy/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/get/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/ls/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/put/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/share/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/stat/page.mdx create mode 100644 docs/app/commands-reference/pelican/object/sync/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/config/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/serve/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/token/create/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/token/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/token/verify/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/web-ui/page.mdx create mode 100644 docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx create mode 100644 docs/app/commands-reference/pelican/page.mdx create mode 100644 docs/app/commands-reference/pelican/plugin/page.mdx create mode 100644 docs/app/commands-reference/pelican/plugin/stage/page.mdx create mode 100644 docs/app/commands-reference/pelican/plugin/transfer/page.mdx create mode 100644 docs/app/commands-reference/pelican/registry/page.mdx create mode 100644 docs/app/commands-reference/pelican/registry/serve/page.mdx create mode 100644 docs/app/commands-reference/pelican/token/create/page.mdx create mode 100644 docs/app/commands-reference/pelican/token/page.mdx diff --git a/docs/app/commands-reference/pelican/cache/page.mdx b/docs/app/commands-reference/pelican/cache/page.mdx new file mode 100644 index 000000000..866a0e842 --- /dev/null +++ b/docs/app/commands-reference/pelican/cache/page.mdx @@ -0,0 +1,29 @@ +--- +title: Pelican Cache +--- + +## pelican cache + +Operate a Pelican cache service + +### Options + +``` + -h, --help help for cache +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican cache serve](/commands-reference/pelican/cache/serve/) - Start the cache service diff --git a/docs/app/commands-reference/pelican/cache/serve/page.mdx b/docs/app/commands-reference/pelican/cache/serve/page.mdx new file mode 100644 index 000000000..db64a1b6a --- /dev/null +++ b/docs/app/commands-reference/pelican/cache/serve/page.mdx @@ -0,0 +1,33 @@ +--- +title: Pelican Cache Serve +--- + +## pelican cache serve + +Start the cache service + +``` +pelican cache serve [flags] +``` + +### Options + +``` + -h, --help help for serve + -p, --port uint16 Set the port at which the web server should be accessible +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican cache](/commands-reference/pelican/cache/) - Operate a Pelican cache service diff --git a/docs/app/commands-reference/pelican/config/describe/page.mdx b/docs/app/commands-reference/pelican/config/describe/page.mdx new file mode 100644 index 000000000..c260ed76f --- /dev/null +++ b/docs/app/commands-reference/pelican/config/describe/page.mdx @@ -0,0 +1,44 @@ +--- +title: Pelican Config Describe +--- + +## pelican config describe + +Print documentation for the specified config parameter + +### Synopsis + +The 'describe' command prints detailed documentation for a specified configuration parameter, +including its type, default value, description, related components, and whether it is deprecated or hidden. + +``` +pelican config describe [parameter] [flags] +``` + +### Examples + +``` +# View documentation for the Server.WebPort parameter +pelican config describe server.webPort +``` + +### Options + +``` + -h, --help help for describe +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/config/dump/page.mdx b/docs/app/commands-reference/pelican/config/dump/page.mdx new file mode 100644 index 000000000..11dc19765 --- /dev/null +++ b/docs/app/commands-reference/pelican/config/dump/page.mdx @@ -0,0 +1,44 @@ +--- +title: Pelican Config Dump +--- + +## pelican config dump + +Dump all configuration parameters + +### Synopsis + +The 'dump' command outputs all current configuration parameters and their values to the console. This includes default values that have not been explicitly set. + +``` +pelican config dump [flags] +``` + +### Examples + +``` +# Dump all configuration parameters +pelican config dump +``` + +### Options + +``` + -o, --format string Output format (yaml or json) (default "yaml") + -h, --help help for dump +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/config/get/page.mdx b/docs/app/commands-reference/pelican/config/get/page.mdx new file mode 100644 index 000000000..daace5e89 --- /dev/null +++ b/docs/app/commands-reference/pelican/config/get/page.mdx @@ -0,0 +1,51 @@ +--- +title: Pelican Config Get +--- + +## pelican config get + +Retrieve config parameters that match any of the given arguments + +### Synopsis + +The 'get' command retrieves and displays configuration parameters that contain any of the provided argument patterns in their name or value. +The search space can be narrowed or expanded using available flags. The matching is case-insensitive. +If no arguments are provided, all configuration parameters are retrieved. +The command outputs the results in a flattened format from the nested configuration, making it grep-friendly for easier searching. + +``` +pelican config get [arguments] [flags] +``` + +### Examples + +``` +# Retrieve parameters that have either 'log' or 'monitor' in their name or value, +# and relate to either 'origin' or 'cache', including deprecated parameters in the search space +pelican config get log monitor -m origin -m cache --include-deprecated +``` + +### Options + +``` + --exact-match Match configuration parameter names exactly instead of using substring matching + -h, --help help for get + --include-deprecated Include deprecated configuration parameters + --include-hidden Include hidden configuration parameters + -m, --module config get Specify modules to filter the output of config get. The recognized modules are `client`, `registry`, `director`, `origin`, `cache`, and `localcache`. Multiple modules can be specified at the same time, for example: `config get -m cache -m origin`. If multiple modules are provided, parameters related to any of the modules will be retrieved. If no modules are specified, no module-based filter is applied to the search space. +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/config/page.mdx b/docs/app/commands-reference/pelican/config/page.mdx new file mode 100644 index 000000000..50fbc196d --- /dev/null +++ b/docs/app/commands-reference/pelican/config/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Config +--- + +## pelican config + +View and search for configuration parameters + +### Synopsis + +The 'config' command allows users to view, search, and see the documentation for various configuration parameters in the Pelican system. + +### Options + +``` + -h, --help help for config +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican config describe](/commands-reference/pelican/config/describe/) - Print documentation for the specified config parameter +* [pelican config dump](/commands-reference/pelican/config/dump/) - Dump all configuration parameters +* [pelican config get](/commands-reference/pelican/config/get/) - Retrieve config parameters that match any of the given arguments +* [pelican config summary](/commands-reference/pelican/config/summary/) - Print config parameters that differ from default values diff --git a/docs/app/commands-reference/pelican/config/summary/page.mdx b/docs/app/commands-reference/pelican/config/summary/page.mdx new file mode 100644 index 000000000..85850561d --- /dev/null +++ b/docs/app/commands-reference/pelican/config/summary/page.mdx @@ -0,0 +1,44 @@ +--- +title: Pelican Config Summary +--- + +## pelican config summary + +Print config parameters that differ from default values + +### Synopsis + +The 'summary' command outputs configuration parameters whose values differ from their default settings. + +``` +pelican config summary [flags] +``` + +### Examples + +``` +# Show configuration parameters that are set differently from their default values +pelican config summary +``` + +### Options + +``` + -o, --format string Output format (yaml or json) (default "yaml") + -h, --help help for summary +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/credentials/page.mdx b/docs/app/commands-reference/pelican/credentials/page.mdx new file mode 100644 index 000000000..9a45d411a --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/page.mdx @@ -0,0 +1,33 @@ +--- +title: Pelican Credentials +--- + +## pelican credentials + +Interact with the credential configuration file + +### Options + +``` + -h, --help help for credentials +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration +* [pelican credentials print](/commands-reference/pelican/credentials/print/) - Print the credential configuration file +* [pelican credentials replace](/commands-reference/pelican/credentials/replace/) - Replace the credential configuration file +* [pelican credentials reset-password](/commands-reference/pelican/credentials/reset-password/) - Reset the password for the current user +* [pelican credentials token](/commands-reference/pelican/credentials/token/) - Manage the available tokens diff --git a/docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx b/docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx new file mode 100644 index 000000000..e4e452589 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Prefix Add +--- + +## pelican credentials prefix add + +Add a new oauth client + +### Synopsis + +Add a new oauth client + +``` +pelican credentials prefix add [flags] +``` + +### Options + +``` + -h, --help help for add +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx b/docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx new file mode 100644 index 000000000..afa7618a1 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Prefix Delete +--- + +## pelican credentials prefix delete + +Delete the oauth client + +### Synopsis + +Delete the oauth client + +``` +pelican credentials prefix delete [flags] +``` + +### Options + +``` + -h, --help help for delete +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/prefix/page.mdx b/docs/app/commands-reference/pelican/credentials/prefix/page.mdx new file mode 100644 index 000000000..1d81f7094 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/prefix/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Prefix +--- + +## pelican credentials prefix + +Manage the prefix configuration + +### Synopsis + +Manage the prefix configuration + +### Options + +``` + -h, --help help for prefix +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file +* [pelican credentials prefix add](/commands-reference/pelican/credentials/prefix/add/) - Add a new oauth client +* [pelican credentials prefix delete](/commands-reference/pelican/credentials/prefix/delete/) - Delete the oauth client +* [pelican credentials prefix print](/commands-reference/pelican/credentials/prefix/print/) - Print the oauth client configuration file +* [pelican credentials prefix set](/commands-reference/pelican/credentials/prefix/set/) - Set the oauth client attributes diff --git a/docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx b/docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx new file mode 100644 index 000000000..988b4a340 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Prefix Print +--- + +## pelican credentials prefix print + +Print the oauth client configuration file + +### Synopsis + +Print the oauth client configuration file + +``` +pelican credentials prefix print [flags] +``` + +### Options + +``` + -h, --help help for print +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx b/docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx new file mode 100644 index 000000000..cd619f322 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Prefix Set +--- + +## pelican credentials prefix set + +Set the oauth client attributes + +### Synopsis + +Set the oauth client attributes (client_id or client_secret) + +``` +pelican credentials prefix set [flags] +``` + +### Options + +``` + -h, --help help for set +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/print/page.mdx b/docs/app/commands-reference/pelican/credentials/print/page.mdx new file mode 100644 index 000000000..cab77266f --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/print/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Print +--- + +## pelican credentials print + +Print the credential configuration file + +### Synopsis + +Print the credential configuration file + +``` +pelican credentials print [flags] +``` + +### Options + +``` + -h, --help help for print +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file diff --git a/docs/app/commands-reference/pelican/credentials/replace/page.mdx b/docs/app/commands-reference/pelican/credentials/replace/page.mdx new file mode 100644 index 000000000..ebca9bb89 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/replace/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Replace +--- + +## pelican credentials replace + +Replace the credential configuration file + +### Synopsis + +Replace the credential configuration file + +``` +pelican credentials replace [flags] +``` + +### Options + +``` + -h, --help help for replace +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file diff --git a/docs/app/commands-reference/pelican/credentials/reset-password/page.mdx b/docs/app/commands-reference/pelican/credentials/reset-password/page.mdx new file mode 100644 index 000000000..fa052b278 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/reset-password/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Reset Password +--- + +## pelican credentials reset-password + +Reset the password for the current user + +### Synopsis + +Reset the password for the current user + +``` +pelican credentials reset-password [flags] +``` + +### Options + +``` + -h, --help help for reset-password +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file diff --git a/docs/app/commands-reference/pelican/credentials/token/get/page.mdx b/docs/app/commands-reference/pelican/credentials/token/get/page.mdx new file mode 100644 index 000000000..364265a87 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/token/get/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Credentials Token Get +--- + +## pelican credentials token get + +Get a new token for a given prefix + +### Synopsis + +Get a new token for a given prefix + +``` +pelican credentials token get [flags] +``` + +### Options + +``` + -h, --help help for get +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials token](/commands-reference/pelican/credentials/token/) - Manage the available tokens diff --git a/docs/app/commands-reference/pelican/credentials/token/page.mdx b/docs/app/commands-reference/pelican/credentials/token/page.mdx new file mode 100644 index 000000000..4603eeb20 --- /dev/null +++ b/docs/app/commands-reference/pelican/credentials/token/page.mdx @@ -0,0 +1,33 @@ +--- +title: Pelican Credentials Token +--- + +## pelican credentials token + +Manage the available tokens + +### Synopsis + +Manage the available tokens + +### Options + +``` + -h, --help help for token +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file +* [pelican credentials token get](/commands-reference/pelican/credentials/token/get/) - Get a new token for a given prefix diff --git a/docs/app/commands-reference/pelican/director/page.mdx b/docs/app/commands-reference/pelican/director/page.mdx new file mode 100644 index 000000000..a4aabd9cf --- /dev/null +++ b/docs/app/commands-reference/pelican/director/page.mdx @@ -0,0 +1,41 @@ +--- +title: Pelican Director +--- + +## pelican director + +Launch a Pelican Director + +### Synopsis + +Launch a Pelican Director service: + + The Pelican Director is the primary mechanism by which clients/caches + can discover the source of a requested resource. It has two endpoints + at /api/v1.0/director/origin/ and /api/v1.0/director/object/, where the + former redirects to the closest origin supporting the object and the + latter redirects to the closest cache. As a shortcut, requests to the + director at /foo/bar will be treated as a request for the object from + cache. + +### Options + +``` + -h, --help help for director +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican director serve](/commands-reference/pelican/director/serve/) - serve the director service diff --git a/docs/app/commands-reference/pelican/director/serve/page.mdx b/docs/app/commands-reference/pelican/director/serve/page.mdx new file mode 100644 index 000000000..b14f0d5ba --- /dev/null +++ b/docs/app/commands-reference/pelican/director/serve/page.mdx @@ -0,0 +1,34 @@ +--- +title: Pelican Director Serve +--- + +## pelican director serve + +serve the director service + +``` +pelican director serve [flags] +``` + +### Options + +``` + --default-response string Set whether the default endpoint should redirect clients to caches or origins + -h, --help help for serve + -p, --port uint16 Set the port at which the web server should be accessible +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican director](/commands-reference/pelican/director/) - Launch a Pelican Director diff --git a/docs/app/commands-reference/pelican/downtime/create/page.mdx b/docs/app/commands-reference/pelican/downtime/create/page.mdx new file mode 100644 index 000000000..ff2ac5e70 --- /dev/null +++ b/docs/app/commands-reference/pelican/downtime/create/page.mdx @@ -0,0 +1,38 @@ +--- +title: Pelican Downtime Create +--- + +## pelican downtime create + +Create a new downtime period for the server + +### Synopsis + +Interactively prompt for downtime fields and send a POST request to create a new downtime period. + +``` +pelican downtime create [flags] +``` + +### Options + +``` + -h, --help help for create +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + -s, --server string Web URL of the Pelican server (e.g. https://my-origin.com:8447) + -t, --token string Path to the admin token file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/downtime/delete/page.mdx b/docs/app/commands-reference/pelican/downtime/delete/page.mdx new file mode 100644 index 000000000..bd9cad634 --- /dev/null +++ b/docs/app/commands-reference/pelican/downtime/delete/page.mdx @@ -0,0 +1,38 @@ +--- +title: Pelican Downtime Delete +--- + +## pelican downtime delete + +Delete a downtime period + +### Synopsis + +Delete the specified downtime period by UUID. Sends a DELETE request to the downtime API. + +``` +pelican downtime delete [uuid] [flags] +``` + +### Options + +``` + -h, --help help for delete +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + -s, --server string Web URL of the Pelican server (e.g. https://my-origin.com:8447) + -t, --token string Path to the admin token file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/downtime/list/page.mdx b/docs/app/commands-reference/pelican/downtime/list/page.mdx new file mode 100644 index 000000000..dce71e093 --- /dev/null +++ b/docs/app/commands-reference/pelican/downtime/list/page.mdx @@ -0,0 +1,42 @@ +--- +title: Pelican Downtime List +--- + +## pelican downtime list + +List server's scheduled downtime periods + +### Synopsis + +List scheduled downtime periods for a Pelican server (Origin/Cache). + Requires an administrative token for the server. + Shows active and future downtimes ('incomplete') by default. + +``` +pelican downtime list [flags] +``` + +### Options + +``` + -h, --help help for list + -o, --output string Output format (table, json, yaml) (default "table") + --status string Filter downtimes by status ('incomplete' shows active/future, 'all' shows all history) (default "incomplete") +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + -s, --server string Web URL of the Pelican server (e.g. https://my-origin.com:8447) + -t, --token string Path to the admin token file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/downtime/page.mdx b/docs/app/commands-reference/pelican/downtime/page.mdx new file mode 100644 index 000000000..aa9e945f5 --- /dev/null +++ b/docs/app/commands-reference/pelican/downtime/page.mdx @@ -0,0 +1,40 @@ +--- +title: Pelican Downtime +--- + +## pelican downtime + +Manage server's own downtime periods + +### Synopsis + +Provide commands to list, create, update, and delete scheduled downtime periods +for Pelican servers (Origins/Caches). These commands interact with the server's +administrative API endpoint. + +### Options + +``` + -h, --help help for downtime + -s, --server string Web URL of the Pelican server (e.g. https://my-origin.com:8447) + -t, --token string Path to the admin token file +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican downtime create](/commands-reference/pelican/downtime/create/) - Create a new downtime period for the server +* [pelican downtime delete](/commands-reference/pelican/downtime/delete/) - Delete a downtime period +* [pelican downtime list](/commands-reference/pelican/downtime/list/) - List server's scheduled downtime periods +* [pelican downtime update](/commands-reference/pelican/downtime/update/) - Update an existing downtime period diff --git a/docs/app/commands-reference/pelican/downtime/update/page.mdx b/docs/app/commands-reference/pelican/downtime/update/page.mdx new file mode 100644 index 000000000..b45434464 --- /dev/null +++ b/docs/app/commands-reference/pelican/downtime/update/page.mdx @@ -0,0 +1,38 @@ +--- +title: Pelican Downtime Update +--- + +## pelican downtime update + +Update an existing downtime period + +### Synopsis + +Interactively prompt for downtime fields and send a PUT request to update the specified downtime period. Press Enter without typing anything to leave a field unchanged. + +``` +pelican downtime update [uuid] [flags] +``` + +### Options + +``` + -h, --help help for update +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + -s, --server string Web URL of the Pelican server (e.g. https://my-origin.com:8447) + -t, --token string Path to the admin token file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/generate/page.mdx b/docs/app/commands-reference/pelican/generate/page.mdx new file mode 100644 index 000000000..66ff612d8 --- /dev/null +++ b/docs/app/commands-reference/pelican/generate/page.mdx @@ -0,0 +1,29 @@ +--- +title: Pelican Generate +--- + +## pelican generate + +Generate credentials for Pelican server + +### Options + +``` + -h, --help help for generate +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican generate password](/commands-reference/pelican/generate/password/) - Generate a Pelican admin website password file (htpasswd) diff --git a/docs/app/commands-reference/pelican/generate/password/page.mdx b/docs/app/commands-reference/pelican/generate/password/page.mdx new file mode 100644 index 000000000..cc8e7ddda --- /dev/null +++ b/docs/app/commands-reference/pelican/generate/password/page.mdx @@ -0,0 +1,42 @@ +--- +title: Pelican Generate Password +--- + +## pelican generate password + +Generate a Pelican admin website password file (htpasswd) + +### Synopsis + +Given a password for the admin website, generate the htpasswd file that Pelican server +uses to store the password and authenticate the admin user. You may put the generated file under +/etc/pelican with name "server-web-passwd", or change Server.UIPasswordFile +to the path to generated file to initialize the admin website. + + +``` +pelican generate password [flags] +``` + +### Options + +``` + -h, --help help for password + -o, --output string The path to the generate htpasswd password file. Default: ./server-web-passwd + -p, --password string The path to the file containing the password. Will take from terminal input if not provided +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican generate](/commands-reference/pelican/generate/) - Generate credentials for Pelican server diff --git a/docs/app/commands-reference/pelican/key/create/page.mdx b/docs/app/commands-reference/pelican/key/create/page.mdx new file mode 100644 index 000000000..c69dec064 --- /dev/null +++ b/docs/app/commands-reference/pelican/key/create/page.mdx @@ -0,0 +1,40 @@ +--- +title: Pelican Key Create +--- + +## pelican key create + +Generate a public-private key-pair for Pelican server + +### Synopsis + +Generate a public-private key-pair for a Pelican server. +The private key is an ECDSA key with P256 curve. The corresponding public key +is a JSON Web Key Set (JWKS), which can be used for JWT signature verification. + +``` +pelican key create [flags] +``` + +### Options + +``` + -h, --help help for create + --private-key string The file path where the generated private key will be saved. If a key already exists at the provided path, it will not be overwritten but will be used to derive a public key (default "./private-key.pem") + --public-key string The file path where the generated public key (derived from the generated private key) will be saved. (default "./issuer-pub.jwks") +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican key](/commands-reference/pelican/key/) - Manage Pelican issuer keys diff --git a/docs/app/commands-reference/pelican/key/page.mdx b/docs/app/commands-reference/pelican/key/page.mdx new file mode 100644 index 000000000..f19bcdc41 --- /dev/null +++ b/docs/app/commands-reference/pelican/key/page.mdx @@ -0,0 +1,29 @@ +--- +title: Pelican Key +--- + +## pelican key + +Manage Pelican issuer keys + +### Options + +``` + -h, --help help for key +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican key create](/commands-reference/pelican/key/create/) - Generate a public-private key-pair for Pelican server diff --git a/docs/app/commands-reference/pelican/namespace/delete/page.mdx b/docs/app/commands-reference/pelican/namespace/delete/page.mdx new file mode 100644 index 000000000..fa637fa8b --- /dev/null +++ b/docs/app/commands-reference/pelican/namespace/delete/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Namespace Delete +--- + +## pelican namespace delete + +Delete a namespace + +``` +pelican namespace delete [flags] +``` + +### Options + +``` + -h, --help help for delete + --prefix string prefix for delete namespace +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --namespace-url string Endpoint for the namespace registry + --privkey string Path to the private key + --pubkey string Path to the public key + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces diff --git a/docs/app/commands-reference/pelican/namespace/list/page.mdx b/docs/app/commands-reference/pelican/namespace/list/page.mdx new file mode 100644 index 000000000..677147bef --- /dev/null +++ b/docs/app/commands-reference/pelican/namespace/list/page.mdx @@ -0,0 +1,35 @@ +--- +title: Pelican Namespace List +--- + +## pelican namespace list + +List all namespaces + +``` +pelican namespace list [flags] +``` + +### Options + +``` + -h, --help help for list +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --namespace-url string Endpoint for the namespace registry + --privkey string Path to the private key + --pubkey string Path to the public key + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces diff --git a/docs/app/commands-reference/pelican/namespace/page.mdx b/docs/app/commands-reference/pelican/namespace/page.mdx new file mode 100644 index 000000000..3bf83b960 --- /dev/null +++ b/docs/app/commands-reference/pelican/namespace/page.mdx @@ -0,0 +1,34 @@ +--- +title: Pelican Namespace +--- + +## pelican namespace + +Work with namespaces + +### Options + +``` + -h, --help help for namespace + --namespace-url string Endpoint for the namespace registry + --privkey string Path to the private key + --pubkey string Path to the public key +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican namespace delete](/commands-reference/pelican/namespace/delete/) - Delete a namespace +* [pelican namespace list](/commands-reference/pelican/namespace/list/) - List all namespaces +* [pelican namespace register](/commands-reference/pelican/namespace/register/) - Register a new namespace diff --git a/docs/app/commands-reference/pelican/namespace/register/page.mdx b/docs/app/commands-reference/pelican/namespace/register/page.mdx new file mode 100644 index 000000000..62f36fcbf --- /dev/null +++ b/docs/app/commands-reference/pelican/namespace/register/page.mdx @@ -0,0 +1,37 @@ +--- +title: Pelican Namespace Register +--- + +## pelican namespace register + +Register a new namespace + +``` +pelican namespace register [flags] +``` + +### Options + +``` + -h, --help help for register + --prefix string prefix for registering namespace + --with-identity Register a namespace with an identity +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --namespace-url string Endpoint for the namespace registry + --privkey string Path to the private key + --pubkey string Path to the public key + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces diff --git a/docs/app/commands-reference/pelican/object/copy/page.mdx b/docs/app/commands-reference/pelican/object/copy/page.mdx new file mode 100644 index 000000000..b643a80f1 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/copy/page.mdx @@ -0,0 +1,38 @@ +--- +title: Pelican Object Copy +--- + +## pelican object copy + +Copy a file to/from a Pelican federation + +``` +pelican object copy {source ...} {destination} [flags] +``` + +### Options + +``` + -c, --cache string A comma-separated list of preferred caches to try for the transfer, where a "+" in the list indicates + the client should fallback to discovered caches if all preferred caches fail. + --caches string A JSON file containing the list of caches + -h, --help help for copy + --methods string Comma separated list of methods to try, in order (default "http") + -r, --recursive Recursively copy a collection. Forces methods to only be http to get the freshest collection contents + -t, --token string Token file to use for transfer +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/get/page.mdx b/docs/app/commands-reference/pelican/object/get/page.mdx new file mode 100644 index 000000000..35d32d104 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/get/page.mdx @@ -0,0 +1,39 @@ +--- +title: Pelican Object Get +--- + +## pelican object get + +Get a file from a Pelican federation + +``` +pelican object get {source ...} {destination} [flags] +``` + +### Options + +``` + -c, --cache string A comma-separated list of preferred caches to try for the transfer, where a "+" in the list indicates + the client should fallback to discovered caches if all preferred caches fail. + --caches string A JSON file containing the list of caches + -h, --help help for get + --pack string Package transfer using remote packing functionality (same as '?pack=' query). Options: auto, tar, tar.gz, tar.xz, zip. Default: auto when flag is provided without an explicit value + -r, --recursive Recursively download a collection. Forces methods to only be http to get the freshest collection contents + -t, --token string Token file to use for transfer + --transfer-stats string A path to a file to write transfer statistics to +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/ls/page.mdx b/docs/app/commands-reference/pelican/object/ls/page.mdx new file mode 100644 index 000000000..2d56ae886 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/ls/page.mdx @@ -0,0 +1,37 @@ +--- +title: Pelican Object Ls +--- + +## pelican object ls + +List objects in a namespace from a federation + +``` +pelican object ls {object} [flags] +``` + +### Options + +``` + -C, --collection-only List collections only + --collections-url string URL to use for collection listing, overriding the director's response + -h, --help help for ls + -j, --json Print results in JSON format + -l, --long Include extended information + -O, --object-only List objects only + -t, --token string Token file to use for transfer +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/page.mdx b/docs/app/commands-reference/pelican/object/page.mdx new file mode 100644 index 000000000..7e01387d2 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/page.mdx @@ -0,0 +1,36 @@ +--- +title: Pelican Object +--- + +## pelican object + +Interact with objects in the federation + +### Options + +``` + -h, --help help for object +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican object copy](/commands-reference/pelican/object/copy/) - Copy a file to/from a Pelican federation +* [pelican object get](/commands-reference/pelican/object/get/) - Get a file from a Pelican federation +* [pelican object ls](/commands-reference/pelican/object/ls/) - List objects in a namespace from a federation +* [pelican object put](/commands-reference/pelican/object/put/) - Send a file to a Pelican federation +* [pelican object share](/commands-reference/pelican/object/share/) - Generate a string for sharing access to a namespace. +Note the sharing is based on prefixes; all object names matching the prefix will be accessible +* [pelican object stat](/commands-reference/pelican/object/stat/) - Stat objects in a namespace from a federation +* [pelican object sync](/commands-reference/pelican/object/sync/) - Sync a directory to or from a Pelican federation diff --git a/docs/app/commands-reference/pelican/object/put/page.mdx b/docs/app/commands-reference/pelican/object/put/page.mdx new file mode 100644 index 000000000..e92fae382 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/put/page.mdx @@ -0,0 +1,39 @@ +--- +title: Pelican Object Put +--- + +## pelican object put + +Send a file to a Pelican federation + +``` +pelican object put {source ...} {destination} [flags] +``` + +### Options + +``` + --checksum-algorithm string Checksum algorithm to use for upload and validation + --checksums string Verify files against a checksums manifest. The format is ALGORITHM:FILENAME + -h, --help help for put + --pack string Package transfer using remote packing functionality (same as '?pack=' query). Options: auto, tar, tar.gz, tar.xz, zip. Default: auto when flag is provided without an explicit value + -r, --recursive Recursively upload a collection. Forces methods to only be http to get the freshest collection contents + --require-checksum Require the server to return a checksum for the uploaded file (uses crc32c algorithm if no specific algorithm is specified) + -t, --token string Token file to use for transfer + --transfer-stats string File to write transfer stats to +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/share/page.mdx b/docs/app/commands-reference/pelican/object/share/page.mdx new file mode 100644 index 000000000..99e2b89e7 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/share/page.mdx @@ -0,0 +1,34 @@ +--- +title: Pelican Object Share +--- + +## pelican object share + +Generate a string for sharing access to a namespace. +Note the sharing is based on prefixes; all object names matching the prefix will be accessible + +``` +pelican object share {URL} [flags] +``` + +### Options + +``` + -h, --help help for share + --write Allow writes to the target prefix +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/stat/page.mdx b/docs/app/commands-reference/pelican/object/stat/page.mdx new file mode 100644 index 000000000..f2b7b9eaa --- /dev/null +++ b/docs/app/commands-reference/pelican/object/stat/page.mdx @@ -0,0 +1,34 @@ +--- +title: Pelican Object Stat +--- + +## pelican object stat + +Stat objects in a namespace from a federation + +``` +pelican object stat {object} [flags] +``` + +### Options + +``` + --checksums stringArray Checksums to request from the server. Known values are: md5, crc32c, crc32, sha + -h, --help help for stat + -j, --json Print results in JSON format + -t, --token string Token file to use for transfer +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/sync/page.mdx b/docs/app/commands-reference/pelican/object/sync/page.mdx new file mode 100644 index 000000000..efc535bd3 --- /dev/null +++ b/docs/app/commands-reference/pelican/object/sync/page.mdx @@ -0,0 +1,35 @@ +--- +title: Pelican Object Sync +--- + +## pelican object sync + +Sync a directory to or from a Pelican federation + +``` +pelican object sync {source ...} {destination} [flags] +``` + +### Options + +``` + -c, --cache string A comma-separated list of preferred caches to try for the transfer, where a "+" in the list indicates + the client should fallback to discovered caches if all preferred caches fail. + -h, --help help for sync + -t, --token string Token file to use for transfer +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/origin/config/page.mdx b/docs/app/commands-reference/pelican/origin/config/page.mdx new file mode 100644 index 000000000..14b667ac4 --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/config/page.mdx @@ -0,0 +1,32 @@ +--- +title: Pelican Origin Config +--- + +## pelican origin config + +Launch the Pelican web service in configuration mode + +``` +pelican origin config [flags] +``` + +### Options + +``` + -h, --help help for config +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service diff --git a/docs/app/commands-reference/pelican/origin/page.mdx b/docs/app/commands-reference/pelican/origin/page.mdx new file mode 100644 index 000000000..ef24c78c3 --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/page.mdx @@ -0,0 +1,32 @@ +--- +title: Pelican Origin +--- + +## pelican origin + +Operate a Pelican origin service + +### Options + +``` + -h, --help help for origin +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican origin config](/commands-reference/pelican/origin/config/) - Launch the Pelican web service in configuration mode +* [pelican origin serve](/commands-reference/pelican/origin/serve/) - Start the origin service +* [pelican origin token](/commands-reference/pelican/origin/token/) - Manage Pelican origin tokens +* [pelican origin web-ui](/commands-reference/pelican/origin/web-ui/) - Manage the Pelican origin web UI diff --git a/docs/app/commands-reference/pelican/origin/serve/page.mdx b/docs/app/commands-reference/pelican/origin/serve/page.mdx new file mode 100644 index 000000000..5189a0437 --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/serve/page.mdx @@ -0,0 +1,44 @@ +--- +title: Pelican Origin Serve +--- + +## pelican origin serve + +Start the origin service + +``` +pelican origin serve [flags] +``` + +### Options + +``` + --bucket-access-keyfile string Specify a filepath to use for configuring the bucket's access key. + --bucket-secret-keyfile string Specify a filepath to use for configuring the bucket's access key. + -h, --help help for serve + --http-service-url string Specify the http(s) service-url. Only used when an origin is launched in https/globus modes. + --http-tokenfile string Specify a filepath to use for configuring the http(s) token. See documentation for details. + -m, --mode string Set the mode for the origin service (default is 'posix'). Supported modes are 'posix', 's3, 'https', 'globus' and 'xroot'. (default "posix") + -p, --port uint16 Set the port at which the web server should be accessible + --region string Specify the S3 region. Only used when an origin is launched in S3 mode. + --service-url string Specify the S3 service-url. Only used when an origin is launched in S3 mode. + --url-style string Specify the S3 url-style. Only used when an origin is launched in S3 mode, and can be either 'path' (default) or 'virtual. + -v, --volume strings Setting the volume to /SRC:/DEST will export the contents of /SRC as /DEST in the Pelican federation + --writeable Allow/disable writing to the origin (default true) + --xroot-service-url string When configured in xroot mode, specifies the hostname and port of the upstream xroot server (not to be mistaken with the current server's hostname). +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service diff --git a/docs/app/commands-reference/pelican/origin/token/create/page.mdx b/docs/app/commands-reference/pelican/origin/token/create/page.mdx new file mode 100644 index 000000000..68158d14d --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/token/create/page.mdx @@ -0,0 +1,55 @@ +--- +title: Pelican Origin Token Create +--- + +## pelican origin token create + +Create a Pelican origin token + +### Synopsis + +Create a JSON web token (JWT) using the origin's signing keys: +Usage: pelican origin token create [FLAGS] claims +E.g. pelican origin token create --profile scitokens2 aud=my-audience scope="read:/storage" scope="write:/storage" + +Pelican origins use JWTs as bearer tokens for authorizing specific requests, +such as reading from or writing to the origin's underlying storage, advertising +to a director, etc. For more information about the makeup of a JWT, see +https://jwt.io/introduction. + +Additional profiles that expand on JWT are supported. They include scitokens2 and +wlcg. For more information about these profiles, see https://scitokens.org/technical_docs/Claims +and https://github.com/WLCG-AuthZ-WG/common-jwt-profile/blob/master/profile.md, respectively + +``` +pelican origin token create [flags] +``` + +### Options + +``` + --audience strings The token's intended audience. + --claim strings Additional token claims. A claim must be of the form = + -h, --help help for create + --issuer string The URL of the token's issuer. If not provided, the tool will attempt to find one in the configuration file. + --lifetime int The lifetime of the token, in seconds. (default 1200) + --private-key string Filepath designating the location of the private key in PEM format to be used for signing, if different from the origin's default. + --scope strings Scopes for granting fine-grained permissions to the token. + --subject string The token's subject. +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --profile string Passing a profile ensures the token adheres to the profile's requirements. Accepted values are scitokens2 and wlcg (default "wlcg") + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin token](/commands-reference/pelican/origin/token/) - Manage Pelican origin tokens diff --git a/docs/app/commands-reference/pelican/origin/token/page.mdx b/docs/app/commands-reference/pelican/origin/token/page.mdx new file mode 100644 index 000000000..98f1d159e --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/token/page.mdx @@ -0,0 +1,31 @@ +--- +title: Pelican Origin Token +--- + +## pelican origin token + +Manage Pelican origin tokens + +### Options + +``` + -h, --help help for token + --profile string Passing a profile ensures the token adheres to the profile's requirements. Accepted values are scitokens2 and wlcg (default "wlcg") +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service +* [pelican origin token create](/commands-reference/pelican/origin/token/create/) - Create a Pelican origin token +* [pelican origin token verify](/commands-reference/pelican/origin/token/verify/) - Verify a Pelican origin token diff --git a/docs/app/commands-reference/pelican/origin/token/verify/page.mdx b/docs/app/commands-reference/pelican/origin/token/verify/page.mdx new file mode 100644 index 000000000..95a9091fa --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/token/verify/page.mdx @@ -0,0 +1,33 @@ +--- +title: Pelican Origin Token Verify +--- + +## pelican origin token verify + +Verify a Pelican origin token + +``` +pelican origin token verify [flags] +``` + +### Options + +``` + -h, --help help for verify +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --profile string Passing a profile ensures the token adheres to the profile's requirements. Accepted values are scitokens2 and wlcg (default "wlcg") + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin token](/commands-reference/pelican/origin/token/) - Manage Pelican origin tokens diff --git a/docs/app/commands-reference/pelican/origin/web-ui/page.mdx b/docs/app/commands-reference/pelican/origin/web-ui/page.mdx new file mode 100644 index 000000000..b2b9320d5 --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/web-ui/page.mdx @@ -0,0 +1,29 @@ +--- +title: Pelican Origin Web Ui +--- + +## pelican origin web-ui + +Manage the Pelican origin web UI + +### Options + +``` + -h, --help help for web-ui +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service +* [pelican origin web-ui reset-password](/commands-reference/pelican/origin/web-ui/reset-password/) - Reset the admin password for the web UI diff --git a/docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx b/docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx new file mode 100644 index 000000000..5c4ee7f9d --- /dev/null +++ b/docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx @@ -0,0 +1,34 @@ +--- +title: Pelican Origin Web Ui Reset Password +--- + +## pelican origin web-ui reset-password + +Reset the admin password for the web UI + +``` +pelican origin web-ui reset-password [flags] +``` + +### Options + +``` + -h, --help help for reset-password + --stdin Read the password in from stdin. + --user string The user whose password should be reset. (default "admin") +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican origin web-ui](/commands-reference/pelican/origin/web-ui/) - Manage the Pelican origin web UI diff --git a/docs/app/commands-reference/pelican/page.mdx b/docs/app/commands-reference/pelican/page.mdx new file mode 100644 index 000000000..0df7777a8 --- /dev/null +++ b/docs/app/commands-reference/pelican/page.mdx @@ -0,0 +1,41 @@ +--- +title: Pelican +--- + +## pelican + +Interact with data federations + +### Synopsis + +The pelican software allows one to build and interact +with data federations, enabling the sharing of objects and collections +across multiple dataset providers. + +### Options + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + -h, --help help for pelican + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican cache](/commands-reference/pelican/cache/) - Operate a Pelican cache service +* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters +* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file +* [pelican director](/commands-reference/pelican/director/) - Launch a Pelican Director +* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods +* [pelican generate](/commands-reference/pelican/generate/) - Generate credentials for Pelican server +* [pelican key](/commands-reference/pelican/key/) - Manage Pelican issuer keys +* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces +* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service +* [pelican plugin](/commands-reference/pelican/plugin/) - Plugin management for HTCSS +* [pelican registry](/commands-reference/pelican/registry/) - Interact with a Pelican registry service +* [pelican token](/commands-reference/pelican/token/) - Interact with tokens used to interact with objects in Pelican diff --git a/docs/app/commands-reference/pelican/plugin/page.mdx b/docs/app/commands-reference/pelican/plugin/page.mdx new file mode 100644 index 000000000..abe3aa303 --- /dev/null +++ b/docs/app/commands-reference/pelican/plugin/page.mdx @@ -0,0 +1,30 @@ +--- +title: Pelican Plugin +--- + +## pelican plugin + +Plugin management for HTCSS + +### Options + +``` + -h, --help help for plugin +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican plugin stage](/commands-reference/pelican/plugin/stage/) - Run pelican CLI to stage files as a HTCSS shadow plugin +* [pelican plugin transfer](/commands-reference/pelican/plugin/transfer/) - Run pelican CLI in HTCSS file transfer plugin mode diff --git a/docs/app/commands-reference/pelican/plugin/stage/page.mdx b/docs/app/commands-reference/pelican/plugin/stage/page.mdx new file mode 100644 index 000000000..6772843aa --- /dev/null +++ b/docs/app/commands-reference/pelican/plugin/stage/page.mdx @@ -0,0 +1,37 @@ +--- +title: Pelican Plugin Stage +--- + +## pelican plugin stage + +Run pelican CLI to stage files as a HTCSS shadow plugin + +``` +pelican plugin stage [flags] +``` + +### Options + +``` + -h, --help help for stage + --hook Implement the HTCondor hook behavior + -m, --mount string Prefix corresponding to the local mount point of the origin + -o, --origin-prefix string Prefix corresponding to the local origin + -s, --shadow-prefix string Prefix corresponding to the shadow origin + -t, --token string Token file to use for reading and/or writing +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican plugin](/commands-reference/pelican/plugin/) - Plugin management for HTCSS diff --git a/docs/app/commands-reference/pelican/plugin/transfer/page.mdx b/docs/app/commands-reference/pelican/plugin/transfer/page.mdx new file mode 100644 index 000000000..dd10131d0 --- /dev/null +++ b/docs/app/commands-reference/pelican/plugin/transfer/page.mdx @@ -0,0 +1,32 @@ +--- +title: Pelican Plugin Transfer +--- + +## pelican plugin transfer + +Run pelican CLI in HTCSS file transfer plugin mode + +``` +pelican plugin transfer [flags] +``` + +### Options + +``` + -h, --help help for transfer +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican plugin](/commands-reference/pelican/plugin/) - Plugin management for HTCSS diff --git a/docs/app/commands-reference/pelican/registry/page.mdx b/docs/app/commands-reference/pelican/registry/page.mdx new file mode 100644 index 000000000..973f171bc --- /dev/null +++ b/docs/app/commands-reference/pelican/registry/page.mdx @@ -0,0 +1,46 @@ +--- +title: Pelican Registry +--- + +## pelican registry + +Interact with a Pelican registry service + +### Synopsis + +Interact with a Pelican registry service: + + The namespace registry lies at the core of Pelican's security model + by serving as the central point for clients to fetch the public keys + associated with namespaced resources. When origins wish to claim a + namespace prefix in their federation, they securely associate the + public key of their issuer with the namespace registry (many origins + may act as their own issuer). Sometimes origins will provide + additional OIDC metadata if the origins wish to be accessible to the + OSDF's caching infrastructure. Services wishing to validate the + authenticity of a token from an issuer can then reference the + namespace registry's listed public key for that origin and verify + that it was signed by the correct private key. + + +### Options + +``` + -h, --help help for registry +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican registry serve](/commands-reference/pelican/registry/serve/) - serve the registry diff --git a/docs/app/commands-reference/pelican/registry/serve/page.mdx b/docs/app/commands-reference/pelican/registry/serve/page.mdx new file mode 100644 index 000000000..e90439e9e --- /dev/null +++ b/docs/app/commands-reference/pelican/registry/serve/page.mdx @@ -0,0 +1,33 @@ +--- +title: Pelican Registry Serve +--- + +## pelican registry serve + +serve the registry + +``` +pelican registry serve [flags] +``` + +### Options + +``` + -h, --help help for serve + -p, --port uint16 Set the port at which the web server should be accessible +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican registry](/commands-reference/pelican/registry/) - Interact with a Pelican registry service diff --git a/docs/app/commands-reference/pelican/token/create/page.mdx b/docs/app/commands-reference/pelican/token/create/page.mdx new file mode 100644 index 000000000..9a9135f6a --- /dev/null +++ b/docs/app/commands-reference/pelican/token/create/page.mdx @@ -0,0 +1,51 @@ +--- +title: Pelican Token Create +--- + +## pelican token create + +Create a token + +``` +pelican token create [flags] +``` + +### Examples + +``` +To create a read/write token for /some/namespace/path in OSDF: pelican token create --read --write pelican://osg-htc.org/some/namespace/path +``` + +### Options + +``` + -a, --audience string Specify the token's 'audience/aud' claim. If not provided, the equivalent 'any' audience for the selected profile will be used (e.g. 'https://wlcg.cern.ch/jwt/v1/any' for the 'wlcg' profile). + -h, --help help for create + -i, --issuer string Set the token's 'issuer/iss' claim. If not provided, the issuer will be discovered via the Director. + -l, --lifetime int Set the token's lifetime in seconds. (default 1200) + -m, --modify Indicate the requested token should provide the ability to modify/delete the specified resource. + -k, --private-key string Path to the private key used to sign the token. If not provided, Pelican will look for the private key in the default location pointed to by the 'IssuerKeysDirectory' config parameter. + -p, --profile string Create a token with a specific JWT profile. Accepted values are scitokens2 and wlcg. (default "wlcg") + --raw-claim stringArray Set claims to be added to the token. Format: =. + --raw-scope stringArray Set non-typical values for the token's 'scope' claim. Scopes should be space-separated, e.g. 'storage.read:/ storage.create:/'. + -r, --read Indicate the requested token should provide the ability to read the specified resource. + --scope-path string Specify the path to use when creating the token's scopes. This should generally be the object path without the namespace prefix. + -s, --stage Indicate the requested token should provide the ability to stage the specified resource. + --subject string Set token's 'subject/sub' claim. If not provided, the current user will be used as the default subject. + -w, --write Indicate the requested token should provide the ability to create/write the specified resource. Does not grant the ability to overwrite/modify existing resources. +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican token](/commands-reference/pelican/token/) - Interact with tokens used to interact with objects in Pelican diff --git a/docs/app/commands-reference/pelican/token/page.mdx b/docs/app/commands-reference/pelican/token/page.mdx new file mode 100644 index 000000000..d793a36fb --- /dev/null +++ b/docs/app/commands-reference/pelican/token/page.mdx @@ -0,0 +1,29 @@ +--- +title: Pelican Token +--- + +## pelican token + +Interact with tokens used to interact with objects in Pelican + +### Options + +``` + -h, --help help for token +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/pelican/) - Interact with data federations +* [pelican token create](/commands-reference/pelican/token/create/) - Create a token From 480207cdd0f16f7a6a8bb88473997202f86d78dd Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Thu, 18 Sep 2025 21:10:38 +0000 Subject: [PATCH 10/11] Remove unecessary heirarchy and make dropdown titles lower case --- cmd/doc_gen.go | 72 +++++++++++++++++-- docs/app/commands-reference/_meta.js | 15 ++++ docs/app/commands-reference/cache/_meta.js | 3 + .../{pelican => }/cache/page.mdx | 6 +- .../{pelican => }/cache/serve/page.mdx | 4 +- docs/app/commands-reference/config/_meta.js | 6 ++ .../{pelican => }/config/describe/page.mdx | 4 +- .../{pelican => }/config/dump/page.mdx | 4 +- .../{pelican => }/config/get/page.mdx | 4 +- .../{pelican => }/config/page.mdx | 12 ++-- .../{pelican => }/config/summary/page.mdx | 4 +- .../commands-reference/credentials/_meta.js | 7 ++ .../commands-reference/credentials/page.mdx | 33 +++++++++ .../credentials/prefix/_meta.js | 6 ++ .../credentials/prefix/add/page.mdx | 4 +- .../credentials/prefix/delete/page.mdx | 4 +- .../credentials/prefix/page.mdx | 36 ++++++++++ .../credentials/prefix/print/page.mdx | 4 +- .../credentials/prefix/set/page.mdx | 4 +- .../{pelican => }/credentials/print/page.mdx | 4 +- .../credentials/replace/page.mdx | 4 +- .../credentials/reset-password/page.mdx | 4 +- .../credentials/token/_meta.js | 3 + .../credentials/token/get/page.mdx | 4 +- .../{pelican => }/credentials/token/page.mdx | 6 +- docs/app/commands-reference/director/_meta.js | 3 + .../{pelican => }/director/page.mdx | 6 +- .../{pelican => }/director/serve/page.mdx | 4 +- docs/app/commands-reference/downtime/_meta.js | 6 ++ .../{pelican => }/downtime/create/page.mdx | 4 +- .../{pelican => }/downtime/delete/page.mdx | 4 +- .../{pelican => }/downtime/list/page.mdx | 4 +- .../{pelican => }/downtime/page.mdx | 12 ++-- .../{pelican => }/downtime/update/page.mdx | 4 +- docs/app/commands-reference/generate/_meta.js | 3 + .../{pelican => }/generate/page.mdx | 6 +- .../{pelican => }/generate/password/page.mdx | 4 +- docs/app/commands-reference/key/_meta.js | 3 + .../{pelican => }/key/create/page.mdx | 4 +- .../{pelican => }/key/page.mdx | 6 +- .../app/commands-reference/namespace/_meta.js | 5 ++ .../{pelican => }/namespace/delete/page.mdx | 4 +- .../{pelican => }/namespace/list/page.mdx | 4 +- .../{pelican => }/namespace/page.mdx | 10 +-- .../{pelican => }/namespace/register/page.mdx | 4 +- docs/app/commands-reference/object/_meta.js | 9 +++ .../{pelican => }/object/copy/page.mdx | 4 +- .../{pelican => }/object/get/page.mdx | 4 +- .../{pelican => }/object/ls/page.mdx | 4 +- docs/app/commands-reference/object/page.mdx | 36 ++++++++++ .../{pelican => }/object/put/page.mdx | 4 +- .../{pelican => }/object/share/page.mdx | 4 +- .../{pelican => }/object/stat/page.mdx | 4 +- .../{pelican => }/object/sync/page.mdx | 4 +- docs/app/commands-reference/origin/_meta.js | 6 ++ .../{pelican => }/origin/config/page.mdx | 4 +- .../{pelican => }/origin/page.mdx | 12 ++-- .../{pelican => }/origin/serve/page.mdx | 4 +- .../commands-reference/origin/token/_meta.js | 4 ++ .../origin/token/create/page.mdx | 4 +- .../{pelican => }/origin/token/page.mdx | 8 +-- .../origin/token/verify/page.mdx | 4 +- .../commands-reference/origin/web-ui/_meta.js | 3 + .../{pelican => }/origin/web-ui/page.mdx | 6 +- .../origin/web-ui/reset-password/page.mdx | 4 +- docs/app/commands-reference/page.mdx | 41 +++++++++++ .../pelican/credentials/page.mdx | 33 --------- .../pelican/credentials/prefix/page.mdx | 36 ---------- .../pelican/object/page.mdx | 36 ---------- docs/app/commands-reference/pelican/page.mdx | 41 ----------- docs/app/commands-reference/plugin/_meta.js | 4 ++ .../{pelican => }/plugin/page.mdx | 8 +-- .../{pelican => }/plugin/stage/page.mdx | 4 +- .../{pelican => }/plugin/transfer/page.mdx | 4 +- docs/app/commands-reference/registry/_meta.js | 3 + .../{pelican => }/registry/page.mdx | 6 +- .../{pelican => }/registry/serve/page.mdx | 4 +- docs/app/commands-reference/token/_meta.js | 3 + .../{pelican => }/token/create/page.mdx | 4 +- .../{pelican => }/token/page.mdx | 6 +- 80 files changed, 436 insertions(+), 286 deletions(-) create mode 100644 docs/app/commands-reference/_meta.js create mode 100644 docs/app/commands-reference/cache/_meta.js rename docs/app/commands-reference/{pelican => }/cache/page.mdx (73%) rename docs/app/commands-reference/{pelican => }/cache/serve/page.mdx (85%) create mode 100644 docs/app/commands-reference/config/_meta.js rename docs/app/commands-reference/{pelican => }/config/describe/page.mdx (87%) rename docs/app/commands-reference/{pelican => }/config/dump/page.mdx (87%) rename docs/app/commands-reference/{pelican => }/config/get/page.mdx (94%) rename docs/app/commands-reference/{pelican => }/config/page.mdx (54%) rename docs/app/commands-reference/{pelican => }/config/summary/page.mdx (87%) create mode 100644 docs/app/commands-reference/credentials/_meta.js create mode 100644 docs/app/commands-reference/credentials/page.mdx create mode 100644 docs/app/commands-reference/credentials/prefix/_meta.js rename docs/app/commands-reference/{pelican => }/credentials/prefix/add/page.mdx (80%) rename docs/app/commands-reference/{pelican => }/credentials/prefix/delete/page.mdx (80%) create mode 100644 docs/app/commands-reference/credentials/prefix/page.mdx rename docs/app/commands-reference/{pelican => }/credentials/prefix/print/page.mdx (81%) rename docs/app/commands-reference/{pelican => }/credentials/prefix/set/page.mdx (82%) rename docs/app/commands-reference/{pelican => }/credentials/print/page.mdx (81%) rename docs/app/commands-reference/{pelican => }/credentials/replace/page.mdx (81%) rename docs/app/commands-reference/{pelican => }/credentials/reset-password/page.mdx (81%) create mode 100644 docs/app/commands-reference/credentials/token/_meta.js rename docs/app/commands-reference/{pelican => }/credentials/token/get/page.mdx (82%) rename docs/app/commands-reference/{pelican => }/credentials/token/page.mdx (68%) create mode 100644 docs/app/commands-reference/director/_meta.js rename docs/app/commands-reference/{pelican => }/director/page.mdx (83%) rename docs/app/commands-reference/{pelican => }/director/serve/page.mdx (87%) create mode 100644 docs/app/commands-reference/downtime/_meta.js rename docs/app/commands-reference/{pelican => }/downtime/create/page.mdx (86%) rename docs/app/commands-reference/{pelican => }/downtime/delete/page.mdx (86%) rename docs/app/commands-reference/{pelican => }/downtime/list/page.mdx (89%) rename docs/app/commands-reference/{pelican => }/downtime/page.mdx (62%) rename docs/app/commands-reference/{pelican => }/downtime/update/page.mdx (87%) create mode 100644 docs/app/commands-reference/generate/_meta.js rename docs/app/commands-reference/{pelican => }/generate/page.mdx (69%) rename docs/app/commands-reference/{pelican => }/generate/password/page.mdx (89%) create mode 100644 docs/app/commands-reference/key/_meta.js rename docs/app/commands-reference/{pelican => }/key/create/page.mdx (92%) rename docs/app/commands-reference/{pelican => }/key/page.mdx (71%) create mode 100644 docs/app/commands-reference/namespace/_meta.js rename docs/app/commands-reference/{pelican => }/namespace/delete/page.mdx (87%) rename docs/app/commands-reference/{pelican => }/namespace/list/page.mdx (86%) rename docs/app/commands-reference/{pelican => }/namespace/page.mdx (64%) rename docs/app/commands-reference/{pelican => }/namespace/register/page.mdx (88%) create mode 100644 docs/app/commands-reference/object/_meta.js rename docs/app/commands-reference/{pelican => }/object/copy/page.mdx (90%) rename docs/app/commands-reference/{pelican => }/object/get/page.mdx (92%) rename docs/app/commands-reference/{pelican => }/object/ls/page.mdx (88%) create mode 100644 docs/app/commands-reference/object/page.mdx rename docs/app/commands-reference/{pelican => }/object/put/page.mdx (92%) rename docs/app/commands-reference/{pelican => }/object/share/page.mdx (85%) rename docs/app/commands-reference/{pelican => }/object/stat/page.mdx (86%) rename docs/app/commands-reference/{pelican => }/object/sync/page.mdx (87%) create mode 100644 docs/app/commands-reference/origin/_meta.js rename docs/app/commands-reference/{pelican => }/origin/config/page.mdx (83%) rename docs/app/commands-reference/{pelican => }/origin/page.mdx (50%) rename docs/app/commands-reference/{pelican => }/origin/serve/page.mdx (94%) create mode 100644 docs/app/commands-reference/origin/token/_meta.js rename docs/app/commands-reference/{pelican => }/origin/token/create/page.mdx (94%) rename docs/app/commands-reference/{pelican => }/origin/token/page.mdx (66%) rename docs/app/commands-reference/{pelican => }/origin/token/verify/page.mdx (84%) create mode 100644 docs/app/commands-reference/origin/web-ui/_meta.js rename docs/app/commands-reference/{pelican => }/origin/web-ui/page.mdx (67%) rename docs/app/commands-reference/{pelican => }/origin/web-ui/reset-password/page.mdx (83%) create mode 100644 docs/app/commands-reference/page.mdx delete mode 100644 docs/app/commands-reference/pelican/credentials/page.mdx delete mode 100644 docs/app/commands-reference/pelican/credentials/prefix/page.mdx delete mode 100644 docs/app/commands-reference/pelican/object/page.mdx delete mode 100644 docs/app/commands-reference/pelican/page.mdx create mode 100644 docs/app/commands-reference/plugin/_meta.js rename docs/app/commands-reference/{pelican => }/plugin/page.mdx (60%) rename docs/app/commands-reference/{pelican => }/plugin/stage/page.mdx (89%) rename docs/app/commands-reference/{pelican => }/plugin/transfer/page.mdx (83%) create mode 100644 docs/app/commands-reference/registry/_meta.js rename docs/app/commands-reference/{pelican => }/registry/page.mdx (87%) rename docs/app/commands-reference/{pelican => }/registry/serve/page.mdx (83%) create mode 100644 docs/app/commands-reference/token/_meta.js rename docs/app/commands-reference/{pelican => }/token/create/page.mdx (94%) rename docs/app/commands-reference/{pelican => }/token/page.mdx (75%) diff --git a/cmd/doc_gen.go b/cmd/doc_gen.go index 098603daa..a04d0b5d9 100644 --- a/cmd/doc_gen.go +++ b/cmd/doc_gen.go @@ -10,8 +10,6 @@ import ( "strings" "github.com/spf13/cobra/doc" - "golang.org/x/text/cases" - "golang.org/x/text/language" ) // copied from generate/next_generator.go @@ -49,10 +47,17 @@ func generateCLIDocs(outputDir string) error { linkHandler := func(name string) string { // Cobra passes names like "pelican_serve.md"; strip root prefix but keep underscores so we can group by tokens base := strings.TrimSuffix(name, filepath.Ext(name)) + if base == "pelican" { + base = "" + } else { + base = strings.TrimPrefix(base, "pelican_") + } path := strings.ReplaceAll(base, "_", "/") // Must be an absolute path from the site root - result := fmt.Sprintf("/%s/%s/", docPathRoot, path) - return result + if path == "" { + return fmt.Sprintf("/%s/", docPathRoot) + } + return fmt.Sprintf("/%s/%s/", docPathRoot, path) } filePrepender := func(filename string) string { @@ -62,7 +67,7 @@ func generateCLIDocs(outputDir string) error { title = strings.TrimSuffix(base, filepath.Ext(base)) title = strings.ReplaceAll(title, "_", " ") title = strings.ReplaceAll(title, "-", " ") - title = cases.Title(language.English).String(title) + title = strings.ToLower(title) } return fmt.Sprintf("---\ntitle: %s\n---\n\n", title) } @@ -82,6 +87,10 @@ func generateCLIDocs(outputDir string) error { return err } + if err := generateMetaFiles(resolvedDir); err != nil { + return err + } + if err := postProcessMdxFiles(resolvedDir); err != nil { return err } @@ -129,8 +138,8 @@ func enforceAppRouterLayout(dir string) error { base := strings.TrimSuffix(name, ".mdx") // Build nested path from underscore-delimited tokens segments := strings.Split(base, "_") - if len(segments) == 0 { - continue + if len(segments) > 0 && segments[0] == "pelican" { + segments = segments[1:] } // Create nested directory path targetDir := filepath.Join(append([]string{dir}, segments...)...) @@ -198,6 +207,55 @@ func fileExists(path string) bool { return !info.IsDir() } +func generateMetaFiles(dir string) error { + return filepath.WalkDir(dir, func(path string, d fs.DirEntry, err error) error { + if err != nil { + return err + } + if !d.IsDir() { + return nil + } + + entries, err := os.ReadDir(path) + if err != nil { + return err + } + + var subdirs []string + for _, entry := range entries { + if entry.IsDir() { + subdirs = append(subdirs, entry.Name()) + } + } + + if len(subdirs) > 0 { + metaFilePath := filepath.Join(path, "_meta.js") + + relPath, err := filepath.Rel(dir, path) + if err != nil { + return err + } + + commandPrefix := "pelican" + if relPath != "." { + commandPrefix += " " + strings.ReplaceAll(relPath, string(filepath.Separator), " ") + } + + content := "export default {\n" + for _, subdir := range subdirs { + title := commandPrefix + " " + subdir + content += fmt.Sprintf(" \"%s\": \"%s\",\n", subdir, title) + } + content += "}\n" + + if err := os.WriteFile(metaFilePath, []byte(content), 0644); err != nil { + return err + } + } + return nil + }) +} + func postProcessMdxFiles(dir string) error { return filepath.WalkDir(dir, func(path string, d fs.DirEntry, err error) error { if err != nil { diff --git a/docs/app/commands-reference/_meta.js b/docs/app/commands-reference/_meta.js new file mode 100644 index 000000000..2e3a08ace --- /dev/null +++ b/docs/app/commands-reference/_meta.js @@ -0,0 +1,15 @@ +export default { + "cache": "pelican cache", + "config": "pelican config", + "credentials": "pelican credentials", + "director": "pelican director", + "downtime": "pelican downtime", + "generate": "pelican generate", + "key": "pelican key", + "namespace": "pelican namespace", + "object": "pelican object", + "origin": "pelican origin", + "plugin": "pelican plugin", + "registry": "pelican registry", + "token": "pelican token", +} diff --git a/docs/app/commands-reference/cache/_meta.js b/docs/app/commands-reference/cache/_meta.js new file mode 100644 index 000000000..06b95829b --- /dev/null +++ b/docs/app/commands-reference/cache/_meta.js @@ -0,0 +1,3 @@ +export default { + "serve": "pelican cache serve", +} diff --git a/docs/app/commands-reference/pelican/cache/page.mdx b/docs/app/commands-reference/cache/page.mdx similarity index 73% rename from docs/app/commands-reference/pelican/cache/page.mdx rename to docs/app/commands-reference/cache/page.mdx index 866a0e842..979e1ce76 100644 --- a/docs/app/commands-reference/pelican/cache/page.mdx +++ b/docs/app/commands-reference/cache/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Cache +title: pelican cache --- ## pelican cache @@ -25,5 +25,5 @@ Operate a Pelican cache service ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican cache serve](/commands-reference/pelican/cache/serve/) - Start the cache service +* [pelican](/commands-reference/) - Interact with data federations +* [pelican cache serve](/commands-reference/cache/serve/) - Start the cache service diff --git a/docs/app/commands-reference/pelican/cache/serve/page.mdx b/docs/app/commands-reference/cache/serve/page.mdx similarity index 85% rename from docs/app/commands-reference/pelican/cache/serve/page.mdx rename to docs/app/commands-reference/cache/serve/page.mdx index db64a1b6a..9594402bb 100644 --- a/docs/app/commands-reference/pelican/cache/serve/page.mdx +++ b/docs/app/commands-reference/cache/serve/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Cache Serve +title: pelican cache serve --- ## pelican cache serve @@ -30,4 +30,4 @@ pelican cache serve [flags] ### SEE ALSO -* [pelican cache](/commands-reference/pelican/cache/) - Operate a Pelican cache service +* [pelican cache](/commands-reference/cache/) - Operate a Pelican cache service diff --git a/docs/app/commands-reference/config/_meta.js b/docs/app/commands-reference/config/_meta.js new file mode 100644 index 000000000..b3ed0af51 --- /dev/null +++ b/docs/app/commands-reference/config/_meta.js @@ -0,0 +1,6 @@ +export default { + "describe": "pelican config describe", + "dump": "pelican config dump", + "get": "pelican config get", + "summary": "pelican config summary", +} diff --git a/docs/app/commands-reference/pelican/config/describe/page.mdx b/docs/app/commands-reference/config/describe/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/config/describe/page.mdx rename to docs/app/commands-reference/config/describe/page.mdx index c260ed76f..fcb4e7a48 100644 --- a/docs/app/commands-reference/pelican/config/describe/page.mdx +++ b/docs/app/commands-reference/config/describe/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Config Describe +title: pelican config describe --- ## pelican config describe @@ -41,4 +41,4 @@ pelican config describe server.webPort ### SEE ALSO -* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters +* [pelican config](/commands-reference/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/config/dump/page.mdx b/docs/app/commands-reference/config/dump/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/config/dump/page.mdx rename to docs/app/commands-reference/config/dump/page.mdx index 11dc19765..70773aa68 100644 --- a/docs/app/commands-reference/pelican/config/dump/page.mdx +++ b/docs/app/commands-reference/config/dump/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Config Dump +title: pelican config dump --- ## pelican config dump @@ -41,4 +41,4 @@ pelican config dump ### SEE ALSO -* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters +* [pelican config](/commands-reference/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/config/get/page.mdx b/docs/app/commands-reference/config/get/page.mdx similarity index 94% rename from docs/app/commands-reference/pelican/config/get/page.mdx rename to docs/app/commands-reference/config/get/page.mdx index daace5e89..25213ad80 100644 --- a/docs/app/commands-reference/pelican/config/get/page.mdx +++ b/docs/app/commands-reference/config/get/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Config Get +title: pelican config get --- ## pelican config get @@ -48,4 +48,4 @@ pelican config get log monitor -m origin -m cache --include-deprecated ### SEE ALSO -* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters +* [pelican config](/commands-reference/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/pelican/config/page.mdx b/docs/app/commands-reference/config/page.mdx similarity index 54% rename from docs/app/commands-reference/pelican/config/page.mdx rename to docs/app/commands-reference/config/page.mdx index 50fbc196d..20f879297 100644 --- a/docs/app/commands-reference/pelican/config/page.mdx +++ b/docs/app/commands-reference/config/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Config +title: pelican config --- ## pelican config @@ -29,8 +29,8 @@ The 'config' command allows users to view, search, and see the documentation for ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican config describe](/commands-reference/pelican/config/describe/) - Print documentation for the specified config parameter -* [pelican config dump](/commands-reference/pelican/config/dump/) - Dump all configuration parameters -* [pelican config get](/commands-reference/pelican/config/get/) - Retrieve config parameters that match any of the given arguments -* [pelican config summary](/commands-reference/pelican/config/summary/) - Print config parameters that differ from default values +* [pelican](/commands-reference/) - Interact with data federations +* [pelican config describe](/commands-reference/config/describe/) - Print documentation for the specified config parameter +* [pelican config dump](/commands-reference/config/dump/) - Dump all configuration parameters +* [pelican config get](/commands-reference/config/get/) - Retrieve config parameters that match any of the given arguments +* [pelican config summary](/commands-reference/config/summary/) - Print config parameters that differ from default values diff --git a/docs/app/commands-reference/pelican/config/summary/page.mdx b/docs/app/commands-reference/config/summary/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/config/summary/page.mdx rename to docs/app/commands-reference/config/summary/page.mdx index 85850561d..8d8fe9367 100644 --- a/docs/app/commands-reference/pelican/config/summary/page.mdx +++ b/docs/app/commands-reference/config/summary/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Config Summary +title: pelican config summary --- ## pelican config summary @@ -41,4 +41,4 @@ pelican config summary ### SEE ALSO -* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters +* [pelican config](/commands-reference/config/) - View and search for configuration parameters diff --git a/docs/app/commands-reference/credentials/_meta.js b/docs/app/commands-reference/credentials/_meta.js new file mode 100644 index 000000000..9a166656e --- /dev/null +++ b/docs/app/commands-reference/credentials/_meta.js @@ -0,0 +1,7 @@ +export default { + "prefix": "pelican credentials prefix", + "print": "pelican credentials print", + "replace": "pelican credentials replace", + "reset-password": "pelican credentials reset-password", + "token": "pelican credentials token", +} diff --git a/docs/app/commands-reference/credentials/page.mdx b/docs/app/commands-reference/credentials/page.mdx new file mode 100644 index 000000000..7f5178cdd --- /dev/null +++ b/docs/app/commands-reference/credentials/page.mdx @@ -0,0 +1,33 @@ +--- +title: pelican credentials +--- + +## pelican credentials + +Interact with the credential configuration file + +### Options + +``` + -h, --help help for credentials +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/) - Interact with data federations +* [pelican credentials prefix](/commands-reference/credentials/prefix/) - Manage the prefix configuration +* [pelican credentials print](/commands-reference/credentials/print/) - Print the credential configuration file +* [pelican credentials replace](/commands-reference/credentials/replace/) - Replace the credential configuration file +* [pelican credentials reset-password](/commands-reference/credentials/reset-password/) - Reset the password for the current user +* [pelican credentials token](/commands-reference/credentials/token/) - Manage the available tokens diff --git a/docs/app/commands-reference/credentials/prefix/_meta.js b/docs/app/commands-reference/credentials/prefix/_meta.js new file mode 100644 index 000000000..d739f376a --- /dev/null +++ b/docs/app/commands-reference/credentials/prefix/_meta.js @@ -0,0 +1,6 @@ +export default { + "add": "pelican credentials prefix add", + "delete": "pelican credentials prefix delete", + "print": "pelican credentials prefix print", + "set": "pelican credentials prefix set", +} diff --git a/docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx b/docs/app/commands-reference/credentials/prefix/add/page.mdx similarity index 80% rename from docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx rename to docs/app/commands-reference/credentials/prefix/add/page.mdx index e4e452589..7953dafa3 100644 --- a/docs/app/commands-reference/pelican/credentials/prefix/add/page.mdx +++ b/docs/app/commands-reference/credentials/prefix/add/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Prefix Add +title: pelican credentials prefix add --- ## pelican credentials prefix add @@ -33,4 +33,4 @@ pelican credentials prefix add [flags] ### SEE ALSO -* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration +* [pelican credentials prefix](/commands-reference/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx b/docs/app/commands-reference/credentials/prefix/delete/page.mdx similarity index 80% rename from docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx rename to docs/app/commands-reference/credentials/prefix/delete/page.mdx index afa7618a1..70d46c1bd 100644 --- a/docs/app/commands-reference/pelican/credentials/prefix/delete/page.mdx +++ b/docs/app/commands-reference/credentials/prefix/delete/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Prefix Delete +title: pelican credentials prefix delete --- ## pelican credentials prefix delete @@ -33,4 +33,4 @@ pelican credentials prefix delete [flags] ### SEE ALSO -* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration +* [pelican credentials prefix](/commands-reference/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/credentials/prefix/page.mdx b/docs/app/commands-reference/credentials/prefix/page.mdx new file mode 100644 index 000000000..1a71b3f12 --- /dev/null +++ b/docs/app/commands-reference/credentials/prefix/page.mdx @@ -0,0 +1,36 @@ +--- +title: pelican credentials prefix +--- + +## pelican credentials prefix + +Manage the prefix configuration + +### Synopsis + +Manage the prefix configuration + +### Options + +``` + -h, --help help for prefix +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican credentials](/commands-reference/credentials/) - Interact with the credential configuration file +* [pelican credentials prefix add](/commands-reference/credentials/prefix/add/) - Add a new oauth client +* [pelican credentials prefix delete](/commands-reference/credentials/prefix/delete/) - Delete the oauth client +* [pelican credentials prefix print](/commands-reference/credentials/prefix/print/) - Print the oauth client configuration file +* [pelican credentials prefix set](/commands-reference/credentials/prefix/set/) - Set the oauth client attributes diff --git a/docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx b/docs/app/commands-reference/credentials/prefix/print/page.mdx similarity index 81% rename from docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx rename to docs/app/commands-reference/credentials/prefix/print/page.mdx index 988b4a340..42c0b9a7b 100644 --- a/docs/app/commands-reference/pelican/credentials/prefix/print/page.mdx +++ b/docs/app/commands-reference/credentials/prefix/print/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Prefix Print +title: pelican credentials prefix print --- ## pelican credentials prefix print @@ -33,4 +33,4 @@ pelican credentials prefix print [flags] ### SEE ALSO -* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration +* [pelican credentials prefix](/commands-reference/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx b/docs/app/commands-reference/credentials/prefix/set/page.mdx similarity index 82% rename from docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx rename to docs/app/commands-reference/credentials/prefix/set/page.mdx index cd619f322..485c87ae1 100644 --- a/docs/app/commands-reference/pelican/credentials/prefix/set/page.mdx +++ b/docs/app/commands-reference/credentials/prefix/set/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Prefix Set +title: pelican credentials prefix set --- ## pelican credentials prefix set @@ -33,4 +33,4 @@ pelican credentials prefix set [flags ### SEE ALSO -* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration +* [pelican credentials prefix](/commands-reference/credentials/prefix/) - Manage the prefix configuration diff --git a/docs/app/commands-reference/pelican/credentials/print/page.mdx b/docs/app/commands-reference/credentials/print/page.mdx similarity index 81% rename from docs/app/commands-reference/pelican/credentials/print/page.mdx rename to docs/app/commands-reference/credentials/print/page.mdx index cab77266f..4413ec8bc 100644 --- a/docs/app/commands-reference/pelican/credentials/print/page.mdx +++ b/docs/app/commands-reference/credentials/print/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Print +title: pelican credentials print --- ## pelican credentials print @@ -33,4 +33,4 @@ pelican credentials print [flags] ### SEE ALSO -* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file +* [pelican credentials](/commands-reference/credentials/) - Interact with the credential configuration file diff --git a/docs/app/commands-reference/pelican/credentials/replace/page.mdx b/docs/app/commands-reference/credentials/replace/page.mdx similarity index 81% rename from docs/app/commands-reference/pelican/credentials/replace/page.mdx rename to docs/app/commands-reference/credentials/replace/page.mdx index ebca9bb89..c826d3751 100644 --- a/docs/app/commands-reference/pelican/credentials/replace/page.mdx +++ b/docs/app/commands-reference/credentials/replace/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Replace +title: pelican credentials replace --- ## pelican credentials replace @@ -33,4 +33,4 @@ pelican credentials replace [flags] ### SEE ALSO -* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file +* [pelican credentials](/commands-reference/credentials/) - Interact with the credential configuration file diff --git a/docs/app/commands-reference/pelican/credentials/reset-password/page.mdx b/docs/app/commands-reference/credentials/reset-password/page.mdx similarity index 81% rename from docs/app/commands-reference/pelican/credentials/reset-password/page.mdx rename to docs/app/commands-reference/credentials/reset-password/page.mdx index fa052b278..93f03a027 100644 --- a/docs/app/commands-reference/pelican/credentials/reset-password/page.mdx +++ b/docs/app/commands-reference/credentials/reset-password/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Reset Password +title: pelican credentials reset password --- ## pelican credentials reset-password @@ -33,4 +33,4 @@ pelican credentials reset-password [flags] ### SEE ALSO -* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file +* [pelican credentials](/commands-reference/credentials/) - Interact with the credential configuration file diff --git a/docs/app/commands-reference/credentials/token/_meta.js b/docs/app/commands-reference/credentials/token/_meta.js new file mode 100644 index 000000000..896b82c34 --- /dev/null +++ b/docs/app/commands-reference/credentials/token/_meta.js @@ -0,0 +1,3 @@ +export default { + "get": "pelican credentials token get", +} diff --git a/docs/app/commands-reference/pelican/credentials/token/get/page.mdx b/docs/app/commands-reference/credentials/token/get/page.mdx similarity index 82% rename from docs/app/commands-reference/pelican/credentials/token/get/page.mdx rename to docs/app/commands-reference/credentials/token/get/page.mdx index 364265a87..d5a028275 100644 --- a/docs/app/commands-reference/pelican/credentials/token/get/page.mdx +++ b/docs/app/commands-reference/credentials/token/get/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Token Get +title: pelican credentials token get --- ## pelican credentials token get @@ -33,4 +33,4 @@ pelican credentials token get [flags] ### SEE ALSO -* [pelican credentials token](/commands-reference/pelican/credentials/token/) - Manage the available tokens +* [pelican credentials token](/commands-reference/credentials/token/) - Manage the available tokens diff --git a/docs/app/commands-reference/pelican/credentials/token/page.mdx b/docs/app/commands-reference/credentials/token/page.mdx similarity index 68% rename from docs/app/commands-reference/pelican/credentials/token/page.mdx rename to docs/app/commands-reference/credentials/token/page.mdx index 4603eeb20..8e87aea63 100644 --- a/docs/app/commands-reference/pelican/credentials/token/page.mdx +++ b/docs/app/commands-reference/credentials/token/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Credentials Token +title: pelican credentials token --- ## pelican credentials token @@ -29,5 +29,5 @@ Manage the available tokens ### SEE ALSO -* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file -* [pelican credentials token get](/commands-reference/pelican/credentials/token/get/) - Get a new token for a given prefix +* [pelican credentials](/commands-reference/credentials/) - Interact with the credential configuration file +* [pelican credentials token get](/commands-reference/credentials/token/get/) - Get a new token for a given prefix diff --git a/docs/app/commands-reference/director/_meta.js b/docs/app/commands-reference/director/_meta.js new file mode 100644 index 000000000..c1406d89c --- /dev/null +++ b/docs/app/commands-reference/director/_meta.js @@ -0,0 +1,3 @@ +export default { + "serve": "pelican director serve", +} diff --git a/docs/app/commands-reference/pelican/director/page.mdx b/docs/app/commands-reference/director/page.mdx similarity index 83% rename from docs/app/commands-reference/pelican/director/page.mdx rename to docs/app/commands-reference/director/page.mdx index a4aabd9cf..6f2bdd6c0 100644 --- a/docs/app/commands-reference/pelican/director/page.mdx +++ b/docs/app/commands-reference/director/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Director +title: pelican director --- ## pelican director @@ -37,5 +37,5 @@ Launch a Pelican Director service: ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican director serve](/commands-reference/pelican/director/serve/) - serve the director service +* [pelican](/commands-reference/) - Interact with data federations +* [pelican director serve](/commands-reference/director/serve/) - serve the director service diff --git a/docs/app/commands-reference/pelican/director/serve/page.mdx b/docs/app/commands-reference/director/serve/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/director/serve/page.mdx rename to docs/app/commands-reference/director/serve/page.mdx index b14f0d5ba..2a88272d9 100644 --- a/docs/app/commands-reference/pelican/director/serve/page.mdx +++ b/docs/app/commands-reference/director/serve/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Director Serve +title: pelican director serve --- ## pelican director serve @@ -31,4 +31,4 @@ pelican director serve [flags] ### SEE ALSO -* [pelican director](/commands-reference/pelican/director/) - Launch a Pelican Director +* [pelican director](/commands-reference/director/) - Launch a Pelican Director diff --git a/docs/app/commands-reference/downtime/_meta.js b/docs/app/commands-reference/downtime/_meta.js new file mode 100644 index 000000000..1a328544c --- /dev/null +++ b/docs/app/commands-reference/downtime/_meta.js @@ -0,0 +1,6 @@ +export default { + "create": "pelican downtime create", + "delete": "pelican downtime delete", + "list": "pelican downtime list", + "update": "pelican downtime update", +} diff --git a/docs/app/commands-reference/pelican/downtime/create/page.mdx b/docs/app/commands-reference/downtime/create/page.mdx similarity index 86% rename from docs/app/commands-reference/pelican/downtime/create/page.mdx rename to docs/app/commands-reference/downtime/create/page.mdx index ff2ac5e70..d70268542 100644 --- a/docs/app/commands-reference/pelican/downtime/create/page.mdx +++ b/docs/app/commands-reference/downtime/create/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Downtime Create +title: pelican downtime create --- ## pelican downtime create @@ -35,4 +35,4 @@ pelican downtime create [flags] ### SEE ALSO -* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods +* [pelican downtime](/commands-reference/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/downtime/delete/page.mdx b/docs/app/commands-reference/downtime/delete/page.mdx similarity index 86% rename from docs/app/commands-reference/pelican/downtime/delete/page.mdx rename to docs/app/commands-reference/downtime/delete/page.mdx index bd9cad634..78b8e7c1b 100644 --- a/docs/app/commands-reference/pelican/downtime/delete/page.mdx +++ b/docs/app/commands-reference/downtime/delete/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Downtime Delete +title: pelican downtime delete --- ## pelican downtime delete @@ -35,4 +35,4 @@ pelican downtime delete [uuid] [flags] ### SEE ALSO -* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods +* [pelican downtime](/commands-reference/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/downtime/list/page.mdx b/docs/app/commands-reference/downtime/list/page.mdx similarity index 89% rename from docs/app/commands-reference/pelican/downtime/list/page.mdx rename to docs/app/commands-reference/downtime/list/page.mdx index dce71e093..8a4b84298 100644 --- a/docs/app/commands-reference/pelican/downtime/list/page.mdx +++ b/docs/app/commands-reference/downtime/list/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Downtime List +title: pelican downtime list --- ## pelican downtime list @@ -39,4 +39,4 @@ pelican downtime list [flags] ### SEE ALSO -* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods +* [pelican downtime](/commands-reference/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/pelican/downtime/page.mdx b/docs/app/commands-reference/downtime/page.mdx similarity index 62% rename from docs/app/commands-reference/pelican/downtime/page.mdx rename to docs/app/commands-reference/downtime/page.mdx index aa9e945f5..37eb60ff5 100644 --- a/docs/app/commands-reference/pelican/downtime/page.mdx +++ b/docs/app/commands-reference/downtime/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Downtime +title: pelican downtime --- ## pelican downtime @@ -33,8 +33,8 @@ administrative API endpoint. ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican downtime create](/commands-reference/pelican/downtime/create/) - Create a new downtime period for the server -* [pelican downtime delete](/commands-reference/pelican/downtime/delete/) - Delete a downtime period -* [pelican downtime list](/commands-reference/pelican/downtime/list/) - List server's scheduled downtime periods -* [pelican downtime update](/commands-reference/pelican/downtime/update/) - Update an existing downtime period +* [pelican](/commands-reference/) - Interact with data federations +* [pelican downtime create](/commands-reference/downtime/create/) - Create a new downtime period for the server +* [pelican downtime delete](/commands-reference/downtime/delete/) - Delete a downtime period +* [pelican downtime list](/commands-reference/downtime/list/) - List server's scheduled downtime periods +* [pelican downtime update](/commands-reference/downtime/update/) - Update an existing downtime period diff --git a/docs/app/commands-reference/pelican/downtime/update/page.mdx b/docs/app/commands-reference/downtime/update/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/downtime/update/page.mdx rename to docs/app/commands-reference/downtime/update/page.mdx index b45434464..fd5f39374 100644 --- a/docs/app/commands-reference/pelican/downtime/update/page.mdx +++ b/docs/app/commands-reference/downtime/update/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Downtime Update +title: pelican downtime update --- ## pelican downtime update @@ -35,4 +35,4 @@ pelican downtime update [uuid] [flags] ### SEE ALSO -* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods +* [pelican downtime](/commands-reference/downtime/) - Manage server's own downtime periods diff --git a/docs/app/commands-reference/generate/_meta.js b/docs/app/commands-reference/generate/_meta.js new file mode 100644 index 000000000..f67921a23 --- /dev/null +++ b/docs/app/commands-reference/generate/_meta.js @@ -0,0 +1,3 @@ +export default { + "password": "pelican generate password", +} diff --git a/docs/app/commands-reference/pelican/generate/page.mdx b/docs/app/commands-reference/generate/page.mdx similarity index 69% rename from docs/app/commands-reference/pelican/generate/page.mdx rename to docs/app/commands-reference/generate/page.mdx index 66ff612d8..1655c43c5 100644 --- a/docs/app/commands-reference/pelican/generate/page.mdx +++ b/docs/app/commands-reference/generate/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Generate +title: pelican generate --- ## pelican generate @@ -25,5 +25,5 @@ Generate credentials for Pelican server ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican generate password](/commands-reference/pelican/generate/password/) - Generate a Pelican admin website password file (htpasswd) +* [pelican](/commands-reference/) - Interact with data federations +* [pelican generate password](/commands-reference/generate/password/) - Generate a Pelican admin website password file (htpasswd) diff --git a/docs/app/commands-reference/pelican/generate/password/page.mdx b/docs/app/commands-reference/generate/password/page.mdx similarity index 89% rename from docs/app/commands-reference/pelican/generate/password/page.mdx rename to docs/app/commands-reference/generate/password/page.mdx index cc8e7ddda..c1780eca1 100644 --- a/docs/app/commands-reference/pelican/generate/password/page.mdx +++ b/docs/app/commands-reference/generate/password/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Generate Password +title: pelican generate password --- ## pelican generate password @@ -39,4 +39,4 @@ pelican generate password [flags] ### SEE ALSO -* [pelican generate](/commands-reference/pelican/generate/) - Generate credentials for Pelican server +* [pelican generate](/commands-reference/generate/) - Generate credentials for Pelican server diff --git a/docs/app/commands-reference/key/_meta.js b/docs/app/commands-reference/key/_meta.js new file mode 100644 index 000000000..10588b34c --- /dev/null +++ b/docs/app/commands-reference/key/_meta.js @@ -0,0 +1,3 @@ +export default { + "create": "pelican key create", +} diff --git a/docs/app/commands-reference/pelican/key/create/page.mdx b/docs/app/commands-reference/key/create/page.mdx similarity index 92% rename from docs/app/commands-reference/pelican/key/create/page.mdx rename to docs/app/commands-reference/key/create/page.mdx index c69dec064..16b2bc42d 100644 --- a/docs/app/commands-reference/pelican/key/create/page.mdx +++ b/docs/app/commands-reference/key/create/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Key Create +title: pelican key create --- ## pelican key create @@ -37,4 +37,4 @@ pelican key create [flags] ### SEE ALSO -* [pelican key](/commands-reference/pelican/key/) - Manage Pelican issuer keys +* [pelican key](/commands-reference/key/) - Manage Pelican issuer keys diff --git a/docs/app/commands-reference/pelican/key/page.mdx b/docs/app/commands-reference/key/page.mdx similarity index 71% rename from docs/app/commands-reference/pelican/key/page.mdx rename to docs/app/commands-reference/key/page.mdx index f19bcdc41..d7cb85b94 100644 --- a/docs/app/commands-reference/pelican/key/page.mdx +++ b/docs/app/commands-reference/key/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Key +title: pelican key --- ## pelican key @@ -25,5 +25,5 @@ Manage Pelican issuer keys ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican key create](/commands-reference/pelican/key/create/) - Generate a public-private key-pair for Pelican server +* [pelican](/commands-reference/) - Interact with data federations +* [pelican key create](/commands-reference/key/create/) - Generate a public-private key-pair for Pelican server diff --git a/docs/app/commands-reference/namespace/_meta.js b/docs/app/commands-reference/namespace/_meta.js new file mode 100644 index 000000000..816c875e8 --- /dev/null +++ b/docs/app/commands-reference/namespace/_meta.js @@ -0,0 +1,5 @@ +export default { + "delete": "pelican namespace delete", + "list": "pelican namespace list", + "register": "pelican namespace register", +} diff --git a/docs/app/commands-reference/pelican/namespace/delete/page.mdx b/docs/app/commands-reference/namespace/delete/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/namespace/delete/page.mdx rename to docs/app/commands-reference/namespace/delete/page.mdx index fa637fa8b..325d6f6c3 100644 --- a/docs/app/commands-reference/pelican/namespace/delete/page.mdx +++ b/docs/app/commands-reference/namespace/delete/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Namespace Delete +title: pelican namespace delete --- ## pelican namespace delete @@ -33,4 +33,4 @@ pelican namespace delete [flags] ### SEE ALSO -* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces +* [pelican namespace](/commands-reference/namespace/) - Work with namespaces diff --git a/docs/app/commands-reference/pelican/namespace/list/page.mdx b/docs/app/commands-reference/namespace/list/page.mdx similarity index 86% rename from docs/app/commands-reference/pelican/namespace/list/page.mdx rename to docs/app/commands-reference/namespace/list/page.mdx index 677147bef..fecbe189c 100644 --- a/docs/app/commands-reference/pelican/namespace/list/page.mdx +++ b/docs/app/commands-reference/namespace/list/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Namespace List +title: pelican namespace list --- ## pelican namespace list @@ -32,4 +32,4 @@ pelican namespace list [flags] ### SEE ALSO -* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces +* [pelican namespace](/commands-reference/namespace/) - Work with namespaces diff --git a/docs/app/commands-reference/pelican/namespace/page.mdx b/docs/app/commands-reference/namespace/page.mdx similarity index 64% rename from docs/app/commands-reference/pelican/namespace/page.mdx rename to docs/app/commands-reference/namespace/page.mdx index 3bf83b960..ecbce5f36 100644 --- a/docs/app/commands-reference/pelican/namespace/page.mdx +++ b/docs/app/commands-reference/namespace/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Namespace +title: pelican namespace --- ## pelican namespace @@ -28,7 +28,7 @@ Work with namespaces ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican namespace delete](/commands-reference/pelican/namespace/delete/) - Delete a namespace -* [pelican namespace list](/commands-reference/pelican/namespace/list/) - List all namespaces -* [pelican namespace register](/commands-reference/pelican/namespace/register/) - Register a new namespace +* [pelican](/commands-reference/) - Interact with data federations +* [pelican namespace delete](/commands-reference/namespace/delete/) - Delete a namespace +* [pelican namespace list](/commands-reference/namespace/list/) - List all namespaces +* [pelican namespace register](/commands-reference/namespace/register/) - Register a new namespace diff --git a/docs/app/commands-reference/pelican/namespace/register/page.mdx b/docs/app/commands-reference/namespace/register/page.mdx similarity index 88% rename from docs/app/commands-reference/pelican/namespace/register/page.mdx rename to docs/app/commands-reference/namespace/register/page.mdx index 62f36fcbf..a04be3db7 100644 --- a/docs/app/commands-reference/pelican/namespace/register/page.mdx +++ b/docs/app/commands-reference/namespace/register/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Namespace Register +title: pelican namespace register --- ## pelican namespace register @@ -34,4 +34,4 @@ pelican namespace register [flags] ### SEE ALSO -* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces +* [pelican namespace](/commands-reference/namespace/) - Work with namespaces diff --git a/docs/app/commands-reference/object/_meta.js b/docs/app/commands-reference/object/_meta.js new file mode 100644 index 000000000..3f85bd445 --- /dev/null +++ b/docs/app/commands-reference/object/_meta.js @@ -0,0 +1,9 @@ +export default { + "copy": "pelican object copy", + "get": "pelican object get", + "ls": "pelican object ls", + "put": "pelican object put", + "share": "pelican object share", + "stat": "pelican object stat", + "sync": "pelican object sync", +} diff --git a/docs/app/commands-reference/pelican/object/copy/page.mdx b/docs/app/commands-reference/object/copy/page.mdx similarity index 90% rename from docs/app/commands-reference/pelican/object/copy/page.mdx rename to docs/app/commands-reference/object/copy/page.mdx index b643a80f1..cb5d0dabe 100644 --- a/docs/app/commands-reference/pelican/object/copy/page.mdx +++ b/docs/app/commands-reference/object/copy/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Copy +title: pelican object copy --- ## pelican object copy @@ -35,4 +35,4 @@ pelican object copy {source ...} {destination} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/get/page.mdx b/docs/app/commands-reference/object/get/page.mdx similarity index 92% rename from docs/app/commands-reference/pelican/object/get/page.mdx rename to docs/app/commands-reference/object/get/page.mdx index 35d32d104..2fa4ce265 100644 --- a/docs/app/commands-reference/pelican/object/get/page.mdx +++ b/docs/app/commands-reference/object/get/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Get +title: pelican object get --- ## pelican object get @@ -36,4 +36,4 @@ pelican object get {source ...} {destination} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/ls/page.mdx b/docs/app/commands-reference/object/ls/page.mdx similarity index 88% rename from docs/app/commands-reference/pelican/object/ls/page.mdx rename to docs/app/commands-reference/object/ls/page.mdx index 2d56ae886..6eb3024ed 100644 --- a/docs/app/commands-reference/pelican/object/ls/page.mdx +++ b/docs/app/commands-reference/object/ls/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Ls +title: pelican object ls --- ## pelican object ls @@ -34,4 +34,4 @@ pelican object ls {object} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/object/page.mdx b/docs/app/commands-reference/object/page.mdx new file mode 100644 index 000000000..8a1cb2043 --- /dev/null +++ b/docs/app/commands-reference/object/page.mdx @@ -0,0 +1,36 @@ +--- +title: pelican object +--- + +## pelican object + +Interact with objects in the federation + +### Options + +``` + -h, --help help for object +``` + +### Options inherited from parent commands + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican](/commands-reference/) - Interact with data federations +* [pelican object copy](/commands-reference/object/copy/) - Copy a file to/from a Pelican federation +* [pelican object get](/commands-reference/object/get/) - Get a file from a Pelican federation +* [pelican object ls](/commands-reference/object/ls/) - List objects in a namespace from a federation +* [pelican object put](/commands-reference/object/put/) - Send a file to a Pelican federation +* [pelican object share](/commands-reference/object/share/) - Generate a string for sharing access to a namespace. +Note the sharing is based on prefixes; all object names matching the prefix will be accessible +* [pelican object stat](/commands-reference/object/stat/) - Stat objects in a namespace from a federation +* [pelican object sync](/commands-reference/object/sync/) - Sync a directory to or from a Pelican federation diff --git a/docs/app/commands-reference/pelican/object/put/page.mdx b/docs/app/commands-reference/object/put/page.mdx similarity index 92% rename from docs/app/commands-reference/pelican/object/put/page.mdx rename to docs/app/commands-reference/object/put/page.mdx index e92fae382..e714d12a5 100644 --- a/docs/app/commands-reference/pelican/object/put/page.mdx +++ b/docs/app/commands-reference/object/put/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Put +title: pelican object put --- ## pelican object put @@ -36,4 +36,4 @@ pelican object put {source ...} {destination} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/share/page.mdx b/docs/app/commands-reference/object/share/page.mdx similarity index 85% rename from docs/app/commands-reference/pelican/object/share/page.mdx rename to docs/app/commands-reference/object/share/page.mdx index 99e2b89e7..394f7f253 100644 --- a/docs/app/commands-reference/pelican/object/share/page.mdx +++ b/docs/app/commands-reference/object/share/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Share +title: pelican object share --- ## pelican object share @@ -31,4 +31,4 @@ pelican object share {URL} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/stat/page.mdx b/docs/app/commands-reference/object/stat/page.mdx similarity index 86% rename from docs/app/commands-reference/pelican/object/stat/page.mdx rename to docs/app/commands-reference/object/stat/page.mdx index f2b7b9eaa..8c08a8cb1 100644 --- a/docs/app/commands-reference/pelican/object/stat/page.mdx +++ b/docs/app/commands-reference/object/stat/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Stat +title: pelican object stat --- ## pelican object stat @@ -31,4 +31,4 @@ pelican object stat {object} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/pelican/object/sync/page.mdx b/docs/app/commands-reference/object/sync/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/object/sync/page.mdx rename to docs/app/commands-reference/object/sync/page.mdx index efc535bd3..8e895685c 100644 --- a/docs/app/commands-reference/pelican/object/sync/page.mdx +++ b/docs/app/commands-reference/object/sync/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Object Sync +title: pelican object sync --- ## pelican object sync @@ -32,4 +32,4 @@ pelican object sync {source ...} {destination} [flags] ### SEE ALSO -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation +* [pelican object](/commands-reference/object/) - Interact with objects in the federation diff --git a/docs/app/commands-reference/origin/_meta.js b/docs/app/commands-reference/origin/_meta.js new file mode 100644 index 000000000..6b9a132e8 --- /dev/null +++ b/docs/app/commands-reference/origin/_meta.js @@ -0,0 +1,6 @@ +export default { + "config": "pelican origin config", + "serve": "pelican origin serve", + "token": "pelican origin token", + "web-ui": "pelican origin web-ui", +} diff --git a/docs/app/commands-reference/pelican/origin/config/page.mdx b/docs/app/commands-reference/origin/config/page.mdx similarity index 83% rename from docs/app/commands-reference/pelican/origin/config/page.mdx rename to docs/app/commands-reference/origin/config/page.mdx index 14b667ac4..c4661f510 100644 --- a/docs/app/commands-reference/pelican/origin/config/page.mdx +++ b/docs/app/commands-reference/origin/config/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Config +title: pelican origin config --- ## pelican origin config @@ -29,4 +29,4 @@ pelican origin config [flags] ### SEE ALSO -* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service +* [pelican origin](/commands-reference/origin/) - Operate a Pelican origin service diff --git a/docs/app/commands-reference/pelican/origin/page.mdx b/docs/app/commands-reference/origin/page.mdx similarity index 50% rename from docs/app/commands-reference/pelican/origin/page.mdx rename to docs/app/commands-reference/origin/page.mdx index ef24c78c3..026a604c5 100644 --- a/docs/app/commands-reference/pelican/origin/page.mdx +++ b/docs/app/commands-reference/origin/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin +title: pelican origin --- ## pelican origin @@ -25,8 +25,8 @@ Operate a Pelican origin service ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican origin config](/commands-reference/pelican/origin/config/) - Launch the Pelican web service in configuration mode -* [pelican origin serve](/commands-reference/pelican/origin/serve/) - Start the origin service -* [pelican origin token](/commands-reference/pelican/origin/token/) - Manage Pelican origin tokens -* [pelican origin web-ui](/commands-reference/pelican/origin/web-ui/) - Manage the Pelican origin web UI +* [pelican](/commands-reference/) - Interact with data federations +* [pelican origin config](/commands-reference/origin/config/) - Launch the Pelican web service in configuration mode +* [pelican origin serve](/commands-reference/origin/serve/) - Start the origin service +* [pelican origin token](/commands-reference/origin/token/) - Manage Pelican origin tokens +* [pelican origin web-ui](/commands-reference/origin/web-ui/) - Manage the Pelican origin web UI diff --git a/docs/app/commands-reference/pelican/origin/serve/page.mdx b/docs/app/commands-reference/origin/serve/page.mdx similarity index 94% rename from docs/app/commands-reference/pelican/origin/serve/page.mdx rename to docs/app/commands-reference/origin/serve/page.mdx index 5189a0437..f59e58cc3 100644 --- a/docs/app/commands-reference/pelican/origin/serve/page.mdx +++ b/docs/app/commands-reference/origin/serve/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Serve +title: pelican origin serve --- ## pelican origin serve @@ -41,4 +41,4 @@ pelican origin serve [flags] ### SEE ALSO -* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service +* [pelican origin](/commands-reference/origin/) - Operate a Pelican origin service diff --git a/docs/app/commands-reference/origin/token/_meta.js b/docs/app/commands-reference/origin/token/_meta.js new file mode 100644 index 000000000..8bc1bc4c3 --- /dev/null +++ b/docs/app/commands-reference/origin/token/_meta.js @@ -0,0 +1,4 @@ +export default { + "create": "pelican origin token create", + "verify": "pelican origin token verify", +} diff --git a/docs/app/commands-reference/pelican/origin/token/create/page.mdx b/docs/app/commands-reference/origin/token/create/page.mdx similarity index 94% rename from docs/app/commands-reference/pelican/origin/token/create/page.mdx rename to docs/app/commands-reference/origin/token/create/page.mdx index 68158d14d..493b774b3 100644 --- a/docs/app/commands-reference/pelican/origin/token/create/page.mdx +++ b/docs/app/commands-reference/origin/token/create/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Token Create +title: pelican origin token create --- ## pelican origin token create @@ -52,4 +52,4 @@ pelican origin token create [flags] ### SEE ALSO -* [pelican origin token](/commands-reference/pelican/origin/token/) - Manage Pelican origin tokens +* [pelican origin token](/commands-reference/origin/token/) - Manage Pelican origin tokens diff --git a/docs/app/commands-reference/pelican/origin/token/page.mdx b/docs/app/commands-reference/origin/token/page.mdx similarity index 66% rename from docs/app/commands-reference/pelican/origin/token/page.mdx rename to docs/app/commands-reference/origin/token/page.mdx index 98f1d159e..911925b48 100644 --- a/docs/app/commands-reference/pelican/origin/token/page.mdx +++ b/docs/app/commands-reference/origin/token/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Token +title: pelican origin token --- ## pelican origin token @@ -26,6 +26,6 @@ Manage Pelican origin tokens ### SEE ALSO -* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service -* [pelican origin token create](/commands-reference/pelican/origin/token/create/) - Create a Pelican origin token -* [pelican origin token verify](/commands-reference/pelican/origin/token/verify/) - Verify a Pelican origin token +* [pelican origin](/commands-reference/origin/) - Operate a Pelican origin service +* [pelican origin token create](/commands-reference/origin/token/create/) - Create a Pelican origin token +* [pelican origin token verify](/commands-reference/origin/token/verify/) - Verify a Pelican origin token diff --git a/docs/app/commands-reference/pelican/origin/token/verify/page.mdx b/docs/app/commands-reference/origin/token/verify/page.mdx similarity index 84% rename from docs/app/commands-reference/pelican/origin/token/verify/page.mdx rename to docs/app/commands-reference/origin/token/verify/page.mdx index 95a9091fa..5a90e3ff5 100644 --- a/docs/app/commands-reference/pelican/origin/token/verify/page.mdx +++ b/docs/app/commands-reference/origin/token/verify/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Token Verify +title: pelican origin token verify --- ## pelican origin token verify @@ -30,4 +30,4 @@ pelican origin token verify [flags] ### SEE ALSO -* [pelican origin token](/commands-reference/pelican/origin/token/) - Manage Pelican origin tokens +* [pelican origin token](/commands-reference/origin/token/) - Manage Pelican origin tokens diff --git a/docs/app/commands-reference/origin/web-ui/_meta.js b/docs/app/commands-reference/origin/web-ui/_meta.js new file mode 100644 index 000000000..f956cc0da --- /dev/null +++ b/docs/app/commands-reference/origin/web-ui/_meta.js @@ -0,0 +1,3 @@ +export default { + "reset-password": "pelican origin web-ui reset-password", +} diff --git a/docs/app/commands-reference/pelican/origin/web-ui/page.mdx b/docs/app/commands-reference/origin/web-ui/page.mdx similarity index 67% rename from docs/app/commands-reference/pelican/origin/web-ui/page.mdx rename to docs/app/commands-reference/origin/web-ui/page.mdx index b2b9320d5..c444ff8a9 100644 --- a/docs/app/commands-reference/pelican/origin/web-ui/page.mdx +++ b/docs/app/commands-reference/origin/web-ui/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Web Ui +title: pelican origin web ui --- ## pelican origin web-ui @@ -25,5 +25,5 @@ Manage the Pelican origin web UI ### SEE ALSO -* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service -* [pelican origin web-ui reset-password](/commands-reference/pelican/origin/web-ui/reset-password/) - Reset the admin password for the web UI +* [pelican origin](/commands-reference/origin/) - Operate a Pelican origin service +* [pelican origin web-ui reset-password](/commands-reference/origin/web-ui/reset-password/) - Reset the admin password for the web UI diff --git a/docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx b/docs/app/commands-reference/origin/web-ui/reset-password/page.mdx similarity index 83% rename from docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx rename to docs/app/commands-reference/origin/web-ui/reset-password/page.mdx index 5c4ee7f9d..5a740699a 100644 --- a/docs/app/commands-reference/pelican/origin/web-ui/reset-password/page.mdx +++ b/docs/app/commands-reference/origin/web-ui/reset-password/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Origin Web Ui Reset Password +title: pelican origin web ui reset password --- ## pelican origin web-ui reset-password @@ -31,4 +31,4 @@ pelican origin web-ui reset-password [flags] ### SEE ALSO -* [pelican origin web-ui](/commands-reference/pelican/origin/web-ui/) - Manage the Pelican origin web UI +* [pelican origin web-ui](/commands-reference/origin/web-ui/) - Manage the Pelican origin web UI diff --git a/docs/app/commands-reference/page.mdx b/docs/app/commands-reference/page.mdx new file mode 100644 index 000000000..cc3181925 --- /dev/null +++ b/docs/app/commands-reference/page.mdx @@ -0,0 +1,41 @@ +--- +title: pelican +--- + +## pelican + +Interact with data federations + +### Synopsis + +The pelican software allows one to build and interact +with data federations, enabling the sharing of objects and collections +across multiple dataset providers. + +### Options + +``` + --config string config file (default is $HOME/.config/pelican/pelican.yaml) + -d, --debug Enable debug logs + -f, --federation string Pelican federation to utilize + -h, --help help for pelican + --json output results in JSON format + -L, --log string Specified log output file + --version Print the version and exit +``` + +### SEE ALSO + +* [pelican cache](/commands-reference/cache/) - Operate a Pelican cache service +* [pelican config](/commands-reference/config/) - View and search for configuration parameters +* [pelican credentials](/commands-reference/credentials/) - Interact with the credential configuration file +* [pelican director](/commands-reference/director/) - Launch a Pelican Director +* [pelican downtime](/commands-reference/downtime/) - Manage server's own downtime periods +* [pelican generate](/commands-reference/generate/) - Generate credentials for Pelican server +* [pelican key](/commands-reference/key/) - Manage Pelican issuer keys +* [pelican namespace](/commands-reference/namespace/) - Work with namespaces +* [pelican object](/commands-reference/object/) - Interact with objects in the federation +* [pelican origin](/commands-reference/origin/) - Operate a Pelican origin service +* [pelican plugin](/commands-reference/plugin/) - Plugin management for HTCSS +* [pelican registry](/commands-reference/registry/) - Interact with a Pelican registry service +* [pelican token](/commands-reference/token/) - Interact with tokens used to interact with objects in Pelican diff --git a/docs/app/commands-reference/pelican/credentials/page.mdx b/docs/app/commands-reference/pelican/credentials/page.mdx deleted file mode 100644 index 9a45d411a..000000000 --- a/docs/app/commands-reference/pelican/credentials/page.mdx +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: Pelican Credentials ---- - -## pelican credentials - -Interact with the credential configuration file - -### Options - -``` - -h, --help help for credentials -``` - -### Options inherited from parent commands - -``` - --config string config file (default is $HOME/.config/pelican/pelican.yaml) - -d, --debug Enable debug logs - -f, --federation string Pelican federation to utilize - --json output results in JSON format - -L, --log string Specified log output file - --version Print the version and exit -``` - -### SEE ALSO - -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican credentials prefix](/commands-reference/pelican/credentials/prefix/) - Manage the prefix configuration -* [pelican credentials print](/commands-reference/pelican/credentials/print/) - Print the credential configuration file -* [pelican credentials replace](/commands-reference/pelican/credentials/replace/) - Replace the credential configuration file -* [pelican credentials reset-password](/commands-reference/pelican/credentials/reset-password/) - Reset the password for the current user -* [pelican credentials token](/commands-reference/pelican/credentials/token/) - Manage the available tokens diff --git a/docs/app/commands-reference/pelican/credentials/prefix/page.mdx b/docs/app/commands-reference/pelican/credentials/prefix/page.mdx deleted file mode 100644 index 1d81f7094..000000000 --- a/docs/app/commands-reference/pelican/credentials/prefix/page.mdx +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Pelican Credentials Prefix ---- - -## pelican credentials prefix - -Manage the prefix configuration - -### Synopsis - -Manage the prefix configuration - -### Options - -``` - -h, --help help for prefix -``` - -### Options inherited from parent commands - -``` - --config string config file (default is $HOME/.config/pelican/pelican.yaml) - -d, --debug Enable debug logs - -f, --federation string Pelican federation to utilize - --json output results in JSON format - -L, --log string Specified log output file - --version Print the version and exit -``` - -### SEE ALSO - -* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file -* [pelican credentials prefix add](/commands-reference/pelican/credentials/prefix/add/) - Add a new oauth client -* [pelican credentials prefix delete](/commands-reference/pelican/credentials/prefix/delete/) - Delete the oauth client -* [pelican credentials prefix print](/commands-reference/pelican/credentials/prefix/print/) - Print the oauth client configuration file -* [pelican credentials prefix set](/commands-reference/pelican/credentials/prefix/set/) - Set the oauth client attributes diff --git a/docs/app/commands-reference/pelican/object/page.mdx b/docs/app/commands-reference/pelican/object/page.mdx deleted file mode 100644 index 7e01387d2..000000000 --- a/docs/app/commands-reference/pelican/object/page.mdx +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Pelican Object ---- - -## pelican object - -Interact with objects in the federation - -### Options - -``` - -h, --help help for object -``` - -### Options inherited from parent commands - -``` - --config string config file (default is $HOME/.config/pelican/pelican.yaml) - -d, --debug Enable debug logs - -f, --federation string Pelican federation to utilize - --json output results in JSON format - -L, --log string Specified log output file - --version Print the version and exit -``` - -### SEE ALSO - -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican object copy](/commands-reference/pelican/object/copy/) - Copy a file to/from a Pelican federation -* [pelican object get](/commands-reference/pelican/object/get/) - Get a file from a Pelican federation -* [pelican object ls](/commands-reference/pelican/object/ls/) - List objects in a namespace from a federation -* [pelican object put](/commands-reference/pelican/object/put/) - Send a file to a Pelican federation -* [pelican object share](/commands-reference/pelican/object/share/) - Generate a string for sharing access to a namespace. -Note the sharing is based on prefixes; all object names matching the prefix will be accessible -* [pelican object stat](/commands-reference/pelican/object/stat/) - Stat objects in a namespace from a federation -* [pelican object sync](/commands-reference/pelican/object/sync/) - Sync a directory to or from a Pelican federation diff --git a/docs/app/commands-reference/pelican/page.mdx b/docs/app/commands-reference/pelican/page.mdx deleted file mode 100644 index 0df7777a8..000000000 --- a/docs/app/commands-reference/pelican/page.mdx +++ /dev/null @@ -1,41 +0,0 @@ ---- -title: Pelican ---- - -## pelican - -Interact with data federations - -### Synopsis - -The pelican software allows one to build and interact -with data federations, enabling the sharing of objects and collections -across multiple dataset providers. - -### Options - -``` - --config string config file (default is $HOME/.config/pelican/pelican.yaml) - -d, --debug Enable debug logs - -f, --federation string Pelican federation to utilize - -h, --help help for pelican - --json output results in JSON format - -L, --log string Specified log output file - --version Print the version and exit -``` - -### SEE ALSO - -* [pelican cache](/commands-reference/pelican/cache/) - Operate a Pelican cache service -* [pelican config](/commands-reference/pelican/config/) - View and search for configuration parameters -* [pelican credentials](/commands-reference/pelican/credentials/) - Interact with the credential configuration file -* [pelican director](/commands-reference/pelican/director/) - Launch a Pelican Director -* [pelican downtime](/commands-reference/pelican/downtime/) - Manage server's own downtime periods -* [pelican generate](/commands-reference/pelican/generate/) - Generate credentials for Pelican server -* [pelican key](/commands-reference/pelican/key/) - Manage Pelican issuer keys -* [pelican namespace](/commands-reference/pelican/namespace/) - Work with namespaces -* [pelican object](/commands-reference/pelican/object/) - Interact with objects in the federation -* [pelican origin](/commands-reference/pelican/origin/) - Operate a Pelican origin service -* [pelican plugin](/commands-reference/pelican/plugin/) - Plugin management for HTCSS -* [pelican registry](/commands-reference/pelican/registry/) - Interact with a Pelican registry service -* [pelican token](/commands-reference/pelican/token/) - Interact with tokens used to interact with objects in Pelican diff --git a/docs/app/commands-reference/plugin/_meta.js b/docs/app/commands-reference/plugin/_meta.js new file mode 100644 index 000000000..787accc27 --- /dev/null +++ b/docs/app/commands-reference/plugin/_meta.js @@ -0,0 +1,4 @@ +export default { + "stage": "pelican plugin stage", + "transfer": "pelican plugin transfer", +} diff --git a/docs/app/commands-reference/pelican/plugin/page.mdx b/docs/app/commands-reference/plugin/page.mdx similarity index 60% rename from docs/app/commands-reference/pelican/plugin/page.mdx rename to docs/app/commands-reference/plugin/page.mdx index abe3aa303..8564fd73d 100644 --- a/docs/app/commands-reference/pelican/plugin/page.mdx +++ b/docs/app/commands-reference/plugin/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Plugin +title: pelican plugin --- ## pelican plugin @@ -25,6 +25,6 @@ Plugin management for HTCSS ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican plugin stage](/commands-reference/pelican/plugin/stage/) - Run pelican CLI to stage files as a HTCSS shadow plugin -* [pelican plugin transfer](/commands-reference/pelican/plugin/transfer/) - Run pelican CLI in HTCSS file transfer plugin mode +* [pelican](/commands-reference/) - Interact with data federations +* [pelican plugin stage](/commands-reference/plugin/stage/) - Run pelican CLI to stage files as a HTCSS shadow plugin +* [pelican plugin transfer](/commands-reference/plugin/transfer/) - Run pelican CLI in HTCSS file transfer plugin mode diff --git a/docs/app/commands-reference/pelican/plugin/stage/page.mdx b/docs/app/commands-reference/plugin/stage/page.mdx similarity index 89% rename from docs/app/commands-reference/pelican/plugin/stage/page.mdx rename to docs/app/commands-reference/plugin/stage/page.mdx index 6772843aa..2804e12d5 100644 --- a/docs/app/commands-reference/pelican/plugin/stage/page.mdx +++ b/docs/app/commands-reference/plugin/stage/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Plugin Stage +title: pelican plugin stage --- ## pelican plugin stage @@ -34,4 +34,4 @@ pelican plugin stage [flags] ### SEE ALSO -* [pelican plugin](/commands-reference/pelican/plugin/) - Plugin management for HTCSS +* [pelican plugin](/commands-reference/plugin/) - Plugin management for HTCSS diff --git a/docs/app/commands-reference/pelican/plugin/transfer/page.mdx b/docs/app/commands-reference/plugin/transfer/page.mdx similarity index 83% rename from docs/app/commands-reference/pelican/plugin/transfer/page.mdx rename to docs/app/commands-reference/plugin/transfer/page.mdx index dd10131d0..d2efd15c1 100644 --- a/docs/app/commands-reference/pelican/plugin/transfer/page.mdx +++ b/docs/app/commands-reference/plugin/transfer/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Plugin Transfer +title: pelican plugin transfer --- ## pelican plugin transfer @@ -29,4 +29,4 @@ pelican plugin transfer [flags] ### SEE ALSO -* [pelican plugin](/commands-reference/pelican/plugin/) - Plugin management for HTCSS +* [pelican plugin](/commands-reference/plugin/) - Plugin management for HTCSS diff --git a/docs/app/commands-reference/registry/_meta.js b/docs/app/commands-reference/registry/_meta.js new file mode 100644 index 000000000..6ec29a385 --- /dev/null +++ b/docs/app/commands-reference/registry/_meta.js @@ -0,0 +1,3 @@ +export default { + "serve": "pelican registry serve", +} diff --git a/docs/app/commands-reference/pelican/registry/page.mdx b/docs/app/commands-reference/registry/page.mdx similarity index 87% rename from docs/app/commands-reference/pelican/registry/page.mdx rename to docs/app/commands-reference/registry/page.mdx index 973f171bc..1b2de37ab 100644 --- a/docs/app/commands-reference/pelican/registry/page.mdx +++ b/docs/app/commands-reference/registry/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Registry +title: pelican registry --- ## pelican registry @@ -42,5 +42,5 @@ Interact with a Pelican registry service: ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican registry serve](/commands-reference/pelican/registry/serve/) - serve the registry +* [pelican](/commands-reference/) - Interact with data federations +* [pelican registry serve](/commands-reference/registry/serve/) - serve the registry diff --git a/docs/app/commands-reference/pelican/registry/serve/page.mdx b/docs/app/commands-reference/registry/serve/page.mdx similarity index 83% rename from docs/app/commands-reference/pelican/registry/serve/page.mdx rename to docs/app/commands-reference/registry/serve/page.mdx index e90439e9e..fce926acb 100644 --- a/docs/app/commands-reference/pelican/registry/serve/page.mdx +++ b/docs/app/commands-reference/registry/serve/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Registry Serve +title: pelican registry serve --- ## pelican registry serve @@ -30,4 +30,4 @@ pelican registry serve [flags] ### SEE ALSO -* [pelican registry](/commands-reference/pelican/registry/) - Interact with a Pelican registry service +* [pelican registry](/commands-reference/registry/) - Interact with a Pelican registry service diff --git a/docs/app/commands-reference/token/_meta.js b/docs/app/commands-reference/token/_meta.js new file mode 100644 index 000000000..e3462d84a --- /dev/null +++ b/docs/app/commands-reference/token/_meta.js @@ -0,0 +1,3 @@ +export default { + "create": "pelican token create", +} diff --git a/docs/app/commands-reference/pelican/token/create/page.mdx b/docs/app/commands-reference/token/create/page.mdx similarity index 94% rename from docs/app/commands-reference/pelican/token/create/page.mdx rename to docs/app/commands-reference/token/create/page.mdx index 9a9135f6a..b1f7a6b14 100644 --- a/docs/app/commands-reference/pelican/token/create/page.mdx +++ b/docs/app/commands-reference/token/create/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Token Create +title: pelican token create --- ## pelican token create @@ -48,4 +48,4 @@ To create a read/write token for /some/namespace/path in OSDF: pelican token cre ### SEE ALSO -* [pelican token](/commands-reference/pelican/token/) - Interact with tokens used to interact with objects in Pelican +* [pelican token](/commands-reference/token/) - Interact with tokens used to interact with objects in Pelican diff --git a/docs/app/commands-reference/pelican/token/page.mdx b/docs/app/commands-reference/token/page.mdx similarity index 75% rename from docs/app/commands-reference/pelican/token/page.mdx rename to docs/app/commands-reference/token/page.mdx index d793a36fb..296ab0712 100644 --- a/docs/app/commands-reference/pelican/token/page.mdx +++ b/docs/app/commands-reference/token/page.mdx @@ -1,5 +1,5 @@ --- -title: Pelican Token +title: pelican token --- ## pelican token @@ -25,5 +25,5 @@ Interact with tokens used to interact with objects in Pelican ### SEE ALSO -* [pelican](/commands-reference/pelican/) - Interact with data federations -* [pelican token create](/commands-reference/pelican/token/create/) - Create a token +* [pelican](/commands-reference/) - Interact with data federations +* [pelican token create](/commands-reference/token/create/) - Create a token From f2f83c24dca3498ab46ac38d23491d22426aad09 Mon Sep 17 00:00:00 2001 From: Patrick Brophy Date: Thu, 18 Sep 2025 21:16:58 +0000 Subject: [PATCH 11/11] Rebased on main --- docs/app/commands-reference/downtime/list/page.mdx | 1 - docs/app/commands-reference/object/ls/page.mdx | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/app/commands-reference/downtime/list/page.mdx b/docs/app/commands-reference/downtime/list/page.mdx index 8a4b84298..10038c567 100644 --- a/docs/app/commands-reference/downtime/list/page.mdx +++ b/docs/app/commands-reference/downtime/list/page.mdx @@ -20,7 +20,6 @@ pelican downtime list [flags] ``` -h, --help help for list - -o, --output string Output format (table, json, yaml) (default "table") --status string Filter downtimes by status ('incomplete' shows active/future, 'all' shows all history) (default "incomplete") ``` diff --git a/docs/app/commands-reference/object/ls/page.mdx b/docs/app/commands-reference/object/ls/page.mdx index 6eb3024ed..7b5fc642b 100644 --- a/docs/app/commands-reference/object/ls/page.mdx +++ b/docs/app/commands-reference/object/ls/page.mdx @@ -19,6 +19,7 @@ pelican object ls {object} [flags] -j, --json Print results in JSON format -l, --long Include extended information -O, --object-only List objects only + -1, --single-column Force output to be one entry per line -t, --token string Token file to use for transfer ```