Skip to content

Command Reference

Complete reference for all pfy CLI commands.

Command Structure

bash
pfy [global-flags] <command> [subcommand] [flags]

Global Flags

Available on all commands:

FlagShortDescription
--managerManager server URL
--tokenPersonal Access Token
--insecure-skip-tls-verifySkip TLS verification (not for production)
--timeoutHTTP request timeout for Manager API calls (e.g. 30s, 1m; default: 30s)
--ciCI/CD environment indicator
--verbose-vVerbose output with details
--quiet-qSuppress normal output
--versionPrint the CLI binary's version and exit

No structured output

There is no --output/-o flag. Every command prints human-readable text only; JSON and YAML output are not implemented — see Known Issues.

Core Commands

Setup & Configuration

CommandDescription
loginAuthenticate with ProductifyFW manager
initInitialize new project configuration
syncSync project configuration from manager
versionManage project version (show/set/bump)

Not yet implemented

pfy logout, pfy whoami, and pfy env do not exist. Remove the saved token by editing ~/.pfy/config.yaml directly, and edit the environments section of project.yaml by hand — see Known Issues and Known Issues.

Resource Management

CommandDescription
projectManage projects - the top-level organization units
tenantManage tenants within projects for multi-tenancy
applicationManage application instances within tenants
languagepackManage internationalization language packs
piletManage pilet packages for microfrontend applications

CI/CD & Deployment

CommandDescription
ciGenerate and update CI/CD pipeline templates
nomadManage Nomad job deployments

Authentication

  • login - Authenticate with Manager

Command Categories

By Function

Setup & Configuration

  • login - Initial authentication
  • init - Initialize project configuration
  • sync - Sync from manager
  • version - Version management

Project Hierarchy

  • project - Top-level organization
  • tenant - Multi-tenant isolation
  • application - Deployable instances

Customization

  • languagepack - Internationalization
  • pilet - Microfrontend packages

CI/CD

  • ci - Pipeline template generation
  • nomad - Nomad job deployment

By Development Phase

Getting Started

bash
# 1. Authenticate
pfy login --server https://manager.example.com --token <token>

# 2. Initialize project
pfy init --name my-app --language go

# 3. Generate CI/CD
pfy ci update

Development

bash
# Bump version
pfy version bump --part patch

# Promote application (--slug is required)
pfy application promote --application-id <id> --target-tenant-id <tenant> --slug <slug>

Release & Deploy

bash
# Bump version, regenerate CI templates, deploy to Nomad
pfy version bump --part minor
pfy ci update
pfy nomad deploy --use-project-version

Usage Patterns

Scripting Mode

--quiet suppresses normal output — it is for silencing a command, not for making it parseable. To match on output, use the default text format:

bash
#!/bin/bash
pfy project list | grep "my-project"

CI/CD Mode

Use --ci flag for CI/CD environments:

bash
pfy --ci nomad deploy -f nomad/prod/app.nomad --use-project-version

Getting Help

General Help

bash
pfy --help

Command Help

bash
pfy project --help
pfy project create --help

Common Patterns

Chaining Commands

bash
# Get project ID and create tenant
PROJECT_ID=$(pfy project get --slug my-project | grep "ID:" | awk '{print $2}')
pfy tenant create --project-id $PROJECT_ID --slug tenant1 --name "Tenant 1"

Error Handling

bash
if pfy project create --slug test --name "Test"; then
    echo "Project created successfully"
else
    echo "Failed to create project"
    exit 1
fi

Verbose Debugging

bash
pfy --verbose project create --slug debug --name "Debug"

Next Steps

Explore detailed documentation for each command:

Setup Commands

  • login - Authentication
  • init - Initialize project configuration
  • sync - Sync from manager
  • version - Version management

Resource Management

CI/CD

  • ci - CI/CD pipeline template generation
  • nomad - Nomad deployment management

Guides

For additional information, use pfy --help or pfy <command> --help to see all available options.