frogml 1.1.62__py3-none-any.whl → 1.2.19__py3-none-any.whl

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 (530) hide show
  1. frogml/__init__.py +3 -1
  2. frogml/_proto/jfml/hosting_gateway/v1/build_upload_url_pb2.py +3 -3
  3. frogml/_proto/jfml/hosting_gateway/v1/build_upload_url_pb2.pyi +6 -4
  4. frogml/_proto/jfml/hosting_gateway/v1/hosting_gateway_service_pb2.py +3 -3
  5. frogml/_proto/jfml/hosting_gateway/v1/hosting_gateway_service_pb2.pyi +8 -9
  6. frogml/_proto/jfml/model_version/v1/artifact_pb2.py +3 -3
  7. frogml/_proto/jfml/model_version/v1/artifact_pb2.pyi +8 -9
  8. frogml/_proto/jfml/model_version/v1/build_spec_pb2.py +3 -3
  9. frogml/_proto/jfml/model_version/v1/build_spec_pb2.pyi +24 -20
  10. frogml/_proto/jfml/model_version/v1/model_repository_spec_pb2.py +3 -3
  11. frogml/_proto/jfml/model_version/v1/model_repository_spec_pb2.pyi +6 -9
  12. frogml/_proto/jfml/model_version/v1/model_version_framework_pb2.py +3 -3
  13. frogml/_proto/jfml/model_version/v1/model_version_framework_pb2.pyi +13 -10
  14. frogml/_proto/jfml/model_version/v1/model_version_manager_service_pb2.py +3 -3
  15. frogml/_proto/jfml/model_version/v1/model_version_manager_service_pb2.pyi +43 -30
  16. frogml/_proto/jfml/model_version/v1/model_version_pb2.py +11 -11
  17. frogml/_proto/jfml/model_version/v1/model_version_pb2.pyi +48 -32
  18. frogml/_proto/qwak/administration/account/v1/account_pb2.py +25 -23
  19. frogml/_proto/qwak/administration/account/v1/account_pb2.pyi +55 -21
  20. frogml/_proto/qwak/administration/account/v1/account_service_pb2.py +3 -3
  21. frogml/_proto/qwak/administration/account/v1/account_service_pb2.pyi +63 -36
  22. frogml/_proto/qwak/administration/account/v1/jfrog_tenant_details_pb2.py +5 -5
  23. frogml/_proto/qwak/administration/account/v1/jfrog_tenant_details_pb2.pyi +35 -22
  24. frogml/_proto/qwak/administration/account/v1/personalization_pb2.py +3 -3
  25. frogml/_proto/qwak/administration/account/v1/personalization_pb2.pyi +7 -9
  26. frogml/_proto/qwak/administration/account/v1/preferences_pb2.py +3 -3
  27. frogml/_proto/qwak/administration/account/v1/preferences_pb2.pyi +6 -8
  28. frogml/_proto/qwak/administration/account/v1/terms_pb2.py +3 -3
  29. frogml/_proto/qwak/administration/account/v1/terms_pb2.pyi +16 -11
  30. frogml/_proto/qwak/administration/authenticated_user/v1/authenticated_user_service_pb2.py +3 -3
  31. frogml/_proto/qwak/administration/authenticated_user/v1/authenticated_user_service_pb2.pyi +20 -14
  32. frogml/_proto/qwak/administration/authenticated_user/v1/credentials_pb2.py +3 -3
  33. frogml/_proto/qwak/administration/authenticated_user/v1/credentials_pb2.pyi +11 -12
  34. frogml/_proto/qwak/administration/authenticated_user/v1/details_pb2.py +3 -3
  35. frogml/_proto/qwak/administration/authenticated_user/v1/details_pb2.pyi +18 -15
  36. frogml/_proto/qwak/administration/cluster/v2/cluster_pb2.py +3 -3
  37. frogml/_proto/qwak/administration/cluster/v2/cluster_pb2.pyi +62 -39
  38. frogml/_proto/qwak/administration/runtime_configuration/v0/container_registry_config_pb2.py +3 -3
  39. frogml/_proto/qwak/administration/runtime_configuration/v0/container_registry_config_pb2.pyi +12 -13
  40. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/auth_pb2.py +3 -3
  41. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/auth_pb2.pyi +5 -8
  42. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/secret_pb2.py +3 -3
  43. frogml/_proto/qwak/administration/runtime_configuration/v0/creds/secret_pb2.pyi +8 -10
  44. frogml/_proto/qwak/administration/runtime_configuration/v0/data_catalog_config_pb2.py +3 -3
  45. frogml/_proto/qwak/administration/runtime_configuration/v0/data_catalog_config_pb2.pyi +11 -11
  46. frogml/_proto/qwak/administration/runtime_configuration/v0/external/databricks/auth_pb2.py +11 -7
  47. frogml/_proto/qwak/administration/runtime_configuration/v0/external/databricks/auth_pb2.pyi +58 -12
  48. frogml/_proto/qwak/administration/runtime_configuration/v0/external/elasticsearch_config_pb2.py +3 -3
  49. frogml/_proto/qwak/administration/runtime_configuration/v0/external/elasticsearch_config_pb2.pyi +8 -11
  50. frogml/_proto/qwak/administration/runtime_configuration/v0/external/kafka_config_pb2.py +3 -3
  51. frogml/_proto/qwak/administration/runtime_configuration/v0/external/kafka_config_pb2.pyi +12 -12
  52. frogml/_proto/qwak/administration/runtime_configuration/v0/external/prometheus_config_pb2.py +3 -3
  53. frogml/_proto/qwak/administration/runtime_configuration/v0/external/prometheus_config_pb2.pyi +8 -10
  54. frogml/_proto/qwak/administration/runtime_configuration/v0/external/redis_config_pb2.py +3 -3
  55. frogml/_proto/qwak/administration/runtime_configuration/v0/external/redis_config_pb2.pyi +8 -11
  56. frogml/_proto/qwak/administration/runtime_configuration/v0/external/victoriametrics_config_pb2.py +3 -3
  57. frogml/_proto/qwak/administration/runtime_configuration/v0/external/victoriametrics_config_pb2.pyi +6 -9
  58. frogml/_proto/qwak/administration/runtime_configuration/v0/feature_store_config_pb2.py +3 -3
  59. frogml/_proto/qwak/administration/runtime_configuration/v0/feature_store_config_pb2.pyi +13 -14
  60. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/aws/auth_pb2.py +3 -3
  61. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/aws/auth_pb2.pyi +29 -25
  62. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/azure/auth_pb2.py +11 -7
  63. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting/azure/auth_pb2.pyi +57 -17
  64. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting_config_pb2.py +5 -5
  65. frogml/_proto/qwak/administration/runtime_configuration/v0/hosting_config_pb2.pyi +29 -24
  66. frogml/_proto/qwak/administration/runtime_configuration/v0/logs_storage_config_pb2.py +3 -3
  67. frogml/_proto/qwak/administration/runtime_configuration/v0/logs_storage_config_pb2.pyi +6 -9
  68. frogml/_proto/qwak/administration/runtime_configuration/v0/model_analytics_storage_config_pb2.py +3 -3
  69. frogml/_proto/qwak/administration/runtime_configuration/v0/model_analytics_storage_config_pb2.pyi +6 -9
  70. frogml/_proto/qwak/administration/runtime_configuration/v0/network_config_pb2.py +3 -3
  71. frogml/_proto/qwak/administration/runtime_configuration/v0/network_config_pb2.pyi +22 -21
  72. frogml/_proto/qwak/administration/runtime_configuration/v0/object_storage_config_pb2.py +3 -3
  73. frogml/_proto/qwak/administration/runtime_configuration/v0/object_storage_config_pb2.pyi +12 -12
  74. frogml/_proto/qwak/administration/runtime_configuration/v0/observability_config_pb2.py +3 -3
  75. frogml/_proto/qwak/administration/runtime_configuration/v0/observability_config_pb2.pyi +13 -14
  76. frogml/_proto/qwak/administration/runtime_configuration/v0/runtime_config_pb2.py +3 -3
  77. frogml/_proto/qwak/administration/runtime_configuration/v0/runtime_config_pb2.pyi +5 -8
  78. frogml/_proto/qwak/administration/runtime_configuration/v0/sql_engine_config_pb2.py +3 -3
  79. frogml/_proto/qwak/administration/runtime_configuration/v0/sql_engine_config_pb2.pyi +11 -11
  80. frogml/_proto/qwak/administration/v0/authentication/authentication_service_pb2.py +3 -3
  81. frogml/_proto/qwak/administration/v0/authentication/authentication_service_pb2.pyi +14 -13
  82. frogml/_proto/qwak/administration/v0/environments/configuration_pb2.py +3 -3
  83. frogml/_proto/qwak/administration/v0/environments/configuration_pb2.pyi +33 -20
  84. frogml/_proto/qwak/administration/v0/environments/environment_pb2.py +5 -5
  85. frogml/_proto/qwak/administration/v0/environments/environment_pb2.pyi +17 -8
  86. frogml/_proto/qwak/administration/v0/environments/environment_service_pb2.py +5 -5
  87. frogml/_proto/qwak/administration/v0/environments/environment_service_pb2.pyi +46 -26
  88. frogml/_proto/qwak/administration/v0/environments/personalization_pb2.py +3 -3
  89. frogml/_proto/qwak/administration/v0/environments/personalization_pb2.pyi +7 -9
  90. frogml/_proto/qwak/administration/v0/users/user_pb2.py +7 -7
  91. frogml/_proto/qwak/administration/v0/users/user_pb2.pyi +18 -11
  92. frogml/_proto/qwak/admiral/secret/v0/secret_pb2.py +21 -19
  93. frogml/_proto/qwak/admiral/secret/v0/secret_pb2.pyi +65 -24
  94. frogml/_proto/qwak/admiral/secret/v0/secret_service_pb2.py +3 -3
  95. frogml/_proto/qwak/admiral/secret/v0/secret_service_pb2.pyi +16 -12
  96. frogml/_proto/qwak/admiral/secret/v0/system_secret_service_pb2.py +3 -3
  97. frogml/_proto/qwak/admiral/secret/v0/system_secret_service_pb2.pyi +19 -14
  98. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_pb2.py +3 -3
  99. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_pb2.pyi +83 -48
  100. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_service_pb2.py +3 -3
  101. frogml/_proto/qwak/admiral/user_application_instance/v0/user_application_instance_service_pb2.pyi +25 -16
  102. frogml/_proto/qwak/analytics/analytics_pb2.py +3 -3
  103. frogml/_proto/qwak/analytics/analytics_pb2.pyi +33 -16
  104. frogml/_proto/qwak/analytics/analytics_service_pb2.py +3 -3
  105. frogml/_proto/qwak/analytics/analytics_service_pb2.pyi +46 -26
  106. frogml/_proto/qwak/artifactory_settings/artifactory_settings_pb2.py +3 -3
  107. frogml/_proto/qwak/artifactory_settings/artifactory_settings_pb2.pyi +7 -9
  108. frogml/_proto/qwak/audience/v1/audience_api_pb2.py +3 -3
  109. frogml/_proto/qwak/audience/v1/audience_api_pb2.pyi +25 -17
  110. frogml/_proto/qwak/audience/v1/audience_pb2.py +5 -5
  111. frogml/_proto/qwak/audience/v1/audience_pb2.pyi +38 -23
  112. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_pb2.py +3 -3
  113. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_pb2.pyi +22 -13
  114. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_service_pb2.py +3 -3
  115. frogml/_proto/qwak/auto_scaling/v1/auto_scaling_service_pb2.pyi +8 -9
  116. frogml/_proto/qwak/automation/v1/action_pb2.py +17 -17
  117. frogml/_proto/qwak/automation/v1/action_pb2.pyi +76 -47
  118. frogml/_proto/qwak/automation/v1/auto_scaling_pb2.py +3 -3
  119. frogml/_proto/qwak/automation/v1/auto_scaling_pb2.pyi +22 -13
  120. frogml/_proto/qwak/automation/v1/automation_execution_pb2.py +3 -3
  121. frogml/_proto/qwak/automation/v1/automation_execution_pb2.pyi +23 -13
  122. frogml/_proto/qwak/automation/v1/automation_management_service_pb2.py +5 -5
  123. frogml/_proto/qwak/automation/v1/automation_management_service_pb2.pyi +56 -32
  124. frogml/_proto/qwak/automation/v1/automation_pb2.py +3 -3
  125. frogml/_proto/qwak/automation/v1/automation_pb2.pyi +28 -25
  126. frogml/_proto/qwak/automation/v1/common_pb2.py +3 -3
  127. frogml/_proto/qwak/automation/v1/common_pb2.pyi +8 -5
  128. frogml/_proto/qwak/automation/v1/notification_pb2.py +7 -7
  129. frogml/_proto/qwak/automation/v1/notification_pb2.pyi +14 -8
  130. frogml/_proto/qwak/automation/v1/trigger_pb2.py +3 -3
  131. frogml/_proto/qwak/automation/v1/trigger_pb2.pyi +17 -16
  132. frogml/_proto/qwak/batch_job/v1/batch_job_events_pb2.py +13 -13
  133. frogml/_proto/qwak/batch_job/v1/batch_job_events_pb2.pyi +22 -14
  134. frogml/_proto/qwak/batch_job/v1/batch_job_resources_pb2.py +3 -3
  135. frogml/_proto/qwak/batch_job/v1/batch_job_resources_pb2.pyi +4 -2
  136. frogml/_proto/qwak/batch_job/v1/batch_job_service_pb2.py +127 -127
  137. frogml/_proto/qwak/batch_job/v1/batch_job_service_pb2.pyi +196 -101
  138. frogml/_proto/qwak/build/v1/build_api_pb2.py +17 -17
  139. frogml/_proto/qwak/build/v1/build_api_pb2.pyi +87 -46
  140. frogml/_proto/qwak/build/v1/build_pb2.py +9 -9
  141. frogml/_proto/qwak/build/v1/build_pb2.pyi +187 -118
  142. frogml/_proto/qwak/build_settings/build_settings_api_pb2.py +3 -3
  143. frogml/_proto/qwak/build_settings/build_settings_api_pb2.pyi +15 -13
  144. frogml/_proto/qwak/build_settings/build_settings_pb2.py +3 -3
  145. frogml/_proto/qwak/build_settings/build_settings_pb2.pyi +24 -19
  146. frogml/_proto/qwak/builds/build_pb2.py +49 -48
  147. frogml/_proto/qwak/builds/build_pb2.pyi +113 -53
  148. frogml/_proto/qwak/builds/build_url_pb2.py +5 -5
  149. frogml/_proto/qwak/builds/build_url_pb2.pyi +39 -21
  150. frogml/_proto/qwak/builds/build_values_pb2.py +82 -0
  151. frogml/_proto/qwak/builds/build_values_pb2.pyi +582 -0
  152. frogml/_proto/qwak/builds/build_values_pb2_grpc.py +4 -0
  153. frogml/_proto/qwak/builds/builds_orchestrator_service_pb2.py +80 -52
  154. frogml/_proto/qwak/builds/builds_orchestrator_service_pb2.pyi +261 -40
  155. frogml/_proto/qwak/builds/builds_orchestrator_service_pb2_grpc.py +66 -0
  156. frogml/_proto/qwak/builds/builds_pb2.py +7 -7
  157. frogml/_proto/qwak/builds/builds_pb2.pyi +177 -105
  158. frogml/_proto/qwak/builds/internal_builds_orchestrator_service_pb2.py +3 -3
  159. frogml/_proto/qwak/builds/internal_builds_orchestrator_service_pb2.pyi +12 -10
  160. frogml/_proto/qwak/data_versioning/data_versioning_pb2.py +3 -3
  161. frogml/_proto/qwak/data_versioning/data_versioning_pb2.pyi +8 -10
  162. frogml/_proto/qwak/data_versioning/data_versioning_service_pb2.py +3 -3
  163. frogml/_proto/qwak/data_versioning/data_versioning_service_pb2.pyi +12 -11
  164. frogml/_proto/qwak/deployment/alert_pb2.py +5 -5
  165. frogml/_proto/qwak/deployment/alert_pb2.pyi +31 -20
  166. frogml/_proto/qwak/deployment/alert_service_pb2.py +7 -7
  167. frogml/_proto/qwak/deployment/alert_service_pb2.pyi +34 -21
  168. frogml/_proto/qwak/deployment/deployment_messages_pb2.py +3 -3
  169. frogml/_proto/qwak/deployment/deployment_messages_pb2.pyi +9 -11
  170. frogml/_proto/qwak/deployment/deployment_pb2.py +33 -33
  171. frogml/_proto/qwak/deployment/deployment_pb2.pyi +225 -139
  172. frogml/_proto/qwak/deployment/deployment_service_pb2.py +81 -81
  173. frogml/_proto/qwak/deployment/deployment_service_pb2.pyi +139 -78
  174. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_info_service_pb2.py +3 -3
  175. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_info_service_pb2.pyi +11 -9
  176. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_pb2.py +3 -3
  177. frogml/_proto/qwak/ecosystem/jfrog/v0/jfrog_tenant_pb2.pyi +6 -8
  178. frogml/_proto/qwak/ecosystem/jfrog/v0/token_pb2.py +41 -31
  179. frogml/_proto/qwak/ecosystem/jfrog/v0/token_pb2.pyi +168 -36
  180. frogml/_proto/qwak/ecosystem/jfrog/v0/token_service_pb2.py +3 -3
  181. frogml/_proto/qwak/ecosystem/jfrog/v0/token_service_pb2.pyi +29 -19
  182. frogml/_proto/qwak/ecosystem/v0/auth_pb2.py +28 -0
  183. frogml/_proto/qwak/ecosystem/v0/auth_pb2.pyi +35 -0
  184. frogml/_proto/qwak/ecosystem/v0/auth_pb2_grpc.py +4 -0
  185. frogml/_proto/qwak/ecosystem/v0/azure_credentials_pb2.py +37 -0
  186. frogml/_proto/qwak/ecosystem/v0/azure_credentials_pb2.pyi +119 -0
  187. frogml/_proto/qwak/ecosystem/v0/azure_credentials_pb2_grpc.py +4 -0
  188. frogml/_proto/qwak/ecosystem/v0/credentials_pb2.py +11 -10
  189. frogml/_proto/qwak/ecosystem/v0/credentials_pb2.pyi +21 -15
  190. frogml/_proto/qwak/ecosystem/v0/ecosystem_pb2.py +11 -11
  191. frogml/_proto/qwak/ecosystem/v0/ecosystem_pb2.pyi +63 -40
  192. frogml/_proto/qwak/ecosystem/v0/ecosystem_runtime_service_pb2.py +5 -5
  193. frogml/_proto/qwak/ecosystem/v0/ecosystem_runtime_service_pb2.pyi +74 -41
  194. frogml/_proto/qwak/execution/v1/backfill_pb2.py +3 -3
  195. frogml/_proto/qwak/execution/v1/backfill_pb2.pyi +34 -24
  196. frogml/_proto/qwak/execution/v1/batch_pb2.py +3 -3
  197. frogml/_proto/qwak/execution/v1/batch_pb2.pyi +16 -13
  198. frogml/_proto/qwak/execution/v1/deletion_pb2.py +3 -3
  199. frogml/_proto/qwak/execution/v1/deletion_pb2.pyi +9 -9
  200. frogml/_proto/qwak/execution/v1/execution_pb2.py +3 -3
  201. frogml/_proto/qwak/execution/v1/execution_pb2.pyi +28 -12
  202. frogml/_proto/qwak/execution/v1/execution_service_pb2.py +5 -5
  203. frogml/_proto/qwak/execution/v1/execution_service_pb2.pyi +69 -43
  204. frogml/_proto/qwak/execution/v1/internal/deployment/platform_details_pb2.py +3 -3
  205. frogml/_proto/qwak/execution/v1/internal/deployment/platform_details_pb2.pyi +4 -7
  206. frogml/_proto/qwak/execution/v1/jobs/job_pb2.py +5 -5
  207. frogml/_proto/qwak/execution/v1/jobs/job_pb2.pyi +45 -22
  208. frogml/_proto/qwak/execution/v1/jobs/job_service_pb2.py +3 -3
  209. frogml/_proto/qwak/execution/v1/jobs/job_service_pb2.pyi +62 -37
  210. frogml/_proto/qwak/execution/v1/jobs/reports/report_pb2.py +5 -5
  211. frogml/_proto/qwak/execution/v1/jobs/reports/report_pb2.pyi +49 -29
  212. frogml/_proto/qwak/execution/v1/state/execution_state_pb2.py +3 -3
  213. frogml/_proto/qwak/execution/v1/state/execution_state_pb2.pyi +6 -9
  214. frogml/_proto/qwak/execution/v1/state/execution_state_service_pb2.py +3 -3
  215. frogml/_proto/qwak/execution/v1/state/execution_state_service_pb2.pyi +27 -19
  216. frogml/_proto/qwak/execution/v1/state/featureset_state_pb2.py +3 -3
  217. frogml/_proto/qwak/execution/v1/state/featureset_state_pb2.pyi +4 -7
  218. frogml/_proto/qwak/execution/v1/state/spark_execution_state_pb2.py +5 -5
  219. frogml/_proto/qwak/execution/v1/state/spark_execution_state_pb2.pyi +13 -7
  220. frogml/_proto/qwak/execution/v1/streaming_aggregation_pb2.py +21 -14
  221. frogml/_proto/qwak/execution/v1/streaming_aggregation_pb2.pyi +83 -11
  222. frogml/_proto/qwak/execution/v1/streaming_pb2.py +3 -3
  223. frogml/_proto/qwak/execution/v1/streaming_pb2.pyi +10 -10
  224. frogml/_proto/qwak/feature_store/entities/entity_pb2.py +3 -3
  225. frogml/_proto/qwak/feature_store/entities/entity_pb2.pyi +29 -16
  226. frogml/_proto/qwak/feature_store/entities/entity_service_pb2.py +3 -3
  227. frogml/_proto/qwak/feature_store/entities/entity_service_pb2.pyi +37 -22
  228. frogml/_proto/qwak/feature_store/features/aggregation_pb2.py +3 -3
  229. frogml/_proto/qwak/feature_store/features/aggregation_pb2.pyi +39 -21
  230. frogml/_proto/qwak/feature_store/features/deployment_pb2.py +3 -3
  231. frogml/_proto/qwak/feature_store/features/deployment_pb2.pyi +51 -27
  232. frogml/_proto/qwak/feature_store/features/deployment_service_pb2.py +3 -3
  233. frogml/_proto/qwak/feature_store/features/deployment_service_pb2.pyi +5 -7
  234. frogml/_proto/qwak/feature_store/features/execution_pb2.py +3 -3
  235. frogml/_proto/qwak/feature_store/features/execution_pb2.pyi +18 -13
  236. frogml/_proto/qwak/feature_store/features/feature_set_attribute_pb2.py +3 -3
  237. frogml/_proto/qwak/feature_store/features/feature_set_attribute_pb2.pyi +6 -8
  238. frogml/_proto/qwak/feature_store/features/feature_set_pb2.py +21 -21
  239. frogml/_proto/qwak/feature_store/features/feature_set_pb2.pyi +85 -48
  240. frogml/_proto/qwak/feature_store/features/feature_set_service_pb2.py +9 -9
  241. frogml/_proto/qwak/feature_store/features/feature_set_service_pb2.pyi +107 -53
  242. frogml/_proto/qwak/feature_store/features/feature_set_state_pb2.py +3 -3
  243. frogml/_proto/qwak/feature_store/features/feature_set_state_pb2.pyi +46 -23
  244. frogml/_proto/qwak/feature_store/features/feature_set_state_service_pb2.py +3 -3
  245. frogml/_proto/qwak/feature_store/features/feature_set_state_service_pb2.pyi +27 -17
  246. frogml/_proto/qwak/feature_store/features/feature_set_types_pb2.py +73 -71
  247. frogml/_proto/qwak/feature_store/features/feature_set_types_pb2.pyi +181 -99
  248. frogml/_proto/qwak/feature_store/features/monitoring_pb2.py +3 -3
  249. frogml/_proto/qwak/feature_store/features/monitoring_pb2.pyi +11 -11
  250. frogml/_proto/qwak/feature_store/features/real_time_feature_extractor_pb2.py +3 -3
  251. frogml/_proto/qwak/feature_store/features/real_time_feature_extractor_pb2.pyi +63 -37
  252. frogml/_proto/qwak/feature_store/jobs/job_pb2.py +3 -3
  253. frogml/_proto/qwak/feature_store/jobs/job_pb2.pyi +26 -14
  254. frogml/_proto/qwak/feature_store/jobs/job_service_pb2.py +3 -3
  255. frogml/_proto/qwak/feature_store/jobs/job_service_pb2.pyi +36 -25
  256. frogml/_proto/qwak/feature_store/jobs/v1/job_pb2.py +3 -3
  257. frogml/_proto/qwak/feature_store/jobs/v1/job_pb2.pyi +23 -12
  258. frogml/_proto/qwak/feature_store/jobs/v1/job_service_pb2.py +3 -3
  259. frogml/_proto/qwak/feature_store/jobs/v1/job_service_pb2.pyi +51 -30
  260. frogml/_proto/qwak/feature_store/platform/platform_details_pb2.py +3 -3
  261. frogml/_proto/qwak/feature_store/platform/platform_details_pb2.pyi +11 -11
  262. frogml/_proto/qwak/feature_store/reports/report_pb2.py +3 -3
  263. frogml/_proto/qwak/feature_store/reports/report_pb2.pyi +28 -18
  264. frogml/_proto/qwak/feature_store/repository/common/platform_pb2.py +3 -3
  265. frogml/_proto/qwak/feature_store/repository/common/platform_pb2.pyi +13 -12
  266. frogml/_proto/qwak/feature_store/serving/management_pb2.py +3 -3
  267. frogml/_proto/qwak/feature_store/serving/management_pb2.pyi +10 -10
  268. frogml/_proto/qwak/feature_store/serving/metadata_pb2.py +3 -3
  269. frogml/_proto/qwak/feature_store/serving/metadata_pb2.pyi +21 -15
  270. frogml/_proto/qwak/feature_store/serving/serving_pb2.py +13 -13
  271. frogml/_proto/qwak/feature_store/serving/serving_pb2.pyi +67 -37
  272. frogml/_proto/qwak/feature_store/serving/v1/value_pb2.py +3 -3
  273. frogml/_proto/qwak/feature_store/serving/v1/value_pb2.pyi +8 -10
  274. frogml/_proto/qwak/feature_store/sinks/sink_pb2.py +3 -3
  275. frogml/_proto/qwak/feature_store/sinks/sink_pb2.pyi +20 -16
  276. frogml/_proto/qwak/feature_store/sources/batch_pb2.py +83 -77
  277. frogml/_proto/qwak/feature_store/sources/batch_pb2.pyi +188 -62
  278. frogml/_proto/qwak/feature_store/sources/data_source_attribute_pb2.py +3 -3
  279. frogml/_proto/qwak/feature_store/sources/data_source_attribute_pb2.pyi +6 -8
  280. frogml/_proto/qwak/feature_store/sources/data_source_pb2.py +7 -7
  281. frogml/_proto/qwak/feature_store/sources/data_source_pb2.pyi +37 -30
  282. frogml/_proto/qwak/feature_store/sources/data_source_service_pb2.py +5 -5
  283. frogml/_proto/qwak/feature_store/sources/data_source_service_pb2.pyi +45 -25
  284. frogml/_proto/qwak/feature_store/sources/streaming_pb2.py +11 -11
  285. frogml/_proto/qwak/feature_store/sources/streaming_pb2.pyi +41 -21
  286. frogml/_proto/qwak/feature_store/v1/common/jfrog_artifact/jfrog_artifact_pb2.py +3 -3
  287. frogml/_proto/qwak/feature_store/v1/common/jfrog_artifact/jfrog_artifact_pb2.pyi +4 -7
  288. frogml/_proto/qwak/feature_store/v1/common/source_code/source_code_pb2.py +3 -3
  289. frogml/_proto/qwak/feature_store/v1/common/source_code/source_code_pb2.pyi +17 -17
  290. frogml/_proto/qwak/feature_store/v1/internal/data_source/data_source_service_pb2.py +5 -5
  291. frogml/_proto/qwak/feature_store/v1/internal/data_source/data_source_service_pb2.pyi +15 -13
  292. frogml/_proto/qwak/feature_store/v1/internal/featureset/featureset_token_service_pb2.py +3 -3
  293. frogml/_proto/qwak/feature_store/v1/internal/featureset/featureset_token_service_pb2.pyi +6 -8
  294. frogml/_proto/qwak/features_operator/v1/features_operator_pb2.py +3 -3
  295. frogml/_proto/qwak/features_operator/v1/features_operator_pb2.pyi +15 -11
  296. frogml/_proto/qwak/features_operator/v1/features_operator_service_pb2.py +3 -3
  297. frogml/_proto/qwak/features_operator/v1/features_operator_service_pb2.pyi +18 -16
  298. frogml/_proto/qwak/features_operator/v2/features_operator_pb2.py +3 -3
  299. frogml/_proto/qwak/features_operator/v2/features_operator_pb2.pyi +16 -11
  300. frogml/_proto/qwak/features_operator/v2/features_operator_service_pb2.py +3 -3
  301. frogml/_proto/qwak/features_operator/v2/features_operator_service_pb2.pyi +20 -19
  302. frogml/_proto/qwak/features_operator/v3/features_operator_async_service_pb2.py +3 -3
  303. frogml/_proto/qwak/features_operator/v3/features_operator_async_service_pb2.pyi +41 -34
  304. frogml/_proto/qwak/features_operator/v3/features_operator_pb2.py +3 -3
  305. frogml/_proto/qwak/features_operator/v3/features_operator_pb2.pyi +19 -13
  306. frogml/_proto/qwak/file_versioning/file_versioning_pb2.py +5 -5
  307. frogml/_proto/qwak/file_versioning/file_versioning_pb2.pyi +8 -5
  308. frogml/_proto/qwak/file_versioning/file_versioning_service_pb2.py +3 -3
  309. frogml/_proto/qwak/file_versioning/file_versioning_service_pb2.pyi +12 -11
  310. frogml/_proto/qwak/fitness_service/constructs_pb2.py +5 -5
  311. frogml/_proto/qwak/fitness_service/constructs_pb2.pyi +51 -16
  312. frogml/_proto/qwak/fitness_service/fitness_pb2.py +3 -3
  313. frogml/_proto/qwak/fitness_service/fitness_pb2.pyi +24 -18
  314. frogml/_proto/qwak/fitness_service/fitness_service_pb2.py +3 -3
  315. frogml/_proto/qwak/fitness_service/fitness_service_pb2.pyi +18 -13
  316. frogml/_proto/qwak/fitness_service/status_pb2.py +3 -3
  317. frogml/_proto/qwak/fitness_service/status_pb2.pyi +26 -16
  318. frogml/_proto/qwak/inference/feedback/feedback_pb2.py +3 -3
  319. frogml/_proto/qwak/inference/feedback/feedback_pb2.pyi +28 -15
  320. frogml/_proto/qwak/instance_template/instance_template_pb2.py +11 -11
  321. frogml/_proto/qwak/instance_template/instance_template_pb2.pyi +13 -7
  322. frogml/_proto/qwak/instance_template/instance_template_service_pb2.py +3 -3
  323. frogml/_proto/qwak/instance_template/instance_template_service_pb2.pyi +12 -12
  324. frogml/_proto/qwak/integration/hugging_face_integration_pb2.py +3 -3
  325. frogml/_proto/qwak/integration/hugging_face_integration_pb2.pyi +19 -17
  326. frogml/_proto/qwak/integration/integration_pb2.py +3 -3
  327. frogml/_proto/qwak/integration/integration_pb2.pyi +50 -32
  328. frogml/_proto/qwak/integration/integration_service_pb2.py +3 -3
  329. frogml/_proto/qwak/integration/integration_service_pb2.pyi +39 -23
  330. frogml/_proto/qwak/integration/open_a_i_integration_pb2.py +3 -3
  331. frogml/_proto/qwak/integration/open_a_i_integration_pb2.pyi +20 -17
  332. frogml/_proto/qwak/integration/opsgenie_integration_pb2.py +5 -5
  333. frogml/_proto/qwak/integration/opsgenie_integration_pb2.pyi +29 -16
  334. frogml/_proto/qwak/integration/pagerduty_integration_pb2.py +5 -5
  335. frogml/_proto/qwak/integration/pagerduty_integration_pb2.pyi +39 -26
  336. frogml/_proto/qwak/integration/slack_app_integration_pb2.py +5 -5
  337. frogml/_proto/qwak/integration/slack_app_integration_pb2.pyi +30 -20
  338. frogml/_proto/qwak/jfrog/gateway/v0/repository_pb2.py +3 -3
  339. frogml/_proto/qwak/jfrog/gateway/v0/repository_pb2.pyi +19 -16
  340. frogml/_proto/qwak/jfrog/gateway/v0/repository_service_pb2.py +3 -3
  341. frogml/_proto/qwak/jfrog/gateway/v0/repository_service_pb2.pyi +11 -11
  342. frogml/_proto/qwak/kube_deployment_captain/alert_pb2.py +5 -5
  343. frogml/_proto/qwak/kube_deployment_captain/alert_pb2.pyi +25 -15
  344. frogml/_proto/qwak/kube_deployment_captain/alerting_pb2.py +3 -3
  345. frogml/_proto/qwak/kube_deployment_captain/alerting_pb2.pyi +14 -12
  346. frogml/_proto/qwak/kube_deployment_captain/batch_job_pb2.py +67 -67
  347. frogml/_proto/qwak/kube_deployment_captain/batch_job_pb2.pyi +106 -59
  348. frogml/_proto/qwak/kube_deployment_captain/deployment_pb2.py +3 -3
  349. frogml/_proto/qwak/kube_deployment_captain/deployment_pb2.pyi +63 -40
  350. frogml/_proto/qwak/kube_deployment_captain/feature_set_deployment_pb2.py +7 -7
  351. frogml/_proto/qwak/kube_deployment_captain/feature_set_deployment_pb2.pyi +63 -39
  352. frogml/_proto/qwak/kube_deployment_captain/kube_deployment_captain_service_pb2.py +17 -17
  353. frogml/_proto/qwak/kube_deployment_captain/kube_deployment_captain_service_pb2.pyi +146 -72
  354. frogml/_proto/qwak/kube_deployment_captain/traffic_mapping_pb2.py +3 -3
  355. frogml/_proto/qwak/kube_deployment_captain/traffic_mapping_pb2.pyi +8 -10
  356. frogml/_proto/qwak/logging/log_filter_pb2.py +3 -3
  357. frogml/_proto/qwak/logging/log_filter_pb2.pyi +18 -13
  358. frogml/_proto/qwak/logging/log_line_pb2.py +5 -5
  359. frogml/_proto/qwak/logging/log_line_pb2.pyi +7 -8
  360. frogml/_proto/qwak/logging/log_reader_service_pb2.py +3 -3
  361. frogml/_proto/qwak/logging/log_reader_service_pb2.pyi +19 -18
  362. frogml/_proto/qwak/logging/log_source_pb2.py +3 -3
  363. frogml/_proto/qwak/logging/log_source_pb2.pyi +39 -29
  364. frogml/_proto/qwak/model_descriptor/open_ai_descriptor_pb2.py +3 -3
  365. frogml/_proto/qwak/model_descriptor/open_ai_descriptor_pb2.pyi +48 -44
  366. frogml/_proto/qwak/model_group/model_group_pb2.py +24 -16
  367. frogml/_proto/qwak/model_group/model_group_pb2.pyi +90 -12
  368. frogml/_proto/qwak/model_group/model_group_pb2_grpc.py +37 -0
  369. frogml/_proto/qwak/model_group/model_group_repository_details_pb2.py +3 -3
  370. frogml/_proto/qwak/model_group/model_group_repository_details_pb2.pyi +28 -18
  371. frogml/_proto/qwak/models/models_pb2.py +38 -28
  372. frogml/_proto/qwak/models/models_pb2.pyi +229 -84
  373. frogml/_proto/qwak/models/models_pb2_grpc.py +34 -0
  374. frogml/_proto/qwak/models/models_query_pb2.py +3 -3
  375. frogml/_proto/qwak/models/models_query_pb2.pyi +18 -13
  376. frogml/_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2.py +3 -3
  377. frogml/_proto/qwak/monitoring/v0/alerting_channel_management_service_pb2.pyi +31 -18
  378. frogml/_proto/qwak/monitoring/v0/alerting_channel_pb2.py +3 -3
  379. frogml/_proto/qwak/monitoring/v0/alerting_channel_pb2.pyi +62 -28
  380. frogml/_proto/qwak/monitoring/v0/alerting_channel_sync_service_pb2.py +3 -3
  381. frogml/_proto/qwak/monitoring/v0/alerting_channel_sync_service_pb2.pyi +18 -14
  382. frogml/_proto/qwak/offline/serving/v1/feature_values_pb2.py +3 -3
  383. frogml/_proto/qwak/offline/serving/v1/feature_values_pb2.pyi +5 -7
  384. frogml/_proto/qwak/offline/serving/v1/offline_serving_async_service_pb2.py +3 -3
  385. frogml/_proto/qwak/offline/serving/v1/offline_serving_async_service_pb2.pyi +43 -23
  386. frogml/_proto/qwak/offline/serving/v1/options_pb2.py +3 -3
  387. frogml/_proto/qwak/offline/serving/v1/options_pb2.pyi +4 -7
  388. frogml/_proto/qwak/offline/serving/v1/population_pb2.py +3 -3
  389. frogml/_proto/qwak/offline/serving/v1/population_pb2.pyi +18 -15
  390. frogml/_proto/qwak/projects/jfrog_project_spec_pb2.py +3 -3
  391. frogml/_proto/qwak/projects/jfrog_project_spec_pb2.pyi +6 -9
  392. frogml/_proto/qwak/projects/projects_pb2.py +22 -20
  393. frogml/_proto/qwak/projects/projects_pb2.pyi +74 -36
  394. frogml/_proto/qwak/secret_service/secret_service_pb2.py +3 -3
  395. frogml/_proto/qwak/secret_service/secret_service_pb2.pyi +13 -11
  396. frogml/_proto/qwak/self_service/account/v0/account_membership_pb2.py +7 -7
  397. frogml/_proto/qwak/self_service/account/v0/account_membership_pb2.pyi +44 -22
  398. frogml/_proto/qwak/self_service/account/v0/account_membership_service_pb2.py +3 -3
  399. frogml/_proto/qwak/self_service/account/v0/account_membership_service_pb2.pyi +48 -24
  400. frogml/_proto/qwak/self_service/account/v0/account_status_pb2.py +5 -5
  401. frogml/_proto/qwak/self_service/account/v0/account_status_pb2.pyi +30 -23
  402. frogml/_proto/qwak/self_service/account/v0/managing_account_pb2.py +31 -25
  403. frogml/_proto/qwak/self_service/account/v0/managing_account_pb2.pyi +84 -22
  404. frogml/_proto/qwak/self_service/account/v0/managing_account_service_pb2.py +3 -3
  405. frogml/_proto/qwak/self_service/account/v0/managing_account_service_pb2.pyi +25 -16
  406. frogml/_proto/qwak/self_service/user/v1/api_key_pb2.py +3 -3
  407. frogml/_proto/qwak/self_service/user/v1/api_key_pb2.pyi +4 -7
  408. frogml/_proto/qwak/self_service/user/v1/user_pb2.py +3 -3
  409. frogml/_proto/qwak/self_service/user/v1/user_pb2.pyi +16 -16
  410. frogml/_proto/qwak/self_service/user/v1/user_service_pb2.py +5 -5
  411. frogml/_proto/qwak/self_service/user/v1/user_service_pb2.pyi +27 -14
  412. frogml/_proto/qwak/service_discovery/service_discovery_location_pb2.py +3 -3
  413. frogml/_proto/qwak/service_discovery/service_discovery_location_pb2.pyi +11 -11
  414. frogml/_proto/qwak/service_discovery/service_discovery_location_service_pb2.py +3 -3
  415. frogml/_proto/qwak/service_discovery/service_discovery_location_service_pb2.pyi +6 -8
  416. frogml/_proto/qwak/traffic/v1/traffic_api_pb2.py +3 -3
  417. frogml/_proto/qwak/traffic/v1/traffic_api_pb2.pyi +19 -14
  418. frogml/_proto/qwak/traffic/v1/traffic_pb2.py +3 -3
  419. frogml/_proto/qwak/traffic/v1/traffic_pb2.pyi +35 -22
  420. frogml/_proto/qwak/user_application/common/v0/resources_pb2.py +9 -9
  421. frogml/_proto/qwak/user_application/common/v0/resources_pb2.pyi +53 -19
  422. frogml/_proto/qwak/user_application/v0/user_application_pb2.py +7 -7
  423. frogml/_proto/qwak/user_application/v0/user_application_pb2.pyi +8 -5
  424. frogml/core/automations/batch_execution_action.py +4 -1
  425. frogml/core/clients/batch_job_management/client.py +1 -0
  426. frogml/core/clients/batch_job_management/executions_config.py +2 -0
  427. frogml/core/clients/build_orchestrator/build_model_request_getter.py +6 -2
  428. frogml/core/clients/build_orchestrator/client.py +56 -5
  429. frogml/core/clients/feature_store/management_client.py +159 -220
  430. frogml/core/clients/feature_store/operator_client.py +21 -2
  431. frogml/core/clients/jfrog_gateway/client.py +0 -20
  432. frogml/core/clients/model_group_management/client.py +20 -1
  433. frogml/core/exceptions/__init__.py +1 -0
  434. frogml/core/exceptions/frogml_grpc_address_exception.py +9 -0
  435. frogml/core/exceptions/frogml_token_exception.py +7 -0
  436. frogml/core/feature_store/_common/source_code_spec.py +60 -14
  437. frogml/core/feature_store/data_sources/attributes.py +5 -8
  438. frogml/core/feature_store/data_sources/source_authentication.py +5 -6
  439. frogml/core/feature_store/data_sources/time_partition_columns.py +28 -41
  440. frogml/core/feature_store/execution/backfill.py +17 -28
  441. frogml/core/feature_store/feature_sets/transformations/__init__.py +0 -2
  442. frogml/core/feature_store/feature_sets/transformations/transformations.py +0 -69
  443. frogml/core/feature_store/validations/validation_decorators.py +72 -0
  444. frogml/core/inner/build_config/build_config_v1.py +4 -5
  445. frogml/core/inner/build_logic/phases/phase_010_fetch_model/post_fetch_validation_step.py +10 -10
  446. frogml/core/inner/build_logic/phases/phase_020_remote_register_frogml_build/upload_step.py +92 -43
  447. frogml/core/inner/const.py +2 -0
  448. frogml/core/inner/di_configuration/__init__.py +1 -67
  449. frogml/core/inner/di_configuration/account.py +4 -5
  450. frogml/core/inner/di_configuration/containers.py +7 -0
  451. frogml/core/inner/di_configuration/dependency_wiring.py +95 -0
  452. frogml/core/inner/tool/auth/TOKEN_ROTATION.md +51 -0
  453. frogml/core/inner/tool/auth/__init__.py +3 -0
  454. frogml/core/inner/tool/auth/auth_client.py +192 -0
  455. frogml/core/inner/tool/auth/token_maintainer.py +119 -0
  456. frogml/core/inner/tool/grpc/grpc_auth.py +22 -23
  457. frogml/core/inner/tool/grpc/grpc_tools.py +126 -6
  458. frogml/core/inner/tool/grpc/grpc_try_wrapping.py +123 -5
  459. frogml/core/model_loggers/artifact_logger.py +5 -4
  460. frogml/core/utils/proto_utils.py +0 -40
  461. frogml/feature_store/_common/artifact_utils.py +10 -8
  462. frogml/feature_store/_common/packaging.py +40 -22
  463. frogml/feature_store/_common/source_code_spec_factory.py +59 -9
  464. frogml/feature_store/data_sources/__init__.py +2 -0
  465. frogml/feature_store/data_sources/base.py +20 -21
  466. frogml/feature_store/data_sources/batch/_batch.py +0 -3
  467. frogml/feature_store/data_sources/batch/_jdbc.py +6 -7
  468. frogml/feature_store/data_sources/batch/athena.py +6 -7
  469. frogml/feature_store/data_sources/batch/big_query.py +8 -5
  470. frogml/feature_store/data_sources/batch/clickhouse.py +8 -8
  471. frogml/feature_store/data_sources/batch/csv.py +2 -4
  472. frogml/feature_store/data_sources/batch/elastic_search.py +2 -4
  473. frogml/feature_store/data_sources/batch/filesystem/aws.py +21 -22
  474. frogml/feature_store/data_sources/batch/filesystem/base_config.py +3 -3
  475. frogml/feature_store/data_sources/batch/filesystem/gcp.py +3 -7
  476. frogml/feature_store/data_sources/batch/mongodb.py +2 -4
  477. frogml/feature_store/data_sources/batch/mysql.py +2 -3
  478. frogml/feature_store/data_sources/batch/parquet.py +6 -6
  479. frogml/feature_store/data_sources/batch/postgres.py +2 -3
  480. frogml/feature_store/data_sources/batch/redshift.py +8 -6
  481. frogml/feature_store/data_sources/batch/snowflake.py +17 -11
  482. frogml/feature_store/data_sources/batch/unity_catalog.py +113 -0
  483. frogml/feature_store/data_sources/batch/vertica.py +10 -6
  484. frogml/feature_store/data_sources/streaming/_streaming.py +0 -2
  485. frogml/feature_store/data_sources/streaming/kafka/authentication.py +13 -19
  486. frogml/feature_store/data_sources/streaming/kafka/deserialization.py +22 -23
  487. frogml/feature_store/data_sources/streaming/kafka/kafka.py +13 -14
  488. frogml/feature_store/feature_sets/base_feature_set.py +1 -0
  489. frogml/feature_store/online/client.py +20 -4
  490. frogml/feature_store/validations/validator.py +11 -3
  491. frogml/sdk/frogml_client/builds/build.py +8 -7
  492. frogml/sdk/frogml_client/client.py +3 -71
  493. frogml/sdk/model_version/__init__.py +0 -2
  494. frogml/sdk/model_version/catboost/__init__.py +3 -0
  495. frogml/sdk/model_version/files/__init__.py +4 -0
  496. frogml/sdk/model_version/huggingface/__init__.py +9 -3
  497. frogml/sdk/model_version/model_loggers/base_model_version_manager.py +5 -0
  498. frogml/sdk/model_version/onnx/__init__.py +3 -0
  499. frogml/sdk/model_version/pytorch/__init__.py +3 -0
  500. frogml/sdk/model_version/scikit_learn/__init__.py +3 -0
  501. frogml/sdk/model_version/utils/files_tools.py +2 -3
  502. frogml/sdk/model_version/utils/jml/customer_client.py +47 -14
  503. frogml/sdk/model_version/utils/model_log_config.py +5 -0
  504. frogml/sdk/model_version/utils/storage.py +57 -41
  505. frogml/storage/artifactory/_artifactory_api.py +6 -0
  506. frogml/storage/authentication/login/_login_cli.py +21 -21
  507. frogml/storage/authentication/models/_auth_config.py +22 -1
  508. frogml/storage/authentication/utils/_authentication_utils.py +31 -34
  509. frogml/storage/constants.py +19 -0
  510. frogml/storage/frog_ml.py +10 -20
  511. frogml/storage/models/frogml_dataset_version.py +3 -3
  512. frogml/storage/models/frogml_model_version.py +6 -3
  513. frogml/storage/utils/_input_checks_utility.py +3 -1
  514. {frogml-1.1.62.dist-info → frogml-1.2.19.dist-info}/METADATA +39 -9
  515. {frogml-1.1.62.dist-info → frogml-1.2.19.dist-info}/RECORD +525 -512
  516. frogml_services_mock/mocks/authentication_service.py +3 -3
  517. frogml_services_mock/mocks/build_orchestrator_service_api.py +5 -2
  518. frogml_services_mock/mocks/ecosystem_service_api.py +15 -3
  519. frogml_services_mock/mocks/feature_store_data_sources_manager_api.py +55 -14
  520. frogml_services_mock/mocks/feature_store_entities_manager_api.py +31 -30
  521. frogml_services_mock/mocks/features_operator_v3_service.py +20 -0
  522. frogml_services_mock/mocks/frogml_mocks.py +1 -1
  523. frogml_services_mock/mocks/project_manager_service.py +31 -56
  524. frogml_services_mock/services_mock.py +42 -35
  525. frogml/core/clients/project/__init__.py +0 -0
  526. frogml/core/clients/project/client.py +0 -72
  527. frogml/core/inner/tool/auth.py +0 -84
  528. frogml/sdk/frogml_client/projects/__init__.py +0 -0
  529. frogml/sdk/frogml_client/projects/project.py +0 -56
  530. {frogml-1.1.62.dist-info → frogml-1.2.19.dist-info}/WHEEL +0 -0
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # source: frogml._proto.qwak.automation/v1/action.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
6
  from google.protobuf import descriptor as _descriptor
