diff --git a/qdrant-landing/content/documentation/platforms/_index.md b/qdrant-landing/content/documentation/platforms/_index.md index 0e64779c6..f662bb130 100644 --- a/qdrant-landing/content/documentation/platforms/_index.md +++ b/qdrant-landing/content/documentation/platforms/_index.md @@ -5,15 +5,16 @@ weight: 22 ## Platform Integrations -| Platform | Description | -| ------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| [Apify](./apify/) | Platform to build web scrapers and automate web browser tasks. | -| [Bubble](./bubble) | Development platform for application development with a no-code interface | -| [BuildShip](./buildship) | Low-code visual builder to create APIs, scheduled jobs, and backend workflows. | -| [DocsGPT](./docsgpt/) | Tool for ingesting documentation sources and enabling conversations and queries. | -| [Make](./make/) | Cloud platform to build low-code workflows by integrating various software applications. | -| [N8N](./n8n/) | Platform for node-based, low-code workflow automation. | -| [Pipedream](./pipedream/) | Platform for connecting apps and developing event-driven automation. | -| [Portable.io](./portable/) | Cloud platform for developing and deploying ELT transformations. | -| [PrivateGPT](./privategpt/) | Tool to ask questions about your documents using local LLMs emphasising privacy. | -| [Rivet](./rivet/) | A visual programming environment for building AI agents with LLMs. | +| Platform | Description | +| --------------------------- | ---------------------------------------------------------------------------------------- | +| [Apify](./apify/) | Platform to build web scrapers and automate web browser tasks. | +| [Bubble](./bubble) | Development platform for application development with a no-code interface | +| [BuildShip](./buildship) | Low-code visual builder to create APIs, scheduled jobs, and backend workflows. | +| [DocsGPT](./docsgpt/) | Tool for ingesting documentation sources and enabling conversations and queries. | +| [Make](./make/) | Cloud platform to build low-code workflows by integrating various software applications. | +| [N8N](./n8n/) | Platform for node-based, low-code workflow automation. | +| [Pipedream](./pipedream/) | Platform for connecting apps and developing event-driven automation. | +| [Portable.io](./portable/) | Cloud platform for developing and deploying ELT transformations. | +| [PrivateGPT](./privategpt/) | Tool to ask questions about your documents using local LLMs emphasising privacy. | +| [Pulumi](./pulumi/) | Code tool for creating, deploying, and managing cloud infrastructure. | +| [Rivet](./rivet/) | A visual programming environment for building AI agents with LLMs. | diff --git a/qdrant-landing/content/documentation/platforms/pulumi.md b/qdrant-landing/content/documentation/platforms/pulumi.md new file mode 100644 index 000000000..900d69f29 --- /dev/null +++ b/qdrant-landing/content/documentation/platforms/pulumi.md @@ -0,0 +1,224 @@ +--- +title: Pulumi +--- + +![Pulumi Logo](/documentation/platforms/pulumi/pulumi-logo.png) + +Pulumi is an open source infrastructure as code tool for creating, deploying, and managing cloud infrastructure. + +A Qdrant SDK in any of Pulumi's supported languages can be generated based on the [Qdrant Terraform Provider](https://registry.terraform.io/providers/qdrant/qdrant-cloud/latest). + +## Pre-requisites + +1. A [Pulumi Installation](https://www.pulumi.com/docs/install/). +2. An [API key](/documentation/qdrant-cloud-api/#authentication-connecting-to-cloud-api) to access the Qdrant cloud API. + +## Setup + +- Create a Pulumi project in any of the [supported languages](https://www.pulumi.com/docs/languages-sdks/) by running + +```bash +mkdir qdrant-pulumi && cd qdrant-pulumi +pulumi new "" -y +``` + +- Generate a Pulumi SDK for Qdrant by running the following in your Pulumi project directory. + +```bash +pulumi package add terraform-provider registry.terraform.io/qdrant/qdrant-cloud +``` + +- Set the Qdrant cloud API as a config value. + +```bash +pulumi config set qdrant-cloud:apiKey "" --secret +``` + +- You can now import the SDK as: + +```python +import pulumi_qdrant_cloud as qdrant_cloud +``` + +```typescript +import * as qdrantCloud from "qdrant-cloud"; +``` + +```java +import com.pulumi.qdrantcloud.*; +``` + +## Usage + +The provider includes the following data-sources and resources to work with: + +### Data Sources + +- `qdrant-cloud_booking_packages` - Get IDs and detailed information about the packages/subscriptions available. [Reference](https://github.com/qdrant/terraform-provider-qdrant-cloud/blob/main/docs/data-sources/booking_packages.md) + +```python +qdrant_cloud.get_booking_packages(cloud_provider="aws", cloud_region="us-west-2") +``` + +```typescript +qdrantCloud.getBookingPackages({ + cloudProvider: "aws", + cloudRegion: "us-west-2" +}) +``` + +```java +import com.pulumi.qdrantcloud.inputs.GetBookingPackagesArgs; + +QdrantcloudFunctions.getBookingPackages(GetBookingPackagesArgs.builder() + .cloudProvider("aws") + .cloudRegion("us-west-2") + .build()); +``` + +- `qdrant-cloud_accounts_auth_keys` - List API keys for Qdrant clusters. [Reference](https://github.com/qdrant/terraform-provider-qdrant-cloud/blob/main/docs/data-sources/accounts_auth_keys.md) + +```python +qdrant_cloud.get_accounts_auth_keys(account_id="") +``` + +```typescript +qdrantCloud.getAccountsAuthKeys({ + accountId: "" +}) +``` + +```java +import com.pulumi.qdrantcloud.inputs.GetAccountsAuthKeysArgs; + +QdrantcloudFunctions.getAccountsAuthKeys(GetAccountsAuthKeysArgs.builder() + .accountId("") + .build()); +``` + +- `qdrant-cloud_accounts_cluster` - Get Cluster Information. [Reference](https://github.com/qdrant/terraform-provider-qdrant-cloud/blob/main/docs/data-sources/accounts_cluster.md) + +```python +qdrant_cloud.get_accounts_cluster( + account_id="", + id="", +) +``` + +```typescript +qdrantCloud.getAccountsCluster({ + accountId: "", + id: "" +}) +``` + +```java +import com.pulumi.qdrantcloud.inputs.GetAccountsClusterArgs; + +QdrantcloudFunctions.getAccountsCluster(GetAccountsClusterArgs + .builder() + .accountId("") + .id("") + .build()); +``` + +- `qdrant-cloud_accounts_clusters` - List Qdrant clusters. [Reference](https://github.com/qdrant/terraform-provider-qdrant-cloud/blob/main/docs/data-sources/accounts_clusters.md) + +```python +qdrant_cloud.get_accounts_clusters(account_id="") +``` + +```typescript +qdrantCloud.getAccountsClusters({ + accountId: "" +}) +``` + +```java +import com.pulumi.qdrantcloud.inputs.GetAccountsClustersArgs; + +QdrantcloudFunctions.getAccountsClusters( + GetAccountsClustersArgs.builder().accountId("").build()); +``` + +### Resources + +- `qdrant-cloud_accounts_cluster` - Create clusters on Qdrant cloud - [Reference](https://github.com/qdrant/terraform-provider-qdrant-cloud/blob/main/docs/resources/accounts_cluster.md) + +```python +qdrant_cloud.AccountsCluster( + resource_name="pl-example-cluster-resource", + name="pl-example-cluster", + cloud_provider="gcp", + cloud_region="us-east4", + configuration=qdrant_cloud.AccountsClusterConfigurationArgs( + number_of_nodes=1, + node_configuration=qdrant_cloud.AccountsClusterConfigurationNodeConfigurationArgs( + package_id="3920d1eb-d3eb-4117-9578-b12d89bb1c5d" + ), + ), + account_id="", +) +``` + +```typescript +new qdrantCloud.AccountsCluster("pl-example-cluster-resource", { + cloudProvider: "gcp", + cloudRegion: "us-east4", + configuration: { + numberOfNodes: 1, + nodeConfiguration: { + packageId: "3920d1eb-d3eb-4117-9578-b12d89bb1c5d" + } + }, + accountId: "" +}) +``` + +```java +import com.pulumi.qdrantcloud.AccountsClusterArgs; +import com.pulumi.qdrantcloud.inputs.AccountsClusterConfigurationArgs; +import com.pulumi.qdrantcloud.inputs.AccountsClusterConfigurationNodeConfigurationArgs; + +new AccountsCluster("pl-example-cluster-resource", AccountsClusterArgs.builder() + .name("pl-example-cluster") + .cloudProvider("gcp") + .cloudRegion("us-east4") + .configuration(AccountsClusterConfigurationArgs.builder() + .numberOfNodes(1.0) + .nodeConfiguration(AccountsClusterConfigurationNodeConfigurationArgs.builder() + .packageId("3920d1eb-d3eb-4117-9578-b12d89bb1c5d") + .build()) + .build()) + .accountId("") + .build()); +``` + +- `qdrant-cloud_accounts_auth_key` - Create API keys for Qdrant cloud clusters. [Reference](https://github.com/qdrant/terraform-provider-qdrant-cloud/blob/main/docs/resources/accounts_auth_key.md) + +```python +qdrant_cloud.AccountsAuthKey( + resource_name="pl-example-key-resource", + cluster_ids=[""], +) +``` + +```typescript +new qdrantCloud.AccountsAuthKey("pl-example-cluster-resource", { + clusterIds: ["", ""] +}) +``` + +```java +import com.pulumi.qdrantcloud.AccountsAuthKey; +import com.pulumi.qdrantcloud.AccountsAuthKeyArgs; + +new AccountsAuthKey("pl-example-key-resource", AccountsAuthKeyArgs.builder() + .clusterIds("", "") + .build()); +``` + +## Further Reading + +- [Provider Documentation](https://registry.terraform.io/providers/qdrant/qdrant-cloud/latest/docs) +- [Pulumi Quickstart](https://www.pulumi.com/docs/get-started/) diff --git a/qdrant-landing/static/documentation/platforms/pulumi/pulumi-logo.png b/qdrant-landing/static/documentation/platforms/pulumi/pulumi-logo.png new file mode 100644 index 000000000..d106c511c Binary files /dev/null and b/qdrant-landing/static/documentation/platforms/pulumi/pulumi-logo.png differ