omnata-plugin-runtime 0.6.10a180__tar.gz → 0.7.0a181__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: omnata-plugin-runtime
3
- Version: 0.6.10a180
3
+ Version: 0.7.0a181
4
4
  Summary: Classes and common runtime components for building and running Omnata Plugins
5
5
  Author: James Weakley
6
6
  Author-email: james.weakley@omnata.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "omnata-plugin-runtime"
3
- version = "0.6.10-a180"
3
+ version = "0.7.0-a181"
4
4
  description = "Classes and common runtime components for building and running Omnata Plugins"
5
5
  authors = ["James Weakley <james.weakley@omnata.com>"]
6
6
  readme = "README.md"
@@ -37,6 +37,14 @@ class InboundStorageBehaviour(str, Enum):
37
37
  MERGE = "merge"
38
38
  REPLACE = "replace" # now deprecated, full refreshes now use merge
39
39
 
40
+ class ConnectivityOption(str, Enum):
41
+ """
42
+ Describes the connectivity options available to a plugin.
43
+ These result in slightly different network rules and connection onboarding.
44
+ """
45
+ DIRECT = "direct"
46
+ NGROK = "ngrok"
47
+ PRIVATELINK = "privatelink"
40
48
 
41
49
  class InboundSyncStrategy(str, Enum):
42
50
  FULL_REFRESH = "Full Refresh"
@@ -489,5 +489,6 @@ class ConnectionMethod(SubscriptableBaseModel):
489
489
  name: str
490
490
  fields: List[FormFieldBase]
491
491
  oauth_template: Optional[SecurityIntegrationTemplate] = Field(default=None)
492
+ # This is now deprecated, instead signal ngrok support via the plugin manifest
492
493
  ngrok_tunnel_configuration: Optional[NGrokMTLSTunnel] = Field(default=None)
493
494
  description: str = Field(default="")
@@ -72,7 +72,8 @@ from .configuration import (
72
72
  StreamConfiguration,
73
73
  SubscriptableBaseModel,
74
74
  SyncConfigurationParameters,
75
- get_secrets
75
+ get_secrets,
76
+ ConnectivityOption
76
77
  )
77
78
  from .forms import (
78
79
  ConnectionMethod,
@@ -101,6 +102,7 @@ class PluginManifest(SubscriptableBaseModel):
101
102
  :param str docs_url: The URL where plugin documentation can be found, e.g. "https://docs.omnata.com"
102
103
  :param bool supports_inbound: A flag to indicate whether or not the plugin supports inbound sync. Support for inbound sync behaviours (full/incremental) is defined per inbound stream.
103
104
  :param List[OutboundSyncStrategy] supported_outbound_strategies: A list of sync strategies that the plugin can support, e.g. create,upsert.
105
+ :param List[ConnectivityOption] supported_connectivity_options: A list of connectivity options that the plugin can support, e.g. direct,ngrok,privatelink
104
106
  """
105
107
 
106
108
  plugin_id: str
@@ -110,6 +112,9 @@ class PluginManifest(SubscriptableBaseModel):
110
112
  docs_url: str
111
113
  supports_inbound: bool
112
114
  supported_outbound_strategies: List[OutboundSyncStrategy]
115
+ supported_connectivity_options: List[ConnectivityOption] = Field(
116
+ default_factory=lambda: [ConnectivityOption.DIRECT]
117
+ )
113
118
 
114
119
 
115
120
  class SnowflakeFunctionParameter(BaseModel):