tinybird 0.0.1.dev323__tar.gz → 0.0.1.dev325__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.
Files changed (153) hide show
  1. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/PKG-INFO +1 -1
  2. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/__cli__.py +2 -2
  3. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/copy.py +3 -1
  4. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/deployment_common.py +22 -3
  5. tinybird-0.0.1.dev325/tinybird/tb/modules/job_common.py +15 -0
  6. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/sink.py +3 -1
  7. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird.egg-info/PKG-INFO +1 -1
  8. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird.egg-info/SOURCES.txt +1 -0
  9. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/setup.cfg +0 -0
  10. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/__cli__.py +0 -0
  11. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/ch_utils/constants.py +0 -0
  12. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/ch_utils/engine.py +0 -0
  13. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/check_pypi.py +0 -0
  14. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/client.py +0 -0
  15. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/config.py +0 -0
  16. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/connectors.py +0 -0
  17. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/context.py +0 -0
  18. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/datafile/common.py +0 -0
  19. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/datafile/exceptions.py +0 -0
  20. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/datafile/parse_connection.py +0 -0
  21. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/datafile/parse_datasource.py +0 -0
  22. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/datafile/parse_pipe.py +0 -0
  23. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/datatypes.py +0 -0
  24. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/feedback_manager.py +0 -0
  25. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/git_settings.py +0 -0
  26. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/prompts.py +0 -0
  27. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/service_datasources.py +0 -0
  28. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/sql.py +0 -0
  29. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/sql_template.py +0 -0
  30. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/sql_template_fmt.py +0 -0
  31. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/sql_toolset.py +0 -0
  32. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/syncasync.py +0 -0
  33. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/check_pypi.py +0 -0
  34. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/cli.py +0 -0
  35. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/client.py +0 -0
  36. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/config.py +0 -0
  37. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/__init__.py +0 -0
  38. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/agent.py +0 -0
  39. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/animations.py +0 -0
  40. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/banner.py +0 -0
  41. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/command_agent.py +0 -0
  42. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/compactor.py +0 -0
  43. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/explore_agent.py +0 -0
  44. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/file_agent.py +0 -0
  45. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/memory.py +0 -0
  46. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/mock_agent.py +0 -0
  47. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/models.py +0 -0
  48. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/prompts.py +0 -0
  49. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/testing_agent.py +0 -0
  50. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/__init__.py +0 -0
  51. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/analyze.py +0 -0
  52. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/append.py +0 -0
  53. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/build.py +0 -0
  54. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/datafile.py +0 -0
  55. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/deploy.py +0 -0
  56. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/deploy_check.py +0 -0
  57. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/diff_resource.py +0 -0
  58. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/execute_query.py +0 -0
  59. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/file.py +0 -0
  60. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/get_endpoint_stats.py +0 -0
  61. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/get_openapi_definition.py +0 -0
  62. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/mock.py +0 -0
  63. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/plan.py +0 -0
  64. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/request_endpoint.py +0 -0
  65. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/run_command.py +0 -0
  66. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/secret.py +0 -0
  67. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/tools/test.py +0 -0
  68. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/agent/utils.py +0 -0
  69. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/branch.py +0 -0
  70. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/build.py +0 -0
  71. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/build_common.py +0 -0
  72. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/cicd.py +0 -0
  73. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/cli.py +0 -0
  74. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/common.py +0 -0
  75. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/config.py +0 -0
  76. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/connection.py +0 -0
  77. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/create.py +0 -0
  78. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/build.py +0 -0
  79. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/build_common.py +0 -0
  80. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/build_datasource.py +0 -0
  81. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/build_pipe.py +0 -0
  82. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/diff.py +0 -0
  83. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/fixture.py +0 -0
  84. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/format_common.py +0 -0
  85. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/format_datasource.py +0 -0
  86. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/format_pipe.py +0 -0
  87. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/pipe_checker.py +0 -0
  88. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/playground.py +0 -0
  89. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datafile/pull.py +0 -0
  90. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/datasource.py +0 -0
  91. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/deployment.py +0 -0
  92. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/deprecations.py +0 -0
  93. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/dev_server.py +0 -0
  94. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/endpoint.py +0 -0
  95. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/exceptions.py +0 -0
  96. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/feedback_manager.py +0 -0
  97. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/info.py +0 -0
  98. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/infra.py +0 -0
  99. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/job.py +0 -0
  100. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/llm.py +0 -0
  101. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/llm_utils.py +0 -0
  102. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/local.py +0 -0
  103. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/local_common.py +0 -0
  104. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/local_logs.py +0 -0
  105. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/login.py +0 -0
  106. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/login_common.py +0 -0
  107. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/logout.py +0 -0
  108. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/materialization.py +0 -0
  109. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/mock.py +0 -0
  110. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/mock_common.py +0 -0
  111. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/open.py +0 -0
  112. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/pipe.py +0 -0
  113. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/project.py +0 -0
  114. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/regions.py +0 -0
  115. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/secret.py +0 -0
  116. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/secret_common.py +0 -0
  117. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/shell.py +0 -0
  118. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/table.py +0 -0
  119. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/telemetry.py +0 -0
  120. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/test.py +0 -0
  121. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/test_common.py +0 -0
  122. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/tinyunit/tinyunit.py +0 -0
  123. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/tinyunit/tinyunit_lib.py +0 -0
  124. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/token.py +0 -0
  125. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/watch.py +0 -0
  126. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/workspace.py +0 -0
  127. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb/modules/workspace_members.py +0 -0
  128. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli.py +0 -0
  129. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/auth.py +0 -0
  130. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/branch.py +0 -0
  131. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/cicd.py +0 -0
  132. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/cli.py +0 -0
  133. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/common.py +0 -0
  134. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/config.py +0 -0
  135. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/connection.py +0 -0
  136. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/datasource.py +0 -0
  137. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/exceptions.py +0 -0
  138. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/fmt.py +0 -0
  139. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/job.py +0 -0
  140. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/pipe.py +0 -0
  141. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/regions.py +0 -0
  142. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/tag.py +0 -0
  143. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/telemetry.py +0 -0
  144. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/test.py +0 -0
  145. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/tinyunit/tinyunit.py +0 -0
  146. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/tinyunit/tinyunit_lib.py +0 -0
  147. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/workspace.py +0 -0
  148. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tb_cli_modules/workspace_members.py +0 -0
  149. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird/tornado_template.py +0 -0
  150. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird.egg-info/dependency_links.txt +0 -0
  151. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird.egg-info/entry_points.txt +0 -0
  152. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird.egg-info/requires.txt +0 -0
  153. {tinybird-0.0.1.dev323 → tinybird-0.0.1.dev325}/tinybird.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: tinybird
