Skip to content
Merged
Show file tree
Hide file tree
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
23 changes: 3 additions & 20 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
workflow_dispatch:

env:
REGISTRY: docker.io
REGISTRY: ghcr.io
IMAGE_NAME: redis-developer/redisctl

jobs:
Expand Down Expand Up @@ -67,12 +67,6 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Log in to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Log in to GHCR
uses: docker/login-action@v3
with:
Expand All @@ -88,20 +82,9 @@ jobs:
platforms: linux/amd64,linux/arm64
push: true
tags: |
${{ env.IMAGE_NAME }}:latest
${{ env.IMAGE_NAME }}:${{ steps.version.outputs.version }}
${{ env.IMAGE_NAME }}:${{ steps.version.outputs.minor }}
${{ env.IMAGE_NAME }}:${{ steps.version.outputs.major }}
ghcr.io/${{ env.IMAGE_NAME }}:latest
ghcr.io/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.version }}
ghcr.io/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.minor }}
ghcr.io/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.major }}
cache-from: type=gha
cache-to: type=gha,mode=max

- name: Update Docker Hub README
uses: peter-evans/dockerhub-description@v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
repository: redis-developer/redisctl
readme-filepath: ./README.md
short-description: "Unified CLI for Redis Cloud and Redis Enterprise management"
18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