6
7
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -24,23 +25,22 @@ _globals = globals()
24
25
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
25
26
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'qwak.automation.v1.action_pb2', _globals)
26
27
  if _descriptor._USE_C_DESCRIPTORS == False:
27
-
28
- DESCRIPTOR._options = None
29
- DESCRIPTOR._serialized_options = b'\n\035com.qwak.ai.automation.api.v1P\001'
30
- _DEPLOYMENTSIZE.fields_by_name['cpu']._options = None
31
- _DEPLOYMENTSIZE.fields_by_name['cpu']._serialized_options = b'\030\001'
32
- _DEPLOYMENTSIZE.fields_by_name['memory_amount']._options = None
33
- _DEPLOYMENTSIZE.fields_by_name['memory_amount']._serialized_options = b'\030\001'
34
- _DEPLOYMENTSIZE.fields_by_name['memory_units']._options = None
35
- _DEPLOYMENTSIZE.fields_by_name['memory_units']._serialized_options = b'\030\001'
36
- _DEPLOYMENTSIZE.fields_by_name['gpu_resources']._options = None
37
- _DEPLOYMENTSIZE.fields_by_name['gpu_resources']._serialized_options = b'\030\001'
38
- _BUILDSPEC_PARAMETERSENTRY._options = None
39
- _BUILDSPEC_PARAMETERSENTRY._serialized_options = b'8\001'
40
- _RESOURCES.fields_by_name['cpu_resources']._options = None
41
- _RESOURCES.fields_by_name['cpu_resources']._serialized_options = b'\030\001'
42
- _RESOURCES.fields_by_name['gpu_resources']._options = None
43
- _RESOURCES.fields_by_name['gpu_resources']._serialized_options = b'\030\001'
28
+ _globals['DESCRIPTOR']._options = None
29
+ _globals['DESCRIPTOR']._serialized_options = b'\n\035com.qwak.ai.automation.api.v1P\001'
30
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['cpu']._options = None
31
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['cpu']._serialized_options = b'\030\001'
32
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['memory_amount']._options = None
33
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['memory_amount']._serialized_options = b'\030\001'
34
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['memory_units']._options = None
35
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['memory_units']._serialized_options = b'\030\001'
36
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['gpu_resources']._options = None
37
+ _globals['_DEPLOYMENTSIZE'].fields_by_name['gpu_resources']._serialized_options = b'\030\001'
38
+ _globals['_BUILDSPEC_PARAMETERSENTRY']._options = None
39
+ _globals['_BUILDSPEC_PARAMETERSENTRY']._serialized_options = b'8\001'
40
+ _globals['_RESOURCES'].fields_by_name['cpu_resources']._options = None
41
+ _globals['_RESOURCES'].fields_by_name['cpu_resources']._serialized_options = b'\030\001'
42
+ _globals['_RESOURCES'].fields_by_name['gpu_resources']._options = None
43
+ _globals['_RESOURCES'].fields_by_name['gpu_resources']._serialized_options = b'\030\001'
44
44
  _globals['_GPUTYPE']._serialized_start=3170
