Bloodhound v2 → main (cost-breakdowns + /guard + docs) - #3
Open
jdcbautista wants to merge 7 commits into
Open
Conversation
…wn controls Summary - Replace v1 script with v2 package architecture (scanner/budget/whitelist/teardown). - Slack reporting: scan summary (per region + totals, including 0 counts for scanned types), budget summary, teardown plan/results, and dedicated whitelisted resources list. - Whitelist: tag-based keep rule (default bloodhound:keep=true) plus optional KEEP_RESOURCE_IDS. - Teardown: dry-run by default; apply-mode gated by APPLY_CHANGES and supports simulate mode (TEARDOWN_SIMULATE) plus safety rails (TEARDOWN_TARGET_IDS, TEARDOWN_ALLOW_ALL). - Budgeting: 7-month cohort spend tracking and month-end projection via Cost Explorer. Operational - Add lambda handler entrypoint (lambda_function.lambda_handler) and local runner (run_local.py). - Add env.example and .env auto-loading for local runs. - Add .gitignore to prevent committing secrets/venvs/build zips. - Update requirements to resolve urllib3/botocore conflict. - Add v2 GitHub Actions workflow (invoke_lambda_v2.yml). - Add v2 plan doc and split Slack setup into SLACK_SETUP.md. Notes - v1 is preserved separately under versions/v1_0/ outside this repo directory; v2 deletes/terminations require explicit env flags.
- Move Lambda entrypoint into handlers/ and update Terraform handler + build pipeline - Move docs into docs/ and link from README - Move local runner + AWS helper JSON into tools/ - Remove empty scripts directory - Keep functionality unchanged (only paths/organization)
… the demo, feel free to use this just update with your aws profile, it builds 8 ec2, 2 rds and half get whitelisted, cleaned up readme
…oy; document GUARD_* env vars Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Promotes the latest v2 line to
main, which was still on the v1 architecture-diagram commit from June 2024.What this brings in
feature/2026-06-26-cost-breakdowns-slack(fast-forward of the oldmain): modular scanner, Slack reporting, whitelist, safe teardown, cost breakdowns, and the/guardguardrail command (service allow/deny, group membership)./guardand a Bedrock allow/deny example) and clear deploy steps. Fixed a stale reference toinvoke_lambda_v2.yml(actual:invoke_lambda.yml) and documented theGUARD_*env vars inenv.example.Notes
/guard. Integrating it is a tracked follow-up.🤖 Generated with Claude Code