[![Crates.io](https://img.shields.io/crates/v/redisctl.svg)](https://crates.io/crates/redisctl)
[![Documentation](https://docs.rs/redisctl/badge.svg)](https://docs.rs/redisctl)
[![CI](https://github.com/redis-developer/redisctl/actions/workflows/ci.yml/badge.svg)](https://github.com/redis-developer/redisctl/actions/workflows/ci.yml)
[![License](https://img.shields.io/badge/license-MIT%20OR%20Apache--2.0-blue.svg)](https://github.com/redis-developer/redisctl#license)
[![CI](https://github.com/ghcr.io/redis-developer/redisctl/actions/workflows/ci.yml/badge.svg)](https://github.com/ghcr.io/redis-developer/redisctl/actions/workflows/ci.yml)
[![License](https://img.shields.io/badge/license-MIT%20OR%20Apache--2.0-blue.svg)](https://github.com/ghcr.io/redis-developer/redisctl#license)

```bash
# Create a Redis Cloud subscription with one command
Expand Down Expand Up @@ -47,7 +47,7 @@ brew install joshrotenberg/brew/redisctl
cargo install redisctl

# Or download from releases
# https://github.com/redis-developer/redisctl/releases
# https://github.com/ghcr.io/redis-developer/redisctl/releases
```

### 2. Configure
Expand Down Expand Up @@ -277,7 +277,7 @@ cargo install redisctl --features secure-storage
```

### Binary Releases
Download the latest release for your platform from [GitHub Releases](https://github.com/redis-developer/redisctl/releases).
Download the latest release for your platform from [GitHub Releases](https://github.com/ghcr.io/redis-developer/redisctl/releases).

Binaries are available for:
- macOS (Intel and Apple Silicon)
Expand All @@ -290,13 +290,13 @@ Binaries are available for:
docker run --rm \
-e REDIS_CLOUD_API_KEY \
-e REDIS_CLOUD_SECRET_KEY \
redis-developer/redisctl:latest \
ghcr.io/redis-developer/redisctl:latest \
cloud subscription list

# Mount config for persistent profiles
docker run --rm \
-v ~/.config/redisctl:/root/.config/redisctl:ro \
redis-developer/redisctl:latest \
ghcr.io/redis-developer/redisctl:latest \
cloud database list

# Development environment
Expand Down Expand Up @@ -437,7 +437,7 @@ Contributions welcome! See our [Contributing Guide](https://joshrotenberg.github

```bash
# Clone and build
git clone https://github.com/redis-developer/redisctl.git
git clone https://github.com/ghcr.io/redis-developer/redisctl.git
cd redisctl
cargo build --release

Expand All @@ -464,5 +464,5 @@ at your option.
## Support

- [Documentation](https://joshrotenberg.github.io/redisctl/)
- [Issue Tracker](https://github.com/redis-developer/redisctl/issues)
- [Discussions](https://github.com/redis-developer/redisctl/discussions)
- [Issue Tracker](https://github.com/ghcr.io/redis-developer/redisctl/issues)
- [Discussions](https://github.com/ghcr.io/redis-developer/redisctl/discussions)
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ After workflows complete, verify:

- [ ] GitHub Release: https://github.com/redis-developer/redisctl/releases
- Should have binaries for all platforms
- [ ] Docker Hub: https://hub.docker.com/r/redis-developer/redisctl/tags
- [ ] Docker Hub: https://ghcr.io/redis-developer/redisctl/tags
- Should have new version tag
- [ ] crates.io: https://crates.io/crates/redisctl
- Should show new version
Expand Down
30 changes: 15 additions & 15 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ services:
# This is a high-level workflow that replaces multiple manual API calls.
# ==============================================================================
redis-enterprise-init:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-init
depends_on:
redis-enterprise:
Expand Down Expand Up @@ -116,7 +116,7 @@ services:
# Create first test database - basic ephemeral cache
# Configuration: 100MB, no persistence, LRU eviction policy
redis-enterprise-create-db1:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-create-db1
depends_on:
redis-enterprise-init:
Expand All @@ -137,7 +137,7 @@ services:
# Create second test database - persistent with AOF
# Configuration: 200MB, AOF persistence, appendfsync-every-sec
redis-enterprise-create-db2:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-create-db2
depends_on:
redis-enterprise-init:
Expand Down Expand Up @@ -167,7 +167,7 @@ services:
# List all databases to verify creation
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-list-dbs:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-list-dbs
depends_on:
redis-enterprise-create-db1:
Expand All @@ -188,7 +188,7 @@ services:
# Get cache database details with JMESPath filtering
# 👤 HUMAN-FRIENDLY COMMAND (with filtering)
redis-enterprise-get-cache-db:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-get-cache-db
depends_on:
redis-enterprise-create-db1:
Expand All @@ -211,7 +211,7 @@ services:
# Get persistent database details
# 👤 HUMAN-FRIENDLY COMMAND (with filtering)
redis-enterprise-get-persistent-db:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-get-persistent-db
depends_on:
redis-enterprise-create-db2:
Expand Down Expand Up @@ -243,7 +243,7 @@ services:
# Output: Basic cluster details (filtered for key fields)
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-cluster-info:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-cluster-info
depends_on:
redis-enterprise-list-dbs:
Expand All @@ -262,7 +262,7 @@ services:
# List nodes in the cluster
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-list-nodes:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-list-nodes
depends_on:
redis-enterprise-cluster-info:
Expand All @@ -281,7 +281,7 @@ services:
# Check cluster stats
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-stats:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-stats
depends_on:
redis-enterprise-list-nodes:
Expand All @@ -308,7 +308,7 @@ services:
# Get license information
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-license:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-license
depends_on:
redis-enterprise-stats:
Expand All @@ -330,7 +330,7 @@ services:
# Get detailed node information
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-node-details:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-node-details
depends_on:
redis-enterprise-license:
Expand All @@ -349,7 +349,7 @@ services:
# List all users
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-users:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-users
depends_on:
redis-enterprise-node-details:
Expand All @@ -368,7 +368,7 @@ services:
# Get cluster policy
# 🔧 RAW API COMMAND
redis-enterprise-policy:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-policy
depends_on:
redis-enterprise-users:
Expand All @@ -387,7 +387,7 @@ services:
# Check for any cluster alerts
# 🔧 RAW API COMMAND
redis-enterprise-alerts:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-alerts
depends_on:
redis-enterprise-policy:
Expand All @@ -406,7 +406,7 @@ services:
# Get comprehensive cluster information
# 👤 HUMAN-FRIENDLY COMMAND
redis-enterprise-cluster-full:
image: redis-developer/redisctl:latest
image: ghcr.io/redis-developer/redisctl:latest
container_name: redis-enterprise-cluster-full
depends_on:
redis-enterprise-alerts:
Expand Down
2 changes: 1 addition & 1 deletion docs/src/getting-started/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ docker run --rm -it \
-e REDIS_ENTERPRISE_INSECURE="true" \
-e REDIS_ENTERPRISE_USER="admin@redis.local" \
-e REDIS_ENTERPRISE_PASSWORD="Redis123!" \
redis-developer/redisctl:latest \
ghcr.io/redis-developer/redisctl:latest \
/bin/sh

# Inside the container, run commands
Expand Down
10 changes: 5 additions & 5 deletions docs/src/getting-started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ The quickest way to try redisctl with no installation:

```bash
# Run commands directly
docker run --rm redis-developer/redisctl --help
docker run --rm ghcr.io/redis-developer/redisctl --help

# With environment variables
docker run --rm \
-e REDIS_CLOUD_API_KEY="your-key" \
-e REDIS_CLOUD_SECRET_KEY="your-secret" \
redis-developer/redisctl cloud database list
ghcr.io/redis-developer/redisctl cloud database list
```

## Homebrew (macOS/Linux)
Expand Down Expand Up @@ -40,12 +40,12 @@ brew upgrade redisctl

## Binary Releases

Download the latest release for your platform from the [GitHub releases page](https://github.com/redis-developer/redisctl/releases).
Download the latest release for your platform from the [GitHub releases page](https://github.com/ghcr.io/redis-developer/redisctl/releases).

### Linux/macOS
```bash
# Download the binary (replace VERSION and PLATFORM)
curl -L https://github.com/redis-developer/redisctl/releases/download/vVERSION/redisctl-PLATFORM.tar.gz | tar xz
curl -L https://github.com/ghcr.io/redis-developer/redisctl/releases/download/vVERSION/redisctl-PLATFORM.tar.gz | tar xz

# Move to PATH
sudo mv redisctl /usr/local/bin/
Expand Down Expand Up @@ -80,7 +80,7 @@ cargo install redisctl --features secure-storage
## From Source

```bash
git clone https://github.com/redis-developer/redisctl.git
git clone https://github.com/ghcr.io/redis-developer/redisctl.git
cd redisctl

# Basic installation
Expand Down
4 changes: 2 additions & 2 deletions docs/src/getting-started/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export REDIS_CLOUD_SECRET_KEY="your-secret-key"
docker run --rm \
-e REDIS_CLOUD_API_KEY \
-e REDIS_CLOUD_SECRET_KEY \
redis-developer/redisctl cloud subscription list
ghcr.io/redis-developer/redisctl cloud subscription list
```

### Redis Enterprise
Expand All @@ -33,7 +33,7 @@ docker run --rm \
-e REDIS_ENTERPRISE_USER \
-e REDIS_ENTERPRISE_PASSWORD \
-e REDIS_ENTERPRISE_INSECURE \
redis-developer/redisctl enterprise cluster get
ghcr.io/redis-developer/redisctl enterprise cluster get
```

That's it! You just ran your first redisctl command.
Expand Down
14 changes: 7 additions & 7 deletions docs/src/presentation/slides.html
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ <h1>
</h1>
<h3>The CLI for Redis Cloud and Enterprise</h3>
<p class="small" style="margin-top: 2em">
github.com/redis-developer/redisctl
github.com/ghcr.io/redis-developer/redisctl
</p>
</section>

Expand Down Expand Up @@ -500,19 +500,19 @@ <h2>
<h2>Using with Docker</h2>
<p>No installation required</p>
<pre><code class="language-bash"># Run any command
docker run --rm redis-developer/redisctl \
docker run --rm ghcr.io/redis-developer/redisctl \
cloud subscription list

# With environment variables
docker run --rm \
-e REDIS_CLOUD_API_KEY=$KEY \
-e REDIS_CLOUD_SECRET_KEY=$SECRET \
redis-developer/redisctl cloud database list
ghcr.io/redis-developer/redisctl cloud database list

# Or mount your config
docker run --rm \
-v ~/.config/redisctl:/root/.config/redisctl \
redis-developer/redisctl --profile prod cloud database list</code></pre>
ghcr.io/redis-developer/redisctl --profile prod cloud database list</code></pre>
</section>

<!-- CI/CD -->
Expand Down Expand Up @@ -629,10 +629,10 @@ <h2>Installation</h2>
cargo install redisctl --features secure-storage

# Docker
docker run -it redis-developer/redisctl --help
docker run -it ghcr.io/redis-developer/redisctl --help

# From releases (Linux x86_64)
curl -L https://github.com/redis-developer/redisctl/releases/latest/download/redisctl-x86_64-unknown-linux-gnu.tar.gz | tar xz
curl -L https://github.com/ghcr.io/redis-developer/redisctl/releases/latest/download/redisctl-x86_64-unknown-linux-gnu.tar.gz | tar xz
./redisctl --help</code></pre>
</section>

Expand All @@ -649,7 +649,7 @@ <h2>Get Started</h2>
redisctl cloud subscription list
redisctl cloud database list --subscription-id 123456</code></pre>
<p style="margin-top: 1.5em"><br /></p>
<h3>github.com/redis-developer/redisctl</h3>
<h3>github.com/ghcr.io/redis-developer/redisctl</h3>
<p class="small">Docs: joshrotenberg.github.io/redisctl</p>
</section>
</div>
Expand Down
2 changes: 1 addition & 1 deletion docs/src/walkthrough/cloud-examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export REDIS_CLOUD_SECRET_KEY="your-secret-key"
alias redisctl='docker run --rm \
-e REDIS_CLOUD_API_KEY \
-e REDIS_CLOUD_SECRET_KEY \
redis-developer/redisctl'
ghcr.io/redis-developer/redisctl'
```

## API Layer Examples
Expand Down
2 changes: 1 addition & 1 deletion docs/src/walkthrough/enterprise-examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ alias redisctl='docker run --rm \
-e REDIS_ENTERPRISE_USER \
-e REDIS_ENTERPRISE_PASSWORD \
-e REDIS_ENTERPRISE_INSECURE \
redis-developer/redisctl'
ghcr.io/redis-developer/redisctl'
```

## API Layer Examples
Expand Down
Loading