45
45
  _globals['_GPUTYPE']._serialized_end=3289
46
46
  _globals['_MEMORYUNIT']._serialized_start=3291
@@ -2,6 +2,7 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+
5
6
  import builtins
6
7
  import collections.abc
7
8
  import google.protobuf.descriptor
@@ -27,7 +28,7 @@ class _GpuType:
27
28
  ValueType = typing.NewType("ValueType", builtins.int)
28
29
  V: typing_extensions.TypeAlias = ValueType
29
30
 
30
- class _GpuTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_GpuType.ValueType], builtins.type): # noqa: F821
31
+ class _GpuTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_GpuType.ValueType], builtins.type):
31
32
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
32
33
  INVALID: _GpuType.ValueType # 0
33
34
  NVIDIA_K80: _GpuType.ValueType # 1
@@ -52,7 +53,7 @@ class _MemoryUnit:
52
53
  ValueType = typing.NewType("ValueType", builtins.int)
53
54
  V: typing_extensions.TypeAlias = ValueType
54
55
 
55
- class _MemoryUnitEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MemoryUnit.ValueType], builtins.type): # noqa: F821
56
+ class _MemoryUnitEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_MemoryUnit.ValueType], builtins.type):
56
57
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
57
58
  UNKNOWN: _MemoryUnit.ValueType # 0
