Airavata CLI to consume Airavata APIs #566
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Airavata CLI
A starter CLI for Apache Airavata. The goal of having this CLI is to have an additional mode of using Airavata APIs - especially useful for shell-scripting use cases.
Features
Disclaimers
The CLI has not been fully tested, and in active development. Feedback and suggestions are welcome!
Installation
Prerequisites
Build from Source
Using Make
Quick Start
1. Authentication
First, authenticate with your Airavata server:
This will:
2. Basic Usage
3. Output Formats
Configuration
The CLI stores configuration in
~/.airavata-cli/config.yaml:Command Reference
Authentication Commands
Gateway Commands
Project Commands
Experiment Commands
Application Commands
Application Modules
Application Deployments
Application Interfaces
Compute Resource Commands
Storage Resource Commands
Credential Commands
Resource Profile Commands
Gateway Resource Profiles
User Resource Profiles
Group Resource Profiles
Workflow Commands
Sharing Registry Commands
Domain Commands
User Commands
Group Commands
Entity Commands
Permission Commands
Orchestrator Commands
User Profile Commands
Tenant Profile Commands
IAM Admin Commands
Group Manager Commands
Global Options
Examples
Complete Workflow Example
Batch Operations
Development
Project Structure
Adding New Commands
pkg/commands/pkg/commands/root.goRegenerating Thrift Client
# Generate Go client from Thrift definitions make generate-thriftThis will:
airavata_service.thriftgen-go/directoryTesting
Troubleshooting
Authentication Issues
Connection Issues
Output Format Issues
--output jsonfor machine-readable output--output tablefor human-readable output--output csvfor spreadsheet-compatible output