superset-showtime 0.4.5__tar.gz → 0.4.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of superset-showtime might be problematic. Click here for more details.

Files changed (32) hide show
  1. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/.claude/settings.local.json +2 -1
  2. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/PKG-INFO +1 -1
  3. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/__init__.py +1 -1
  4. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/pull_request.py +23 -3
  5. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/show.py +3 -3
  6. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/data/ecs-task-definition.json +0 -4
  7. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/.gitignore +0 -0
  8. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/.pre-commit-config.yaml +0 -0
  9. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/CLAUDE.md +0 -0
  10. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/Makefile +0 -0
  11. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/README.md +0 -0
  12. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/dev-setup.sh +0 -0
  13. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/pypi-push.sh +0 -0
  14. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/pyproject.toml +0 -0
  15. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/requirements-dev.txt +0 -0
  16. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/requirements.txt +0 -0
  17. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/__main__.py +0 -0
  18. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/cli.py +0 -0
  19. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/__init__.py +0 -0
  20. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/aws.py +0 -0
  21. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/emojis.py +0 -0
  22. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/github.py +0 -0
  23. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/github_messages.py +0 -0
  24. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/showtime/core/label_colors.py +0 -0
  25. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/tests/__init__.py +0 -0
  26. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/tests/unit/__init__.py +0 -0
  27. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/tests/unit/test_label_transitions.py +0 -0
  28. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/tests/unit/test_pull_request.py +0 -0
  29. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/tests/unit/test_show.py +0 -0
  30. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/uv.lock +0 -0
  31. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/workflows-reference/showtime-cleanup.yml +0 -0
  32. {superset_showtime-0.4.5 → superset_showtime-0.4.9}/workflows-reference/showtime-trigger.yml +0 -0
@@ -41,7 +41,8 @@
41
41
  "Bash(make:*)",
42
42
  "Bash(showtime status:*)",
43
43
  "Bash(showtime sync:*)",
44
- "Bash(AWS_PROFILE=\"\" showtime sync 34831 --dry-run-aws --dry-run-github)"
44
+ "Bash(AWS_PROFILE=\"\" showtime sync 34831 --dry-run-aws --dry-run-github)",
45
+ "Bash(git stash:*)"
45
46
  ],
46
47
  "deny": [],
47
48
  "ask": []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: superset-showtime
3
- Version: 0.4.5
3
+ Version: 0.4.9
4
4
  Summary: 🎪 Apache Superset ephemeral environment management with circus tent emoji state tracking
5
5
  Project-URL: Homepage, https://github.com/apache/superset-showtime
6
6
  Project-URL: Documentation, https://superset-showtime.readthedocs.io/
@@ -4,7 +4,7 @@
4
4
  Circus tent emoji state tracking for Apache Superset ephemeral environments.
5
5
  """
6
6
 
7
- __version__ = "0.4.5"
7
+ __version__ = "0.4.9"
8
8
  __author__ = "Maxime Beauchemin"
9
9
  __email__ = "maximebeauchemin@gmail.com"
10
10
 
@@ -4,6 +4,7 @@
4
4
  Handles atomic transactions, trigger processing, and environment orchestration.
5
5
  """
6
6
 
7
+ import os
7
8
  from dataclasses import dataclass
8
9
  from datetime import datetime
9
10
  from typing import Any, List, Optional
@@ -244,6 +245,9 @@ class PullRequest:
244
245
  show.status = "running"
245
246
  print(f"✅ Deployment completed - environment running at {show.ip}:8080")
246
247
  self._update_show_labels(show, dry_run_github)
248
+
249
+ # Show AWS console URLs for monitoring
250
+ self._show_service_urls(show)
247
251
 
248
252
  self._post_success_comment(show, dry_run_github)
249
253
  return SyncResult(success=True, action_taken="create_environment", show=show)
@@ -273,6 +277,9 @@ class PullRequest:
273
277
  new_show.status = "running"
274
278
  print(f"✅ Rolling update completed - new environment at {new_show.ip}:8080")
275
279
  self._update_show_labels(new_show, dry_run_github)
280
+
281
+ # Show AWS console URLs for monitoring
282
+ self._show_service_urls(new_show)
276
283
 
277
284
  self._post_rolling_success_comment(old_show, new_show, dry_run_github)
278
285
  return SyncResult(success=True, action_taken=action_needed, show=new_show)
@@ -390,11 +397,14 @@ class PullRequest:
390
397
  if action in ["create_environment", "rolling_update", "auto_sync"]:
391
398
  if self.current_show and self.current_show.status in [
392
399
  "building",
393
- "built",
400
+ "built",
394
401
  "deploying",
395
- "running",
396
402
  ]:
397
403
  return False # Another job active
404
+
405
+ # For rolling updates, running environments are OK to update
406
+ if action in ["rolling_update", "auto_sync"] and self.current_show and self.current_show.status == "running":
407
+ return True # Allow rolling updates on running environments
398
408
 
399
409
  if dry_run:
400
410
  print(f"🎪 [DRY-RUN] Would atomically claim PR for {action}")
@@ -424,7 +434,7 @@ class PullRequest:
424
434
  status="building",
425
435
  created_at=datetime.utcnow().strftime("%Y-%m-%dT%H-%M"),
426
436
  ttl="24h",
427
- requested_by="github_actor", # TODO: Get from context
437
+ requested_by=os.getenv("GITHUB_ACTOR", "unknown"),
428
438
  )
429
439
 
430
440
  def _post_building_comment(self, show: Show, dry_run: bool = False) -> None:
@@ -544,3 +554,13 @@ class PullRequest:
544
554
 
545
555
  # Final refresh to update cache with all changes
546
556
  self.refresh_labels()
557
+
558
+ def _show_service_urls(self, show: Show) -> None:
559
+ """Show AWS console URLs for monitoring deployment"""
560
+ from .github_messages import get_aws_console_urls
561
+
562
+ urls = get_aws_console_urls(show.ecs_service_name)
563
+ print(f"\n🎪 Monitor deployment progress:")
564
+ print(f"📝 Logs: {urls['logs']}")
565
+ print(f"📊 Service: {urls['service']}")
566
+ print("")
@@ -189,16 +189,16 @@ class Show:
189
189
  # Full registry caching in CI (Docker driver supports it)
190
190
  cmd.extend([
191
191
  "--cache-from",
192
- "type=registry,ref=apache/superset-cache:3.10-slim-bookworm",
192
+ "type=registry,ref=apache/superset-cache:showtime",
193
193
  "--cache-to",
194
- "type=registry,mode=max,ref=apache/superset-cache:3.10-slim-bookworm",
194
+ "type=registry,mode=max,ref=apache/superset-cache:showtime",
195
195
  ])
196
196
  print("🐳 CI environment: Using full registry caching")
197
197
  else:
198
198
  # Local build: cache-from only (no cache export)
199
199
  cmd.extend([
200
200
  "--cache-from",
201
- "type=registry,ref=apache/superset-cache:3.10-slim-bookworm",
201
+ "type=registry,ref=apache/superset-cache:showtime",
202
202
  ])
203
203
  print("🐳 Local environment: Using cache-from only (no export)")
204
204
 
@@ -43,10 +43,6 @@
43
43
  {
44
44
  "name": "PYTHONUNBUFFERED",
45
45
  "value": "1"
46
- },
47
- {
48
- "name": "PYTHONPATH",
49
- "value": "/app/docker/pythonpath_dev"
50
46
  }
51
47
  ],
52
48
  "mountPoints": [],