Skip to content

chnacib/nami

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nami

Simple CLI to interact with AWS ECS in a fast and scriptable way.

Go Version Build


✨ Overview

nami is a lightweight command-line tool that simplifies interaction with Amazon ECS. It allows developers and platform teams to quickly inspect ECS services and tasks, fetch logs, execute commands in running containers, and much more.

If you're tired of navigating through the AWS Console or struggling with the AWS CLI verbosity — nami is for you.


⚡ Quickstart

Prerequisites

  • Go 1.22 or newer
  • AWS CLI configured (aws configure)
  • Valid IAM permissions for ECS and CloudWatch logs

Installation

go install github.com/chnacib/nami@latest

📘 Command Line Reference

This document provides examples of common nami commands.


🔎 Help

List available commands:

nami -h
nami --help

📋 List Resources

List ECS Clusters

nami get clusters

List Services in a Cluster

nami get service -c [cluster]

List Tasks in a Service

nami get task [service] -c [cluster]

List Task Definitions

nami get taskdefinition

List Task Definition Revisions

nami get revision [taskdefinition]

List Auto Scaling Configurations

nami get autoscaling -c [cluster]

📝 Describe Resources

Describe a Cluster

nami describe cluster [cluster]

Describe a Service

nami describe service [service] -c [cluster]

Describe a Task

nami describe task [task] -c [cluster]

Describe a Task Definition

nami describe taskdefinition [taskdefinition]

⚙️ Set Configurations

Set Auto Scaling for a Service

nami set autoscale [service] --cpu 40 --mem 30 --request 500 --min 1 --max 10 -c [cluster]

Set Desired Task Count

nami set replicas [service] -d 5 -c [cluster]

Update Service Revision

nami set revision [service] -r 78 -c [cluster]

🧪 Execute and Monitor

Execute Interactive Command in a Container

nami exec [task] -c [cluster] [command]

Retrieve Container Logs

nami logs task [task] -c [cluster] --limit 500

nami logs service [service] -c [cluster] --limit 500

🧪 Development

Clone the repo:

git clone https://github.com/chnacib/nami.git
cd nami
make build

Run tests:

go test ./...

Format and lint:

golangci-lint run

🤝 Contributing

Pull requests are welcome! Feel free to open issues to report bugs, request features or propose ideas.

To contribute:

  1. Fork the repository
  2. Create your feature branch
  3. Commit your changes
  4. Push and open a pull request

📄 License

MIT


📣 Author

Made with ☕ by @chnacib

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages