Skip to content

Add installation README #114

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 15, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
110 changes: 101 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,123 @@
# cfctl - Command Line Interface for SpaceONE

cfctl is a powerful command-line interface tool designed to interact with SpaceONE services. It provides a seamless way to manage and control your SpaceONE resources through the command line.
**cfctl** is a powerful command-line interface tool designed to interact with SpaceONE services. It provides a seamless way to manage and control your SpaceONE resources through the command line.

## Features
# Features

- **Dynamic Service Discovery**: Automatically discovers and interacts with available SpaceONE services
- **Multi-Environment Support**: Manages multiple environments (user/app) with easy switching
- **Secure Authentication**: Supports both user and application token-based authentication
- **Rich Output Formats**: Supports various output formats including table, yaml, json, and csv
- **Short Names**: Configurable resource aliases for faster command execution
- **Alias**: Configurable resource aliases for faster command execution

## Installation
# 01. Installation

### Using Homebrew (macOS)
## Using Homebrew (Recommended)

```bash
brew tap cloudforet-io/tap
brew install cfctl
```

### Manual Installation
## Manual Installation

Download the latest binary from [releases page](https://github.com/cloudforet-io/cfctl/releases)
### macOS

## Quick Start
**For Intel Mac**

1. Initialize cfctl configuration:
```bash
curl -LO "https://github.com/cloudforet-io/cfctl/releases/latest/download/cfctl_Darwin_x86_64.tar.gz"
```

```
tar xvf cfctl_Darwin_x86_64.tar.gz
chmod +x cfctl
sudo mv cfctl /usr/local/bin/
```

**For Apple Silicon Mac**

```bash
curl -LO "https://github.com/cloudforet-io/cfctl/releases/latest/download/cfctl_Darwin_arm64.tar.gz"
```

```bash
tar xvf cfctl_Darwin_arm64.tar.gz
chmod +x cfctl
sudo mv cfctl /usr/local/bin/
```


### Linux

**For x86_64**

```bash
curl -LO "https://github.com/cloudforet-io/cfctl/releases/latest/download/cfctl_Linux_x86_64.tar.gz"
```

```bash
tar xvf cfctl_Linux_x86_64.tar.gz
chmod +x cfctl
sudo mv cfctl /usr/local/bin/
```

**For ARM64**

```bash
curl -LO "https://github.com/cloudforet-io/cfctl/releases/latest/download/cfctl_Linux_arm64.tar.gz"
```

```bash
tar xvf cfctl_Linux_arm64.tar.gz
chmod +x cfctl
sudo mv cfctl /usr/local/bin/
```

### Docker

**Pull the latest image**

```bash
docker pull cloudforet/cfctl:latest
```

**Create an alias for easier use**

bash

```bash
echo 'alias cfctl="docker run --rm -it -v $HOME/.cfctl:/root/.cfctl cloudforet/cfctl:latest"' >> ~/.bashrc
source ~/.bashrc
```

zsh

```bash
echo 'alias cfctl="docker run --rm -it -v $HOME/.cfctl:/root/.cfctl cloudforet/cfctl:latest"' >> ~/.zshrc
source ~/.zshrc
```

fish

```bash
echo 'alias cfctl="docker run --rm -it -v $HOME/.cfctl:/root/.cfctl cloudforet/cfctl:latest"' >> ~/.config/fish/config.fish
source ~/.config/fish/config.fish
```

### Windows
1. Download the latest Windows release from our [releases page](https://github.com/cloudforet-io/cfctl/releases)
2. Extract the `cfctl_Windows_x86_64.zip` file
3. Add the extracted directory to your system's PATH environment variable
4. Open PowerShell or Command Prompt and verify the installation:

```powershell
cfctl version
```

# 02. Quick Start

## 2.1. Initialize `cfctl` configuration

```bash
cfctl setting init
Expand Down
Loading