PipeOps CLI

PipeOps CLI is a fast, cross-platform command-line tool for managing cloud-native projects with PipeOps. Authenticate via OAuth (PKCE), provision and manage servers, deploy pipelines, interact with agents, and monitor statusβall from your terminal.
Table of Contents
- π Quick Install
- β¨ Features
- π Quick Start
- π Commands Overview
- π§ Configuration
- π οΈ Development
- π³ Docker Usage
- π Platforms
- π€ Contributing
- π Documentation
- π Support & Community
- π Release Process
- π License
- π Acknowledgments
π Quick Install
macOS & Linux (recommended)
curl -fsSL https://raw.githubusercontent.com/PipeOpsHQ/pipeops-cli/main/install.sh | sh
Windows (PowerShell)
irm https://raw.githubusercontent.com/PipeOpsHQ/pipeops-cli/main/install.ps1 | iex
Package managers
Homebrew (macOS/Linux)
brew tap pipeops/pipeops
brew install pipeops
Docker
docker run --rm -it ghcr.io/pipeopshq/pipeops-cli:latest --help
Go install
go install github.com/PipeOpsHQ/pipeops-cli@latest
π For more options and troubleshooting, see the Complete Installation Guide: INSTALL.md
β¨ Features
- π OAuth with PKCE for secure, device-friendly login
- π¦ Project lifecycle management: create, list, configure, deploy
- π Server provisioning and environment management
- π§ CI/CD pipeline management and deployment
- π€ Agent installation and management across platforms
- π Cross-platform support: Linux, macOS, Windows, FreeBSD
- π Real-time status, rich output, and JSON mode
- π¨ Pleasant terminal UX with progress and color
π Quick Start
-
Log in
pipeops auth login
-
Check authentication status
pipeops auth status
-
List projects
pipeops project list
-
Get help
pipeops --help
pipeops auth --help
pipeops project --help
π Commands Overview
| Command |
Description |
Examples |
pipeops auth |
Manage authentication and user details |
pipeops auth login, pipeops auth status |
pipeops project |
Manage, list, and deploy projects |
pipeops project list, pipeops project create |
pipeops deploy |
Manage and deploy CI/CD pipelines |
pipeops deploy pipeline, pipeops deploy status |
pipeops server |
Manage server-related operations |
pipeops server deploy, pipeops server status |
pipeops k3s |
Manage K3s clusters |
pipeops k3s install, pipeops k3s join |
pipeops agent |
Install and manage PipeOps agents |
pipeops agent install, pipeops agent status |
Global flags
--help, -h: Show help
--version, -v: Show version
--json: Output JSON
--quiet, -q: Reduce non-essential output
π§ Configuration
By default, configuration is stored at ~/.pipeops.json, including:
- Authentication tokens
- User preferences
- Default settings
Environment variables
PIPEOPS_CONFIG_PATH: Custom config file location
PIPEOPS_API_URL: Override API endpoint
PIPEOPS_LOG_LEVEL: debug, info, warn, error
π οΈ Development
Prerequisites
Setup
# Clone
git clone https://github.com/PipeOpsHQ/pipeops-cli.git
cd pipeops-cli
# Dependencies
go mod download
# Build
make build
# Test
make test
# Lint
make lint
Make targets
make build # Build the binary
make test # Run tests
make lint # Run linter
make clean # Clean build artifacts
make install # Install locally
make release # Create release build
make docker-build # Build Docker image
make docker-run # Run in Docker
Project structure
pipeops-cli/
βββ cmd/ # CLI commands
β βββ auth/ # Authentication commands
β βββ project/ # Project management commands
β βββ deploy/ # Deployment commands
β βββ ...
βββ internal/ # Internal packages
β βββ auth/ # Authentication logic
β βββ client/ # HTTP client
β βββ config/ # Configuration management
β βββ ...
βββ models/ # Data models
βββ utils/ # Utility functions
βββ .goreleaser.yml # Release configuration
βββ Dockerfile # Docker image
βββ install.sh # Installation script
π³ Docker Usage
Run CLI in Docker
# Basic usage
docker run --rm -it ghcr.io/pipeopshq/pipeops-cli:latest --help
# With authentication (mount config)
docker run --rm -it \
-v ~/.pipeops.json:/root/.pipeops.json \
ghcr.io/pipeopshq/pipeops-cli:latest auth status
# Interactive shell
docker run --rm -it \
-v ~/.pipeops.json:/root/.pipeops.json \
--entrypoint /bin/sh \
ghcr.io/pipeopshq/pipeops-cli:latest
Docker Compose
version: "3.8"
services:
pipeops-cli:
image: ghcr.io/pipeopshq/pipeops-cli:latest
volumes:
- ~/.pipeops.json:/root/.pipeops.json
command: ["project", "list"]
| Platform |
Architecture |
Status |
| Linux |
x86_64 |
β
|
| Linux |
ARM64 |
β
|
| Linux |
ARM |
β
|
| macOS |
x86_64 (Intel) |
β
|
| macOS |
ARM64 (M1/M2) |
β
|
| Windows |
x86_64 |
β
|
| FreeBSD |
x86_64 |
β
|
π€ Contributing
We welcome contributions!
- Fork the repository and create a feature branch
- Follow coding standards and add tests
- Validate with
make test and make lint
- Open a PR with a clear description
Guidelines:
- Follow Go best practices
- Write clear, documented code
- Include tests for new functionality
- Update docs as needed
- Be respectful and collaborative
See CONTRIBUTING.md for details.
π Documentation
π Release Process
Releases are automated via GitHub Actions on tag push:
- Create a tag:
git tag -a v1.0.0 -m "Release v1.0.0"
- Push the tag:
git push origin v1.0.0
- CI will:
- Build binaries for all platforms
- Create a GitHub release with artifacts
- Push Docker images
- Update package managers (e.g., Homebrew)
π License
Licensed under the MIT License. See LICENSE.
π Acknowledgments
- All PipeOps CLI contributors and users
- The Go community for outstanding tooling
- GitHub for CI/CD infrastructure
- The broader open-source community for inspiration
Made with β€οΈ by the PipeOps team