58
59
  MIB: _MemoryUnit.ValueType # 1
@@ -70,7 +71,7 @@ class _PurchaseOption:
70
71
  ValueType = typing.NewType("ValueType", builtins.int)
71
72
  V: typing_extensions.TypeAlias = ValueType
72
73
 
73
- class _PurchaseOptionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_PurchaseOption.ValueType], builtins.type): # noqa: F821
74
+ class _PurchaseOptionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_PurchaseOption.ValueType], builtins.type):
74
75
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
75
76
  ON_DEMAND: _PurchaseOption.ValueType # 0
76
77
  SPOT: _PurchaseOption.ValueType # 1
@@ -81,6 +82,7 @@ ON_DEMAND: PurchaseOption.ValueType # 0
81
82
  SPOT: PurchaseOption.ValueType # 1
82
83
  global___PurchaseOption = PurchaseOption
83
84
 
85
+ @typing.final
84
86
  class Action(google.protobuf.message.Message):
85
87
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
86
88
 
@@ -96,12 +98,13 @@ class Action(google.protobuf.message.Message):
96
98
  build_deploy: global___BuildAndDeployAction | None = ...,
97
99
  batch_execution: global___BatchExecutionAction | None = ...,
98
100
  ) -> None: ...
99
- def HasField(self, field_name: typing_extensions.Literal["action", b"action", "batch_execution", b"batch_execution", "build_deploy", b"build_deploy"]) -> builtins.bool: ...
100
- def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "batch_execution", b"batch_execution", "build_deploy", b"build_deploy"]) -> None: ...
101
- def WhichOneof(self, oneof_group: typing_extensions.Literal["action", b"action"]) -> typing_extensions.Literal["build_deploy", "batch_execution"] | None: ...
101
+ def HasField(self, field_name: typing.Literal["action", b"action", "batch_execution", b"batch_execution", "build_deploy", b"build_deploy"]) -> builtins.bool: ...
102
+ def ClearField(self, field_name: typing.Literal["action", b"action", "batch_execution", b"batch_execution", "build_deploy", b"build_deploy"]) -> None: ...
103
+ def WhichOneof(self, oneof_group: typing.Literal["action", b"action"]) -> typing.Literal["build_deploy", "batch_execution"] | None: ...
102
104
 
103
105
  global___Action = Action
104
106
 
107
+ @typing.final
105
108
  class BatchExecutionAction(google.protobuf.message.Message):
106
109
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
107
110
 
@@ -113,11 +116,12 @@ class BatchExecutionAction(google.protobuf.message.Message):
113
116
  *,
114
117
  execute_batch_job: frogml._proto.qwak.batch_job.v1.batch_job_service_pb2.BatchJobRequest | None = ...,
115
118
  ) -> None: ...
116
- def HasField(self, field_name: typing_extensions.Literal["execute_batch_job", b"execute_batch_job"]) -> builtins.bool: ...
117
- def ClearField(self, field_name: typing_extensions.Literal["execute_batch_job", b"execute_batch_job"]) -> None: ...
119
+ def HasField(self, field_name: typing.Literal["execute_batch_job", b"execute_batch_job"]) -> builtins.bool: ...
120
+ def ClearField(self, field_name: typing.Literal["execute_batch_job", b"execute_batch_job"]) -> None: ...
118
121
 
119
122
  global___BatchExecutionAction = BatchExecutionAction
120
123
 
124
+ @typing.final
121
125
  class BuildAndDeployAction(google.protobuf.message.Message):
122
126
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
123
127
 
@@ -137,11 +141,12 @@ class BuildAndDeployAction(google.protobuf.message.Message):
137
141
  deployment_condition: global___DeploymentCondition | None = ...,
138
142
  deployment_spec: global___DeploymentSpec | None = ...,
139
143
  ) -> None: ...
140
- def HasField(self, field_name: typing_extensions.Literal["build_spec", b"build_spec", "deployment_condition", b"deployment_condition", "deployment_spec", b"deployment_spec"]) -> builtins.bool: ...
141
- def ClearField(self, field_name: typing_extensions.Literal["build_spec", b"build_spec", "deployment_condition", b"deployment_condition", "deployment_spec", b"deployment_spec"]) -> None: ...
144
+ def HasField(self, field_name: typing.Literal["build_spec", b"build_spec", "deployment_condition", b"deployment_condition", "deployment_spec", b"deployment_spec"]) -> builtins.bool: ...
145
+ def ClearField(self, field_name: typing.Literal["build_spec", b"build_spec", "deployment_condition", b"deployment_condition", "deployment_spec", b"deployment_spec"]) -> None: ...
142
146
 
143
147
  global___BuildAndDeployAction = BuildAndDeployAction
144
148
 
149
+ @typing.final
145
150
  class DeploymentCondition(google.protobuf.message.Message):
146
151
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
147
152
 
@@ -157,12 +162,13 @@ class DeploymentCondition(google.protobuf.message.Message):
157
162
  build_metric: global___BuildMetricCondition | None = ...,
158
163
  deployed_build_metric: global___DeployedBuildMetricCondition | None = ...,
159
164
  ) -> None: ...
160
- def HasField(self, field_name: typing_extensions.Literal["build_metric", b"build_metric", "condition", b"condition", "deployed_build_metric", b"deployed_build_metric"]) -> builtins.bool: ...
161
- def ClearField(self, field_name: typing_extensions.Literal["build_metric", b"build_metric", "condition", b"condition", "deployed_build_metric", b"deployed_build_metric"]) -> None: ...
162
- def WhichOneof(self, oneof_group: typing_extensions.Literal["condition", b"condition"]) -> typing_extensions.Literal["build_metric", "deployed_build_metric"] | None: ...
165
+ def HasField(self, field_name: typing.Literal["build_metric", b"build_metric", "condition", b"condition", "deployed_build_metric", b"deployed_build_metric"]) -> builtins.bool: ...
166
+ def ClearField(self, field_name: typing.Literal["build_metric", b"build_metric", "condition", b"condition", "deployed_build_metric", b"deployed_build_metric"]) -> None: ...
167
+ def WhichOneof(self, oneof_group: typing.Literal["condition", b"condition"]) -> typing.Literal["build_metric", "deployed_build_metric"] | None: ...
163
168
 
164
169
  global___DeploymentCondition = DeploymentCondition
165
170
 
171
+ @typing.final
166
172
  class BuildMetricCondition(google.protobuf.message.Message):
167
173
  """checks the metric of the current build the automation is executing"""
168
174
 
@@ -184,10 +190,11 @@ class BuildMetricCondition(google.protobuf.message.Message):
184
190
  threshold_direction: frogml._proto.qwak.automation.v1.common_pb2.MetricThresholdDirection.ValueType = ...,
185
191
  threshold: builtins.str = ...,
186
192
  ) -> None: ...
187
- def ClearField(self, field_name: typing_extensions.Literal["metric_name", b"metric_name", "threshold", b"threshold", "threshold_direction", b"threshold_direction"]) -> None: ...
193
+ def ClearField(self, field_name: typing.Literal["metric_name", b"metric_name", "threshold", b"threshold", "threshold_direction", b"threshold_direction"]) -> None: ...
188
194
 
189
195
  global___BuildMetricCondition = BuildMetricCondition
190
196
 
197
+ @typing.final
191
198
  class DeployedBuildMetricCondition(google.protobuf.message.Message):
192
199
  """checks the metric of the deployed build (if there is one)"""
193
200
 
@@ -209,10 +216,11 @@ class DeployedBuildMetricCondition(google.protobuf.message.Message):
209
216
  threshold_direction: frogml._proto.qwak.automation.v1.common_pb2.MetricThresholdDirection.ValueType = ...,
210
217
  variation: builtins.str = ...,
211
218
  ) -> None: ...
212
- def ClearField(self, field_name: typing_extensions.Literal["metric_name", b"metric_name", "threshold_direction", b"threshold_direction", "variation", b"variation"]) -> None: ...
219
+ def ClearField(self, field_name: typing.Literal["metric_name", b"metric_name", "threshold_direction", b"threshold_direction", "variation", b"variation"]) -> None: ...
213
220
 
214
221
  global___DeployedBuildMetricCondition = DeployedBuildMetricCondition
215
222
 
223
+ @typing.final
216
224
  class DeploymentSpec(google.protobuf.message.Message):
217
225
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
218
226
 
@@ -221,19 +229,22 @@ class DeploymentSpec(google.protobuf.message.Message):
221
229
  SELECTED_VARIATION_NAME_FIELD_NUMBER: builtins.int
222
230
  ENVIRONMENTS_FIELD_NUMBER: builtins.int
223
231
  ENV_VARS_FIELD_NUMBER: builtins.int
232
+ selected_variation_name: builtins.str
233
+ """The selected variation name"""
224
234
  @property
225
235
  def deployment_size(self) -> global___DeploymentSize:
226
236
  """The deployment"""
237
+
227
238
  @property
228
239
  def advanced_options(self) -> global___AdvancedDeploymentOptions: ...
229
- selected_variation_name: builtins.str
230
- """The selected variation name"""
231
240
  @property
232
241
  def environments(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
233
242
  """The selected environment names"""
243
+
234
244
  @property
235
245
  def env_vars(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
236
246
  """Environment variables for the model code"""
247
+
237
248
  def __init__(
238
249
  self,
239
250
  *,
@@ -243,11 +254,12 @@ class DeploymentSpec(google.protobuf.message.Message):
243
254
  environments: collections.abc.Iterable[builtins.str] | None = ...,
244
255
  env_vars: collections.abc.Iterable[builtins.str] | None = ...,
245
256
  ) -> None: ...
246
- def HasField(self, field_name: typing_extensions.Literal["advanced_options", b"advanced_options", "deployment_size", b"deployment_size"]) -> builtins.bool: ...
247
- def ClearField(self, field_name: typing_extensions.Literal["advanced_options", b"advanced_options", "deployment_size", b"deployment_size", "env_vars", b"env_vars", "environments", b"environments", "selected_variation_name", b"selected_variation_name"]) -> None: ...
257
+ def HasField(self, field_name: typing.Literal["advanced_options", b"advanced_options", "deployment_size", b"deployment_size"]) -> builtins.bool: ...
258
+ def ClearField(self, field_name: typing.Literal["advanced_options", b"advanced_options", "deployment_size", b"deployment_size", "env_vars", b"env_vars", "environments", b"environments", "selected_variation_name", b"selected_variation_name"]) -> None: ...
248
259
 
249
260
  global___DeploymentSpec = DeploymentSpec
250
261
 
262
+ @typing.final
251
263
  class AdvancedDeploymentOptions(google.protobuf.message.Message):
252
264
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
253
265
 
@@ -267,15 +279,16 @@ class AdvancedDeploymentOptions(google.protobuf.message.Message):
267
279
  """Serve model container in daemon mode"""
268
280
  custom_iam_role_arn: builtins.str
269
281
  """Custom IAM Role ARN"""
270
- @property
271
- def auto_scaling_config(self) -> frogml._proto.qwak.automation.v1.auto_scaling_pb2.AutoScalingConfig:
272
- """Auto scaling config"""
273
282
  max_batch_size: builtins.int
274
283
  """Max batch size of records"""
275
284
  deployment_process_timeout_limit: builtins.int
276
285
  """The timeout for the deployment (in seconds)"""
277
286
  service_account_key_secret_name: builtins.str
278
287
  """Custom service account for GCP"""
288
+ @property
289
+ def auto_scaling_config(self) -> frogml._proto.qwak.automation.v1.auto_scaling_pb2.AutoScalingConfig:
290
+ """Auto scaling config"""
291
+
279
292
  def __init__(
280
293
  self,
281
294
  *,
@@ -288,11 +301,12 @@ class AdvancedDeploymentOptions(google.protobuf.message.Message):
288
301
  deployment_process_timeout_limit: builtins.int = ...,
289
302
  service_account_key_secret_name: builtins.str = ...,
290
303
  ) -> None: ...
291
- def HasField(self, field_name: typing_extensions.Literal["auto_scaling_config", b"auto_scaling_config"]) -> builtins.bool: ...
292
- def ClearField(self, field_name: typing_extensions.Literal["auto_scaling_config", b"auto_scaling_config", "custom_iam_role_arn", b"custom_iam_role_arn", "daemon_mode", b"daemon_mode", "deployment_process_timeout_limit", b"deployment_process_timeout_limit", "http_request_timeout_ms", b"http_request_timeout_ms", "max_batch_size", b"max_batch_size", "number_of_http_server_workers", b"number_of_http_server_workers", "service_account_key_secret_name", b"service_account_key_secret_name"]) -> None: ...
304
+ def HasField(self, field_name: typing.Literal["auto_scaling_config", b"auto_scaling_config"]) -> builtins.bool: ...
305
+ def ClearField(self, field_name: typing.Literal["auto_scaling_config", b"auto_scaling_config", "custom_iam_role_arn", b"custom_iam_role_arn", "daemon_mode", b"daemon_mode", "deployment_process_timeout_limit", b"deployment_process_timeout_limit", "http_request_timeout_ms", b"http_request_timeout_ms", "max_batch_size", b"max_batch_size", "number_of_http_server_workers", b"number_of_http_server_workers", "service_account_key_secret_name", b"service_account_key_secret_name"]) -> None: ...
293
306
 
294
307
  global___AdvancedDeploymentOptions = AdvancedDeploymentOptions
295
308
 
309
+ @typing.final
296
310
  class DeploymentSize(google.protobuf.message.Message):
297
311
  """Should be common - from deployment manager"""
298
312
 
@@ -315,9 +329,11 @@ class DeploymentSize(google.protobuf.message.Message):
315
329
  @property
316
330
  def gpu_resources(self) -> global___GpuResources:
317
331
  """GPU Resource for deployed model"""
332
+
318
333
  @property
319
334
  def client_pod_compute_resources(self) -> frogml._proto.qwak.user_application.common.v0.resources_pb2.ClientPodComputeResources:
320
335
  """Client pod compute resources"""
336
+
321
337
  def __init__(
322
338
  self,
323
339
  *,
@@ -328,14 +344,16 @@ class DeploymentSize(google.protobuf.message.Message):
328
344
  gpu_resources: global___GpuResources | None = ...,
329
345
  client_pod_compute_resources: frogml._proto.qwak.user_application.common.v0.resources_pb2.ClientPodComputeResources | None = ...,
330
346
  ) -> None: ...
331
- def HasField(self, field_name: typing_extensions.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "gpu_resources", b"gpu_resources"]) -> builtins.bool: ...
332
- def ClearField(self, field_name: typing_extensions.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "cpu", b"cpu", "gpu_resources", b"gpu_resources", "memory_amount", b"memory_amount", "memory_units", b"memory_units", "number_of_pods", b"number_of_pods"]) -> None: ...
347
+ def HasField(self, field_name: typing.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "gpu_resources", b"gpu_resources"]) -> builtins.bool: ...
348
+ def ClearField(self, field_name: typing.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "cpu", b"cpu", "gpu_resources", b"gpu_resources", "memory_amount", b"memory_amount", "memory_units", b"memory_units", "number_of_pods", b"number_of_pods"]) -> None: ...
333
349
 
