Skip to content

Theemiss/AWSManager

Repository files navigation

AWSManager

AWS Organizations reporting: cost history, billing charts, OU group management, Slack alerts, and optional HTML email notifications.


Structure

AWSManager/
├── aws_reporter/          # Scheduled reports, Slack, resource listing
│   ├── run.py             # Main scheduler entrypoint
│   └── utils/
│       ├── config.py      # Env-based settings
│       ├── scheduler.py
│       ├── slack_util.py
│       └── Models/
├── dashboard/             # Flask dashboard scaffold
├── examples/              # Sample account list JSON
├── config.example         # AWS CLI profile template
└── credentials.example

Features

  • 7D / 15D / 30D resource usage and cost history
  • Billing graphs (24h, 7d)
  • Move accounts between Organizations OUs (read-only, disabled, active)
  • Slack billing alerts and CSV report uploads
  • Optional HTML email notifications via SMTP

Quick start

git clone https://github.com/Theemiss/AWSManager.git
cd AWSManager
pip install -r requirements.txt
cp .env.example .env
# edit .env

cd aws_reporter
python run.py

Environment variables

Variable Purpose
AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY Organizations management credentials
AWS_PARENT_OU_ID Root OU for account moves
AWS_READ_ONLY_OU_ID / AWS_DISABLED_OU_ID / AWS_ACTIVE_OU_ID Target OUs
SLACK_BOT_TOKEN Slack Web API
SLACK_WEBHOOK_URL / SLACK_TEST_WEBHOOK_URL Incoming webhooks
SLACK_WEBHOOK_ENV TEST or production webhook selector
SLACK_HISTORY_CHANNEL Channel ID for history uploads
REPORT_START_DATE / REPORT_END_DATE Default report window
LIMIT_DISABLE / LIMIT_DELETE Cost thresholds for OU moves
NOTIFY_FROM_EMAIL / SMTP_* Email notifications
EC2_STOP_ACCOUNT_ID Optional account filter for stop job
FLASK_SECRET_KEY Dashboard session secret

See .env.example for a full template.


Reports

Generated files under aws_reporter/utils/reports/ are gitignored. Seed from examples/account_list.example.json for local testing.


Docker

docker build -t awsmanager .

Pass AWS and Slack env vars at runtime.


License

MIT - see LICENSE.

About

AWS Organizations cost reporting, billing charts, OU management, and Slack alerts

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors