Skip to content

Commit 7db2360

Browse files
committed
chore: rename managed functions to invocable scripts
1 parent 420b47e commit 7db2360

23 files changed

+868
-2226
lines changed

examples/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,5 @@
2424
- [influx_cloud.py](influx_cloud.py) - How to connect to InfluxDB 2 Cloud
2525
- [influxdb_18_example.py](influxdb_18_example.py) - How to connect to InfluxDB 1.8
2626
- [nanosecond_precision.py](nanosecond_precision.py) - How to use nanoseconds precision
27-
- [managed_functions.py](managed_functions.py) - How to use Cloud Managed Functions
27+
- [invocable_scripts.py](invocable_scripts.py) - How to use Invocable scripts Cloud API to create custom endpoints that query data
2828

examples/invocable_scripts.py

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
"""
2+
How to use Invocable scripts Cloud API to create custom endpoints that query data
3+
"""
4+
import datetime
5+
6+
from influxdb_client import InfluxDBClient, InvocableScriptsService, ScriptCreateRequest, ScriptInvocationParams, \
7+
ScriptLanguage
8+
9+
"""
10+
Define credentials
11+
"""
12+
influx_cloud_url = 'https://us-west-2-1.aws.cloud2.influxdata.com'
13+
influx_cloud_token = '...'
14+
bucket_name = '...'
15+
org_name = '...'
16+
17+
with InfluxDBClient(url=influx_cloud_url, token=influx_cloud_token, org=org_name, debug=False, timeout=20_000) as client:
18+
uniqueId = str(datetime.datetime.now())
19+
"""
20+
Find Organization ID by Organization API.
21+
"""
22+
org = client.organizations_api().find_organizations(org=org_name)[0]
23+
24+
scripts_service = InvocableScriptsService(api_client=client.api_client)
25+
26+
"""
27+
Create Invocable Script
28+
"""
29+
print(f"------- Create -------\n")
30+
create_request = ScriptCreateRequest(name=f"my_scrupt_{uniqueId}",
31+
description="my first try",
32+
language=ScriptLanguage.FLUX,
33+
org_id=org.id,
34+
script=f"from(bucket: params.bucket_name) |> range(start: -30d) |> limit(n:2)")
35+
36+
created_script = scripts_service.post_scripts(script_create_request=create_request)
37+
print(created_script)
38+
39+
"""
40+
Invoke a script
41+
"""
42+
print(f"\n------- Invoke -------\n")
43+
response = scripts_service.post_scripts_id_invoke(script_id=created_script.id,
44+
script_invocation_params=ScriptInvocationParams(
45+
params={"bucket_name": bucket_name}))
46+
print(response)
47+
48+
"""
49+
List scripts
50+
"""
51+
print(f"\n------- List -------\n")
52+
scripts = scripts_service.get_scripts().scripts
53+
print("\n".join([f" ---\n ID: {it.id}\n Name: {it.name}\n Description: {it.description}" for it in scripts]))
54+
print("---")
55+
56+
"""
57+
Delete previously created Script
58+
"""
59+
print(f"------- Delete -------\n")
60+
scripts_service.delete_scripts_id(script_id=created_script.id)
61+
print(f" Successfully deleted script: '{created_script.name}'")

examples/managed_functions.py

Lines changed: 0 additions & 61 deletions
This file was deleted.

influxdb_client/__init__.py

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
from influxdb_client.service.dbr_ps_service import DBRPsService
2323
from influxdb_client.service.dashboards_service import DashboardsService
2424
from influxdb_client.service.delete_service import DeleteService
25-
from influxdb_client.service.functions_service import FunctionsService
2625
from influxdb_client.service.health_service import HealthService
26+
from influxdb_client.service.invocable_scripts_service import InvocableScriptsService
2727
from influxdb_client.service.labels_service import LabelsService
2828
from influxdb_client.service.notification_endpoints_service import NotificationEndpointsService
2929
from influxdb_client.service.notification_rules_service import NotificationRulesService
@@ -127,19 +127,7 @@
127127
from influxdb_client.domain.flux_response import FluxResponse
128128
from influxdb_client.domain.flux_suggestion import FluxSuggestion
129129
from influxdb_client.domain.flux_suggestions import FluxSuggestions
130-
from influxdb_client.domain.function import Function
131-
from influxdb_client.domain.function_create_request import FunctionCreateRequest
132130
from influxdb_client.domain.function_expression import FunctionExpression
133-
from influxdb_client.domain.function_invocation_params import FunctionInvocationParams
134-
from influxdb_client.domain.function_language import FunctionLanguage
135-
from influxdb_client.domain.function_run import FunctionRun
136-
from influxdb_client.domain.function_run_base import FunctionRunBase
137-
from influxdb_client.domain.function_run_log import FunctionRunLog
138-
from influxdb_client.domain.function_runs import FunctionRuns
139-
from influxdb_client.domain.function_trigger_request import FunctionTriggerRequest
140-
from influxdb_client.domain.function_trigger_response import FunctionTriggerResponse
141-
from influxdb_client.domain.function_update_request import FunctionUpdateRequest
142-
from influxdb_client.domain.functions import Functions
143131
from influxdb_client.domain.gauge_view_properties import GaugeViewProperties
144132
from influxdb_client.domain.greater_threshold import GreaterThreshold
145133
from influxdb_client.domain.http_notification_endpoint import HTTPNotificationEndpoint
@@ -246,6 +234,12 @@
246234
from influxdb_client.domain.scraper_target_request import ScraperTargetRequest
247235
from influxdb_client.domain.scraper_target_response import ScraperTargetResponse
248236
from influxdb_client.domain.scraper_target_responses import ScraperTargetResponses
237+
from influxdb_client.domain.script import Script
238+
from influxdb_client.domain.script_create_request import ScriptCreateRequest
239+
from influxdb_client.domain.script_invocation_params import ScriptInvocationParams
240+
from influxdb_client.domain.script_language import ScriptLanguage
241+
from influxdb_client.domain.script_update_request import ScriptUpdateRequest
242+
from influxdb_client.domain.scripts import Scripts
249243
from influxdb_client.domain.secret_keys import SecretKeys
250244
from influxdb_client.domain.secret_keys_response import SecretKeysResponse
251245
from influxdb_client.domain.single_stat_view_properties import SingleStatViewProperties

influxdb_client/client/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
from influxdb_client.service.dbr_ps_service import DBRPsService
2121
from influxdb_client.service.dashboards_service import DashboardsService
2222
from influxdb_client.service.delete_service import DeleteService
23-
from influxdb_client.service.functions_service import FunctionsService
2423
from influxdb_client.service.health_service import HealthService
24+
from influxdb_client.service.invocable_scripts_service import InvocableScriptsService
2525
from influxdb_client.service.labels_service import LabelsService
2626
from influxdb_client.service.notification_endpoints_service import NotificationEndpointsService
2727
from influxdb_client.service.notification_rules_service import NotificationRulesService

influxdb_client/client/write/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
from influxdb_client.service.dbr_ps_service import DBRPsService
2121
from influxdb_client.service.dashboards_service import DashboardsService
2222
from influxdb_client.service.delete_service import DeleteService
23-
from influxdb_client.service.functions_service import FunctionsService
2423
from influxdb_client.service.health_service import HealthService
24+
from influxdb_client.service.invocable_scripts_service import InvocableScriptsService
2525
from influxdb_client.service.labels_service import LabelsService
2626
from influxdb_client.service.notification_endpoints_service import NotificationEndpointsService
2727
from influxdb_client.service.notification_rules_service import NotificationRulesService

influxdb_client/domain/__init__.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -92,19 +92,7 @@
9292
from influxdb_client.domain.flux_response import FluxResponse
9393
from influxdb_client.domain.flux_suggestion import FluxSuggestion
9494
from influxdb_client.domain.flux_suggestions import FluxSuggestions
95-
from influxdb_client.domain.function import Function
96-
from influxdb_client.domain.function_create_request import FunctionCreateRequest
9795
from influxdb_client.domain.function_expression import FunctionExpression
98-
from influxdb_client.domain.function_invocation_params import FunctionInvocationParams
99-
from influxdb_client.domain.function_language import FunctionLanguage
100-
from influxdb_client.domain.function_run import FunctionRun
101-
from influxdb_client.domain.function_run_base import FunctionRunBase
102-
from influxdb_client.domain.function_run_log import FunctionRunLog
103-
from influxdb_client.domain.function_runs import FunctionRuns
104-
from influxdb_client.domain.function_trigger_request import FunctionTriggerRequest
105-
from influxdb_client.domain.function_trigger_response import FunctionTriggerResponse
106-
from influxdb_client.domain.function_update_request import FunctionUpdateRequest
107-
from influxdb_client.domain.functions import Functions
10896
from influxdb_client.domain.gauge_view_properties import GaugeViewProperties
10997
from influxdb_client.domain.greater_threshold import GreaterThreshold
11098
from influxdb_client.domain.http_notification_endpoint import HTTPNotificationEndpoint
@@ -211,6 +199,12 @@
211199
from influxdb_client.domain.scraper_target_request import ScraperTargetRequest
212200
from influxdb_client.domain.scraper_target_response import ScraperTargetResponse
213201
from influxdb_client.domain.scraper_target_responses import ScraperTargetResponses
202+
from influxdb_client.domain.script import Script
203+
from influxdb_client.domain.script_create_request import ScriptCreateRequest
204+
from influxdb_client.domain.script_invocation_params import ScriptInvocationParams
205+
from influxdb_client.domain.script_language import ScriptLanguage
206+
from influxdb_client.domain.script_update_request import ScriptUpdateRequest
207+
from influxdb_client.domain.scripts import Scripts
214208
from influxdb_client.domain.secret_keys import SecretKeys
215209
from influxdb_client.domain.secret_keys_response import SecretKeysResponse
216210
from influxdb_client.domain.single_stat_view_properties import SingleStatViewProperties

influxdb_client/domain/function_run.py

Lines changed: 0 additions & 122 deletions
This file was deleted.

0 commit comments

Comments
 (0)