334
350
  global___DeploymentSize = DeploymentSize
335
351
 
352
+ @typing.final
336
353
  class BuildSpec(google.protobuf.message.Message):
337
354
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
338
355
 
356
+ @typing.final
339
357
  class ParametersEntry(google.protobuf.message.Message):
340
358
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
341
359
 
@@ -349,7 +367,7 @@ class BuildSpec(google.protobuf.message.Message):
349
367
  key: builtins.str = ...,
350
368
  value: builtins.str = ...,
351
369
  ) -> None: ...
352
- def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...
370
+ def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...
353
371
 
354
372
  GIT_MODEL_SOURCE_FIELD_NUMBER: builtins.int
355
373
  PARAMETERS_FIELD_NUMBER: builtins.int
@@ -365,34 +383,38 @@ class BuildSpec(google.protobuf.message.Message):
365
383
  PURCHASE_OPTION_FIELD_NUMBER: builtins.int
366
384
  SERVICE_ACCOUNT_KEY_SECRET_NAME_FIELD_NUMBER: builtins.int
367
385
  PROVISION_INSTANCE_TIMEOUT_FIELD_NUMBER: builtins.int
386
+ base_image: builtins.str
387
+ assumed_iam_role: builtins.str
388
+ main_dir: builtins.str
389
+ """The main dir of the model"""
390
+ dependency_file_path: builtins.str
391
+ """The custom dependency file path."""
392
+ gpu_compatible: builtins.bool
393
+ """If the model is GPU compatible"""
394
+ purchase_option: global___PurchaseOption.ValueType
395
+ service_account_key_secret_name: builtins.str
396
+ """Custom service account for GCP"""
397
+ provision_instance_timeout: builtins.int
368
398
  @property
369
399
  def git_model_source(self) -> global___GitModelSource:
370
400
  """Git Details to get model from."""
401
+
371
402
  @property
372
403
  def parameters(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
373
404
  """Parameters for the build"""
405
+
374
406
  @property
375
407
  def tags(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
376
408
  """Tags to save on the build"""
377
- base_image: builtins.str
378
- assumed_iam_role: builtins.str
409
+
379
410
  @property
380
411
  def resource(self) -> global___Resources: ...
381
- main_dir: builtins.str
382
- """The main dir of the model"""
383
- dependency_file_path: builtins.str
384
- """The custom dependency file path."""
385
412
  @property
386
413
  def env_vars(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
387
414
  """Environment variables for the model code"""
388
- gpu_compatible: builtins.bool
389
- """If the model is GPU compatible"""
415
+
390
416
  @property
391
417
  def push_image(self) -> google.protobuf.wrappers_pb2.BoolValue: ...
392
- purchase_option: global___PurchaseOption.ValueType
393
- service_account_key_secret_name: builtins.str
394
- """Custom service account for GCP"""
395
- provision_instance_timeout: builtins.int
396
418
  def __init__(
397
419
  self,
398
420
  *,
@@ -411,11 +433,12 @@ class BuildSpec(google.protobuf.message.Message):
411
433
  service_account_key_secret_name: builtins.str = ...,
412
434
  provision_instance_timeout: builtins.int = ...,
413
435
  ) -> None: ...
414
- def HasField(self, field_name: typing_extensions.Literal["git_model_source", b"git_model_source", "push_image", b"push_image", "resource", b"resource"]) -> builtins.bool: ...
415
- def ClearField(self, field_name: typing_extensions.Literal["assumed_iam_role", b"assumed_iam_role", "base_image", b"base_image", "dependency_file_path", b"dependency_file_path", "env_vars", b"env_vars", "git_model_source", b"git_model_source", "gpu_compatible", b"gpu_compatible", "main_dir", b"main_dir", "parameters", b"parameters", "provision_instance_timeout", b"provision_instance_timeout", "purchase_option", b"purchase_option", "push_image", b"push_image", "resource", b"resource", "service_account_key_secret_name", b"service_account_key_secret_name", "tags", b"tags"]) -> None: ...
436
+ def HasField(self, field_name: typing.Literal["git_model_source", b"git_model_source", "push_image", b"push_image", "resource", b"resource"]) -> builtins.bool: ...
437
+ def ClearField(self, field_name: typing.Literal["assumed_iam_role", b"assumed_iam_role", "base_image", b"base_image", "dependency_file_path", b"dependency_file_path", "env_vars", b"env_vars", "git_model_source", b"git_model_source", "gpu_compatible", b"gpu_compatible", "main_dir", b"main_dir", "parameters", b"parameters", "provision_instance_timeout", b"provision_instance_timeout", "purchase_option", b"purchase_option", "push_image", b"push_image", "resource", b"resource", "service_account_key_secret_name", b"service_account_key_secret_name", "tags", b"tags"]) -> None: ...
416
438
 
417
439
  global___BuildSpec = BuildSpec
418
440
 
441
+ @typing.final
419
442
  class Resources(google.protobuf.message.Message):
420
443
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
421
444
 
@@ -425,12 +448,15 @@ class Resources(google.protobuf.message.Message):
425
448
  @property
426
449
  def cpu_resources(self) -> global___CpuResources:
427
450
  """CPU Properties"""
451
+
428
452
  @property
429
453
  def gpu_resources(self) -> global___GpuResources:
430
454
  """GPU Properties"""
455
+
431
456
  @property
432
457
  def client_pod_compute_resources(self) -> frogml._proto.qwak.user_application.common.v0.resources_pb2.ClientPodComputeResources:
433
458
  """Client pod compute resources"""
459
+
434
460
  def __init__(
435
461
  self,
436
462
  *,
@@ -438,12 +464,13 @@ class Resources(google.protobuf.message.Message):
438
464
  gpu_resources: global___GpuResources | None = ...,
439
465
  client_pod_compute_resources: frogml._proto.qwak.user_application.common.v0.resources_pb2.ClientPodComputeResources | None = ...,
440
466
  ) -> None: ...
441
- def HasField(self, field_name: typing_extensions.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "cpu_resources", b"cpu_resources", "gpu_resources", b"gpu_resources", "resource", b"resource"]) -> builtins.bool: ...
442
- def ClearField(self, field_name: typing_extensions.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "cpu_resources", b"cpu_resources", "gpu_resources", b"gpu_resources", "resource", b"resource"]) -> None: ...
443
- def WhichOneof(self, oneof_group: typing_extensions.Literal["resource", b"resource"]) -> typing_extensions.Literal["cpu_resources", "gpu_resources", "client_pod_compute_resources"] | None: ...
467
+ def HasField(self, field_name: typing.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "cpu_resources", b"cpu_resources", "gpu_resources", b"gpu_resources", "resource", b"resource"]) -> builtins.bool: ...
468
+ def ClearField(self, field_name: typing.Literal["client_pod_compute_resources", b"client_pod_compute_resources", "cpu_resources", b"cpu_resources", "gpu_resources", b"gpu_resources", "resource", b"resource"]) -> None: ...
469
+ def WhichOneof(self, oneof_group: typing.Literal["resource", b"resource"]) -> typing.Literal["cpu_resources", "gpu_resources", "client_pod_compute_resources"] | None: ...
444
470
 
445
471
  global___Resources = Resources
446
472
 
473
+ @typing.final
447
474
  class CpuResources(google.protobuf.message.Message):
448
475
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
449
476
 
@@ -463,10 +490,11 @@ class CpuResources(google.protobuf.message.Message):
463
490
  memory_amount: builtins.int = ...,
464
491
  memory_units: global___MemoryUnit.ValueType = ...,
465
492
  ) -> None: ...
466
- def ClearField(self, field_name: typing_extensions.Literal["cpu", b"cpu", "memory_amount", b"memory_amount", "memory_units", b"memory_units"]) -> None: ...
493
+ def ClearField(self, field_name: typing.Literal["cpu", b"cpu", "memory_amount", b"memory_amount", "memory_units", b"memory_units"]) -> None: ...
467
494
 
468
495
  global___CpuResources = CpuResources
469
496
 
497
+ @typing.final
470
498
  class GpuResources(google.protobuf.message.Message):
471
499
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
472
500
 
@@ -482,10 +510,11 @@ class GpuResources(google.protobuf.message.Message):
482
510
  gpu_type: global___GpuType.ValueType = ...,
483
511
  gpu_amount: builtins.int = ...,
484
512
  ) -> None: ...