3
- Version: 0.0.1.dev323
3
+ Version: 0.0.1.dev325
4
4
  Summary: Tinybird Command Line Tool
5
5
  Home-page: https://www.tinybird.co/docs/forward/commands
6
6
  Author: Tinybird
@@ -4,5 +4,5 @@ __description__ = 'Tinybird Command Line Tool'
4
4
  __url__ = 'https://www.tinybird.co/docs/forward/commands'
5
5
  __author__ = 'Tinybird'
6
6
  __author_email__ = 'support@tinybird.co'
7
- __version__ = '0.0.1.dev323'
8
- __revision__ = 'a70ee1d'
7
+ __version__ = '0.0.1.dev325'
8
+ __revision__ = '0faab58'
@@ -16,6 +16,7 @@ from tinybird.tb.modules.cli import cli
16
16
  from tinybird.tb.modules.common import echo_safe_humanfriendly_tables_format_smart_table, wait_job
17
17
  from tinybird.tb.modules.exceptions import CLIPipeException
18
18
  from tinybird.tb.modules.feedback_manager import FeedbackManager
19
+ from tinybird.tb.modules.job_common import echo_job_url
19
20
 
20
21
 
21
22
  @cli.group()
@@ -89,15 +90,16 @@ def copy_run(ctx: click.Context, pipe_name_or_id: str, wait: bool, mode: str, pa
89
90
  params = dict(key_value.split("=") for key_value in param) if param else {}
90
91
  click.echo(FeedbackManager.highlight(message=f"\n» Running on-demand copy '{pipe_name_or_id}'"))
91
92
  client: TinyB = ctx.ensure_object(dict)["client"]
93
+ config = ctx.ensure_object(dict)["config"]
92
94
 
93
95
  try:
94
96
  response = client.pipe_run(pipe_name_or_id, "copy", params, mode)
95
97
  job_id = response["job"]["job_id"]
96
98
  job_url = response["job"]["job_url"]
99
+ echo_job_url(client.token, client.host, config.get("name") or "", job_url)
97
100
  target_datasource_id = response["tags"]["copy_target_datasource"]
98
101
  target_datasource = client.get_datasource(target_datasource_id)
99
102
  target_datasource_name = target_datasource["name"]
100
- click.echo(FeedbackManager.gray(message="Job URL: ") + FeedbackManager.info(message=f"{job_url}"))
101
103
  click.echo(FeedbackManager.success(message=f"✓ Copy to '{target_datasource_name}' job created"))
102
104
 
103
105
  if wait:
@@ -16,6 +16,7 @@ from tinybird.tb.modules.common import (
16
16
  sys_exit,
17
17
  )
18
18
  from tinybird.tb.modules.feedback_manager import FeedbackManager, bcolors
19
+ from tinybird.tb.modules.job_common import echo_job_url
19
20
  from tinybird.tb.modules.project import Project
20
21
 
21
22
 
@@ -199,6 +200,7 @@ def create_deployment(
199
200
  allow_destructive_operations: Optional[bool] = None,
200
201
  ingest_hint: Optional[bool] = True,
201
202
  output: Optional[str] = "human",
203
+ env: Optional[str] = "cloud",
202
204
  ) -> None:
203
205
  # TODO: This code is duplicated in build_server.py
204
206
  # Should be refactored to be shared
@@ -299,13 +301,30 @@ def create_deployment(
299
301
  )
300
302
 
301
303
  status = result.get("result")
302
- if status == "success":
303
- host = get_display_cloud_host(client.host)
304
+ host = get_display_cloud_host(client.host)
305
+ if status in ["success", "failed"]:
304
306
  click.echo(
305
- FeedbackManager.info(message="Deployment URL: ")
307
+ FeedbackManager.gray(message="Deployment URL: ")
306
308
  + f"{bcolors.UNDERLINE}{host}/{config.get('name')}/deployments/{deployment.get('id')}{bcolors.ENDC}"
307
309
  )
310
+ jobs = client.jobs()
311
+ deployment_job = next(
312
+ (
313
+ job
314
+ for job in jobs
315
+ if job.get("kind") == "deployment" and job.get("deployment_id") == deployment.get("id")
316
+ ),
317
+ None,
318
+ )
319
+ if deployment_job:
320
+ echo_job_url(
321
+ token=client.token,
322
+ host=client.host,
323
+ workspace_name=config.get("name") or "",
324
+ job_url=deployment_job.get("job_url") or "",
325
+ )
308
326
 
327
+ if status == "success":
309
328
  if wait:
310
329
  click.echo(FeedbackManager.info(message="\n* Deployment submitted"))
311
330
  else:
@@ -0,0 +1,15 @@
1
+ import click
2
+
3
+ from tinybird.tb.config import get_display_cloud_host
4
+ from tinybird.tb.modules.feedback_manager import FeedbackManager
5
+ from tinybird.tb.modules.local_common import TB_LOCAL_ADDRESS
6
+
7
+
8
+ def echo_job_url(token: str, host: str, workspace_name: str, job_url: str):
9
+ if "localhost" in host:
10
+ job_url = f"{job_url.replace('http://localhost:8001', TB_LOCAL_ADDRESS)}?token={token}"
11
+ click.echo(FeedbackManager.gray(message="Job API URL: ") + FeedbackManager.info(message=f"{job_url}"))
12
+ ui_host = get_display_cloud_host(host)
13
+ click.echo(
14
+ FeedbackManager.gray(message="Jobs URL: ") + FeedbackManager.info(message=f"{ui_host}/{workspace_name}/jobs")
15
+ )
@@ -11,6 +11,7 @@ from tinybird.tb.modules.cli import cli
11
11
  from tinybird.tb.modules.common import echo_safe_humanfriendly_tables_format_smart_table, wait_job
12
12
  from tinybird.tb.modules.exceptions import CLIPipeException
13
13
  from tinybird.tb.modules.feedback_manager import FeedbackManager
14
+ from tinybird.tb.modules.job_common import echo_job_url
14
15
 
15
16
 
16
17
  @cli.group()
@@ -84,12 +85,13 @@ def sink_run(ctx: click.Context, pipe_name_or_id: str, wait: bool, mode: str, pa
84
85
  params = dict(key_value.split("=") for key_value in param) if param else {}
85
86
  click.echo(FeedbackManager.highlight(message=f"\n» Running sink '{pipe_name_or_id}'"))
86
87
  client: TinyB = ctx.ensure_object(dict)["client"]
88
+ config = ctx.ensure_object(dict)["config"]
87
89
 
88
90
  try:
89
91
  response = client.pipe_run(pipe_name_or_id, "sink", params, mode)
90
92
  job_id = response["job"]["id"]
91
93
  job_url = response["job"]["job_url"]
92
- click.echo(FeedbackManager.gray(message="Job URL: ") + FeedbackManager.info(message=f"{job_url}"))
94
+ echo_job_url(client.token, client.host, config.get("name") or "", job_url)
93
95
  click.echo(FeedbackManager.success(message="✓ Sink job created"))
94
96
 
95
97
  if wait:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: tinybird
3
- Version: 0.0.1.dev323
3
+ Version: 0.0.1.dev325
4
4
  Summary: Tinybird Command Line Tool
5
5
  Home-page: https://www.tinybird.co/docs/forward/commands
6
6
  Author: Tinybird
@@ -55,6 +55,7 @@ tinybird/tb/modules/feedback_manager.py
55
55
  tinybird/tb/modules/info.py
56
56
  tinybird/tb/modules/infra.py
57
57
  tinybird/tb/modules/job.py
58
+ tinybird/tb/modules/job_common.py
58
59
  tinybird/tb/modules/llm.py
59
60
  tinybird/tb/modules/llm_utils.py
60
61
  tinybird/tb/modules/local.py