superset-showtime 0.2.3__tar.gz → 0.2.4__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 (30) hide show
  1. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/PKG-INFO +1 -1
  2. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/__init__.py +1 -1
  3. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/cli.py +21 -12
  4. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/.claude/settings.local.json +0 -0
  5. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/.gitignore +0 -0
  6. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/.pre-commit-config.yaml +0 -0
  7. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/CLAUDE.md +0 -0
  8. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/Makefile +0 -0
  9. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/README.md +0 -0
  10. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/dev-setup.sh +0 -0
  11. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/pypi-push.sh +0 -0
  12. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/pyproject.toml +0 -0
  13. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/requirements-dev.txt +0 -0
  14. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/requirements.txt +0 -0
  15. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/__main__.py +0 -0
  16. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/commands/__init__.py +0 -0
  17. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/commands/start.py +0 -0
  18. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/core/__init__.py +0 -0
  19. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/core/aws.py +0 -0
  20. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/core/circus.py +0 -0
  21. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/core/emojis.py +0 -0
  22. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/core/github.py +0 -0
  23. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/core/label_colors.py +0 -0
  24. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/showtime/data/ecs-task-definition.json +0 -0
  25. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/tests/__init__.py +0 -0
  26. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/tests/unit/__init__.py +0 -0
  27. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/tests/unit/test_circus.py +0 -0
  28. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/uv.lock +0 -0
  29. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/workflows-reference/showtime-cleanup.yml +0 -0
  30. {superset_showtime-0.2.3 → superset_showtime-0.2.4}/workflows-reference/showtime-trigger.yml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: superset-showtime
3
- Version: 0.2.3
3
+ Version: 0.2.4
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.2.3"
7
+ __version__ = "0.2.4"
8
8
  __author__ = "Maxime Beauchemin"
9
9
  __email__ = "maximebeauchemin@gmail.com"
10
10
 
@@ -24,7 +24,8 @@ def _get_service_urls(show):
24
24
 
25
25
  return {
26
26
  "logs": f"https://us-west-2.console.aws.amazon.com/ecs/v2/clusters/superset-ci/services/{service_name}/logs?region=us-west-2",
27
- "service": f"https://us-west-2.console.aws.amazon.com/ecs/v2/clusters/superset-ci/services/{service_name}",
27
+ "service": f"https://us-west-2.console.aws.amazon.com/ecs/v2/clusters/superset-ci/services/{service_name}?region=us-west-2",
28
+ "health": f"https://us-west-2.console.aws.amazon.com/ecs/v2/clusters/superset-ci/services/{service_name}/health?region=us-west-2",
28
29
  }
29
30
 
30
31
 
@@ -173,6 +174,9 @@ def start(
173
174
  image_tag: Optional[str] = typer.Option(
174
175
  None, "--image-tag", help="Override ECR image tag (e.g., pr-34764-ci)"
175
176
  ),
177
+ docker_tag: Optional[str] = typer.Option(
178
+ None, "--docker-tag", help="Override Docker image tag (e.g., pr-34639-9a82c20-ci, latest)"
179
+ ),
176
180
  force: bool = typer.Option(
177
181
  False, "--force", help="Force re-deployment by deleting existing service"
178
182
  ),
@@ -213,7 +217,7 @@ def start(
213
217
  # Create environment using trigger handler logic
214
218
  console.print(f"🎪 [bold blue]Creating environment for PR #{pr_number}...[/bold blue]")
215
219
  _handle_start_trigger(
216
- pr_number, github, dry_run_aws, (dry_run or False), aws_sleep, image_tag, force
220
+ pr_number, github, dry_run_aws, (dry_run or False), aws_sleep, docker_tag, force
217
221
  )
218
222
 
219
223
  except GitHubError as e:
@@ -592,7 +596,7 @@ def test_lifecycle(
592
596
  github = GitHubInterface()
593
597
 
594
598
  console.print("🎪 [bold]Step 1: Simulate trigger-start[/bold]")
595
- _handle_start_trigger(pr_number, github, dry_run_aws, dry_run_github, aws_sleep)
599
+ _handle_start_trigger(pr_number, github, dry_run_aws, dry_run_github, aws_sleep, None)
596
600
 
597
601
  console.print()
598
602
  console.print("🎪 [bold]Step 2: Simulate config update[/bold]")
@@ -632,6 +636,9 @@ def sync(
632
636
  aws_sleep: int = typer.Option(
633
637
  0, "--aws-sleep", help="Seconds to sleep during AWS operations (for testing)"
634
638
  ),
639
+ docker_tag: Optional[str] = typer.Option(
640
+ None, "--docker-tag", help="Override Docker image tag (e.g., pr-34639-9a82c20-ci, latest)"
641
+ ),
635
642
  ):
636
643
  """🎪 Intelligently sync PR to desired state (called by GitHub Actions)"""
637
644
  try:
@@ -700,7 +707,9 @@ def sync(
700
707
 
701
708
  # Process the trigger
702
709
  if "showtime-trigger-start" in trigger:
703
- _handle_start_trigger(pr_number, github, dry_run_aws, dry_run_github, aws_sleep)
710
+ _handle_start_trigger(
711
+ pr_number, github, dry_run_aws, dry_run_github, aws_sleep, docker_tag
712
+ )
704
713
  elif "showtime-trigger-stop" in trigger:
705
714
  _handle_stop_trigger(pr_number, github, dry_run_aws, dry_run_github)
706
715
 
@@ -1028,7 +1037,7 @@ def _handle_start_trigger(
1028
1037
  dry_run_aws: bool = False,
1029
1038
  dry_run_github: bool = False,
1030
1039
  aws_sleep: int = 0,
1031
- image_tag_override: Optional[str] = None,
1040
+ docker_tag_override: Optional[str] = None,
1032
1041
  force: bool = False,
1033
1042
  ):
1034
1043
  """Handle start trigger"""
@@ -1160,7 +1169,7 @@ def _handle_start_trigger(
1160
1169
  sha=latest_sha,
1161
1170
  github_user=github_actor,
1162
1171
  feature_flags=feature_flags,
1163
- image_tag_override=image_tag_override,
1172
+ image_tag_override=docker_tag_override,
1164
1173
  force=force,
1165
1174
  )
1166
1175
 
@@ -1172,12 +1181,12 @@ def _handle_start_trigger(
1172
1181
  # Show helpful links for the new service
1173
1182
  console.print("\n🎪 [bold blue]Useful Links:[/bold blue]")
1174
1183
  console.print(f" 🌐 Environment: http://{result.ip}:8080")
1175
- console.print(
1176
- f" 📊 ECS Service: https://us-west-2.console.aws.amazon.com/ecs/v2/clusters/superset-ci/services/{result.service_name}"
1177
- )
1178
- console.print(
1179
- f" 📝 Service Logs: https://us-west-2.console.aws.amazon.com/ecs/v2/clusters/superset-ci/services/{result.service_name}/logs?region=us-west-2"
1180
- )
1184
+
1185
+ # Use centralized URL generation
1186
+ urls = _get_service_urls(show)
1187
+ console.print(f" 📊 ECS Service: {urls['service']}")
1188
+ console.print(f" 📝 Service Logs: {urls['logs']}")
1189
+ console.print(f" 🏥 Health Checks: {urls['health']}")
1181
1190
  console.print(
1182
1191
  f" 🔍 GitHub PR: https://github.com/apache/superset/pull/{pr_number}"
1183
1192
  )