()
| 221 | |
| 222 | |
| 223 | def main(): |
| 224 | parser = build_parser() |
| 225 | args = parser.parse_args() |
| 226 | |
| 227 | token = os.environ.get("SENTRY_AUTH_TOKEN") |
| 228 | if not token: |
| 229 | raise RuntimeError("Missing SENTRY_AUTH_TOKEN env var.") |
| 230 | |
| 231 | base_url = args.base_url |
| 232 | |
| 233 | if args.command == "list-issues": |
| 234 | data = handle_list_issues(args, token, base_url) |
| 235 | elif args.command == "issue-detail": |
| 236 | data = handle_issue_detail(args, token, base_url) |
| 237 | elif args.command == "issue-events": |
| 238 | data = handle_issue_events(args, token, base_url) |
| 239 | elif args.command == "event-detail": |
| 240 | data = handle_event_detail(args, token, base_url) |
| 241 | else: |
| 242 | raise RuntimeError(f"Unknown command: {args.command}") |
| 243 | |
| 244 | if not args.no_redact: |
| 245 | data = redact_data(data) |
| 246 | |
| 247 | print(json.dumps(data, indent=2, sort_keys=True)) |
| 248 | |
| 249 | |
| 250 | if __name__ == "__main__": |
no test coverage detected