485
- def ClearField(self, field_name: typing_extensions.Literal["gpu_amount", b"gpu_amount", "gpu_type", b"gpu_type"]) -> None: ...
513
+ def ClearField(self, field_name: typing.Literal["gpu_amount", b"gpu_amount", "gpu_type", b"gpu_type"]) -> None: ...
486
514
 
487
515
  global___GpuResources = GpuResources
488
516
 
517
+ @typing.final
489
518
  class GitModelSource(google.protobuf.message.Message):
490
519
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
491
520
 
@@ -508,6 +537,6 @@ class GitModelSource(google.protobuf.message.Message):
508
537
  git_branch: builtins.str = ...,
509
538
  git_ssh_secret_name: builtins.str = ...,
510
539
  ) -> None: ...
511
- def ClearField(self, field_name: typing_extensions.Literal["git_branch", b"git_branch", "git_credentials_secret_name", b"git_credentials_secret_name", "git_ssh_secret_name", b"git_ssh_secret_name", "git_uri", b"git_uri"]) -> None: ...
540
+ def ClearField(self, field_name: typing.Literal["git_branch", b"git_branch", "git_credentials_secret_name", b"git_credentials_secret_name", "git_ssh_secret_name", b"git_ssh_secret_name", "git_uri", b"git_uri"]) -> None: ...
512
541
 
513
542
  global___GitModelSource = GitModelSource
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # source: frogml._proto.qwak.automation/v1/auto_scaling.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
6
  from google.protobuf import descriptor as _descriptor
6
7
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -19,9 +20,8 @@ _globals = globals()
19
20
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
20
21
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'qwak.automation.v1.auto_scaling_pb2', _globals)
21
22
  if _descriptor._USE_C_DESCRIPTORS == False:
22
-
23
- DESCRIPTOR._options = None
24
- DESCRIPTOR._serialized_options = b'\n\035com.qwak.ai.automation.api.v1P\001'
23
+ _globals['DESCRIPTOR']._options = None
24
+ _globals['DESCRIPTOR']._serialized_options = b'\n\035com.qwak.ai.automation.api.v1P\001'
25
25
  _globals['_AUTOSCALINGMETRICTYPE']._serialized_start=689
26
26
  _globals['_AUTOSCALINGMETRICTYPE']._serialized_end=886
27
27
  _globals['_AUTOSCALINGAGGREGATIONTYPE']._serialized_start=889
@@ -2,6 +2,7 @@
2
2
  @generated by mypy-protobuf. Do not edit manually!
3
3
  isort:skip_file
4
4
  """
5
+
5
6
  import builtins
6
7
  import collections.abc
7
8
  import google.protobuf.descriptor
@@ -22,7 +23,7 @@ class _AutoScalingMetricType:
22
23
  ValueType = typing.NewType("ValueType", builtins.int)
23
24
  V: typing_extensions.TypeAlias = ValueType
24
25
 
25
- class _AutoScalingMetricTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AutoScalingMetricType.ValueType], builtins.type): # noqa: F821
26
+ class _AutoScalingMetricTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AutoScalingMetricType.ValueType], builtins.type):
26
27
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
27
28
  METRIC_TYPE_NOT_VALID: _AutoScalingMetricType.ValueType # 0
28
29
  METRIC_TYPE_CPU: _AutoScalingMetricType.ValueType # 1
@@ -47,7 +48,7 @@ class _AutoScalingAggregationType:
47
48
  ValueType = typing.NewType("ValueType", builtins.int)
48
49
  V: typing_extensions.TypeAlias = ValueType
49
50
 
50
- class _AutoScalingAggregationTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AutoScalingAggregationType.ValueType], builtins.type): # noqa: F821
51
+ class _AutoScalingAggregationTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_AutoScalingAggregationType.ValueType], builtins.type):
51
52
  DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
52
53
  AGGREGATION_TYPE_NOT_VALID: _AutoScalingAggregationType.ValueType # 0
53
54
  AGGREGATION_TYPE_MIN: _AutoScalingAggregationType.ValueType # 1
@@ -72,6 +73,7 @@ AGGREGATION_TYPE_P95: AutoScalingAggregationType.ValueType # 7
72
73
  AGGREGATION_TYPE_P99: AutoScalingAggregationType.ValueType # 8
73
74
  global___AutoScalingAggregationType = AutoScalingAggregationType
74
75
 
76
+ @typing.final
75
77
  class AutoScalingConfig(google.protobuf.message.Message):
76
78
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
77
79
 
@@ -99,11 +101,12 @@ class AutoScalingConfig(google.protobuf.message.Message):
99
101
  cool_down_period: builtins.int = ...,
100
102
  triggers: global___Triggers | None = ...,
101
103
  ) -> None: ...
102
- def HasField(self, field_name: typing_extensions.Literal["triggers", b"triggers"]) -> builtins.bool: ...
103
- def ClearField(self, field_name: typing_extensions.Literal["cool_down_period", b"cool_down_period", "max_replica_count", b"max_replica_count", "min_replica_count", b"min_replica_count", "polling_interval", b"polling_interval", "triggers", b"triggers"]) -> None: ...
104
+ def HasField(self, field_name: typing.Literal["triggers", b"triggers"]) -> builtins.bool: ...
105
+ def ClearField(self, field_name: typing.Literal["cool_down_period", b"cool_down_period", "max_replica_count", b"max_replica_count", "min_replica_count", b"min_replica_count", "polling_interval", b"polling_interval", "triggers", b"triggers"]) -> None: ...
104
106
 
105
107
  global___AutoScalingConfig = AutoScalingConfig
106
108
 
109
+ @typing.final
107
110
  class Triggers(google.protobuf.message.Message):
108
111
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
109
112
 
@@ -111,15 +114,17 @@ class Triggers(google.protobuf.message.Message):
111
114
  @property
112
115
  def triggers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ScaleTrigger]:
113
116
  """List of triggers to activate scaling(up/down) of the target resource based on"""
117
+
114
118
  def __init__(
115
119
  self,
116
120
  *,
117
121
  triggers: collections.abc.Iterable[global___ScaleTrigger] | None = ...,
118
122
  ) -> None: ...
119
- def ClearField(self, field_name: typing_extensions.Literal["triggers", b"triggers"]) -> None: ...
123
+ def ClearField(self, field_name: typing.Literal["triggers", b"triggers"]) -> None: ...
120
124
 
121
125
  global___Triggers = Triggers
122
126
 
127
+ @typing.final
123
128
  class ScaleTrigger(google.protobuf.message.Message):
124
129
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
125
130
 
@@ -127,38 +132,42 @@ class ScaleTrigger(google.protobuf.message.Message):
127
132
  @property
128
133
  def prometheus_trigger(self) -> global___AutoScalingPrometheusTrigger:
129
134
  """Prometheus trigger type"""
135
+
130
136
  def __init__(
131
137
  self,
132
138
  *,
133
139
  prometheus_trigger: global___AutoScalingPrometheusTrigger | None = ...,
134
140
  ) -> None: ...
135
- def HasField(self, field_name: typing_extensions.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> builtins.bool: ...
136
- def ClearField(self, field_name: typing_extensions.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> None: ...
137
- def WhichOneof(self, oneof_group: typing_extensions.Literal["trigger_type", b"trigger_type"]) -> typing_extensions.Literal["prometheus_trigger"] | None: ...
141
+ def HasField(self, field_name: typing.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> builtins.bool: ...
142
+ def ClearField(self, field_name: typing.Literal["prometheus_trigger", b"prometheus_trigger", "trigger_type", b"trigger_type"]) -> None: ...
143
+ def WhichOneof(self, oneof_group: typing.Literal["trigger_type", b"trigger_type"]) -> typing.Literal["prometheus_trigger"] | None: ...
138
144
 
139
145
  global___ScaleTrigger = ScaleTrigger
140
146
 
147
+ @typing.final
141
148
  class AutoScalingPrometheusTrigger(google.protobuf.message.Message):
142
149
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
143
150
 
144
151
  QUERY_SPEC_FIELD_NUMBER: builtins.int
145
152
  THRESHOLD_FIELD_NUMBER: builtins.int
153
+ threshold: builtins.int
154
+ """Value to start scaling for"""
146
155
  @property
147
156
  def query_spec(self) -> global___QuerySpec:
148
157
  """Query specification"""
149
- threshold: builtins.int
150
- """Value to start scaling for"""
158
+
151
159
  def __init__(
152
160
  self,
153
161
  *,
154
162
  query_spec: global___QuerySpec | None = ...,
155
163
  threshold: builtins.int = ...,
156
164
  ) -> None: ...
157
- def HasField(self, field_name: typing_extensions.Literal["query_spec", b"query_spec"]) -> builtins.bool: ...
158
- def ClearField(self, field_name: typing_extensions.Literal["query_spec", b"query_spec", "threshold", b"threshold"]) -> None: ...
165
+ def HasField(self, field_name: typing.Literal["query_spec", b"query_spec"]) -> builtins.bool: ...
166
+ def ClearField(self, field_name: typing.Literal["query_spec", b"query_spec", "threshold", b"threshold"]) -> None: ...
159
167
 
160
168
  global___AutoScalingPrometheusTrigger = AutoScalingPrometheusTrigger
161
169
 
170
+ @typing.final
162
171
  class QuerySpec(google.protobuf.message.Message):
163
172
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
164
173
 
@@ -178,6 +187,6 @@ class QuerySpec(google.protobuf.message.Message):
178
187
  aggregation_type: global___AutoScalingAggregationType.ValueType = ...,
179
188
  time_period: builtins.int = ...,
180
189
  ) -> None: ...
181
- def ClearField(self, field_name: typing_extensions.Literal["aggregation_type", b"aggregation_type", "metric_type", b"metric_type", "time_period", b"time_period"]) -> None: ...
190
+ def ClearField(self, field_name: typing.Literal["aggregation_type", b"aggregation_type", "metric_type", b"metric_type", "time_period", b"time_period"]) -> None: ...
182
191
 
183
192
  global___QuerySpec = QuerySpec
@@ -1,6 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
3
  # source: frogml._proto.qwak.automation/v1/automation_execution.proto
4
+ # Protobuf Python Version: 4.25.1
4
5
  """Generated protocol buffer code."""
5
6
  from google.protobuf import descriptor as _descriptor
6
7
  from google.protobuf import descriptor_pool as _descriptor_pool
@@ -20,9 +21,8 @@ _globals = globals()
20
21
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
21
22
  _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'qwak.automation.v1.automation_execution_pb2', _globals)
22
23
  if _descriptor._USE_C_DESCRIPTORS == False:
23
-
24
- DESCRIPTOR._options = None
25
- DESCRIPTOR._serialized_options = b'\n\035com.qwak.ai.automation.api.v1P\001'
24
+ _globals['DESCRIPTOR']._options = None
25
+ _globals['DESCRIPTOR']._serialized_options = b'\n\035com.qwak.ai.automation.api.v1P\001'
26
26
  _globals['_EXECUTIONSTATUSMESSAGE']._serialized_start=628
27
27
  _globals['_EXECUTIONSTATUSMESSAGE']._serialized_end=708
28
28
  _globals['_AUTOMATIONEXECUTIONMESSAGE']._serialized_start=102