Skip to content

Commit 87a4b15

Browse files
committed
feat: make provision endpoints public
1 parent d487ba0 commit 87a4b15

File tree

5 files changed

+13
-21
lines changed

5 files changed

+13
-21
lines changed

docs/deployment/provision/provider.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,10 @@ The high-level provisioning mechanism:
129129

130130
Provider configurations can be updated dynamically by changing the YAML files in the `KEEP_PROVIDERS_DIRECTORY` directory.
131131

132-
Provider provisioning is done on every restart. It can also be triggered without a restart via the `/providers/provision` endpoint of the API. The user needs `write` permissions on providers.
132+
Provider provisioning is done on every restart. It can also be triggered without a restart via the `/providers/provision` endpoint of the API.
133133

134134
```
135-
curl -XPOST -u user:password http://localhost:8080/providers/provision
135+
curl -XPOST http://localhost:8080/providers/provision
136136
```
137137
138138
Keep reads the YAML files in the `KEEP_PROVIDERS_DIRECTORY` directory and determines which providers need to be added or removed.

docs/deployment/provision/workflow.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ Example directory structure:
2424

2525
You can efficiently add new workflows, remove existing ones, or modify their configurations by simply updating the workflow files in the `KEEP_WORKFLOWS_DIRECTORY`. This process allows for flexible management of workflows without requiring manual intervention.
2626

27-
Workflow provisioning is done on every restart. It can also be triggered without a restart via the `/workflows/provision` endpoint of the API. The user needs `write` permissions on workflows.
27+
Workflow provisioning is done on every restart. It can also be triggered without a restart via the `/workflows/provision` endpoint of the API.
2828

2929
```
30-
curl -XPOST -u user:password http://localhost:8080/workflows/provision
30+
curl -XPOST http://localhost:8080/workflows/provision
3131
```
3232

3333
Keep reads the `KEEP_WORKFLOWS_DIRECTORY` environment variable and determines which workflows need to be added, removed, or updated.

docs/openapi.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

keep/api/routes/providers.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
from keep.api.core.config import config
1717
from keep.api.core.db import count_alerts, get_provider_distribution, get_session
18+
from keep.api.core.dependencies import SINGLE_TENANT_UUID
1819
from keep.api.core.limiter import limiter
1920
from keep.api.models.db.provider import Provider
2021
from keep.api.models.provider import Provider as ProviderDTO
@@ -66,14 +67,9 @@ def _is_localhost():
6667

6768

6869
@router.post("/provision", description="Provision providers from file or directory")
69-
def provision_providers(
70-
authenticated_entity: AuthenticatedEntity = Depends(
71-
IdentityManagerFactory.get_auth_verifier(["write:providers"])
72-
),
73-
):
74-
tenant_id = authenticated_entity.tenant_id
75-
logger.info("Reloading provisioned providers", extra={"tenant_id": tenant_id})
76-
ProvidersService.provision_providers(tenant_id)
70+
def provision_providers():
71+
logger.info("Reloading provisioned providers")
72+
ProvidersService.provision_providers(SINGLE_TENANT_UUID)
7773
return {
7874
"provision": "done",
7975
"is_localhost": _is_localhost(),

keep/api/routes/workflows.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
update_workflow_by_id as update_workflow_by_id_db,
3434
)
3535
from keep.api.core.db import get_workflow_executions as get_workflow_executions_db
36+
from keep.api.core.dependencies import SINGLE_TENANT_UUID
3637
from keep.api.core.workflows import (
3738
get_workflow_facets,
3839
get_workflow_facets_data,
@@ -75,14 +76,9 @@
7576

7677

7778
@router.post("/provision", description="Provision workflows from a directory")
78-
def provision_providers(
79-
authenticated_entity: AuthenticatedEntity = Depends(
80-
IdentityManagerFactory.get_auth_verifier(["write:workflows"])
81-
),
82-
):
83-
tenant_id = authenticated_entity.tenant_id
84-
logger.info("Reloading provisioned workfflows", extra={"tenant_id": tenant_id})
85-
WorkflowStore.provision_workflows(tenant_id)
79+
def provision_providers():
80+
logger.info("Reloading provisioned workfflows")
81+
WorkflowStore.provision_workflows(SINGLE_TENANT_UUID)
8682
return {
8783
"provision": "done",
8884
}

0 commit comments

Comments
 (0)