diff --git a/_components/Feedback.tsx b/_components/Feedback.tsx index 74232ce53..65a7d243a 100644 --- a/_components/Feedback.tsx +++ b/_components/Feedback.tsx @@ -117,7 +117,7 @@ export default function Feedback({ file }: { file: string | undefined }) { rel="" class="mt-4 !underline underline-offset-2 text-xs block" target="_blank" - href="/deploy/privacy-policy" + href="/deploy/privacy_policy" > Privacy policy diff --git a/_components/Footer.tsx b/_components/Footer.tsx index dbc76830b..5d48b1e2f 100644 --- a/_components/Footer.tsx +++ b/_components/Footer.tsx @@ -151,7 +151,7 @@ const data = [ }, { label: "Privacy Policy", - href: "/deploy/privacy-policy", + href: "/deploy/privacy_policy", }, ], }, diff --git a/_config.ts b/_config.ts index 5f954b9a3..c07700368 100644 --- a/_config.ts +++ b/_config.ts @@ -137,9 +137,9 @@ site.copy("timeUtils.ts"); site.copy("subhosting/api/images"); site.copy("deploy/docs-images"); site.copy("deploy/images"); -site.copy("deploy/kv/manual/images"); +site.copy("deploy/classic/images"); +site.copy("deploy/kv/images"); site.copy("deploy/tutorials/images"); -site.copy("deploy/kv/tutorials/images"); site.copy("runtime/fundamentals/images"); site.copy("runtime/getting_started/images"); site.copy("runtime/reference/images"); diff --git a/data.json b/data.json index 4335fcd28..d9d61cb63 100644 --- a/data.json +++ b/data.json @@ -14,7 +14,7 @@ "category": "Runtime" }, { - "path": "/deploy/pricing-and-limits/#tls-proxying", + "path": "/deploy/pricing_and_limits/#tls-proxying", "title": "TLS proxying", "content": "TLS termination is required for outgoing connections to port 443 (the port used\nfor HTTPS). Using Deno.connect to\nconnect to these ports is prohibited. If you need to establish a TLS connection\nto port 443, please use\nDeno.connectTls instead. fetch is\nnot impacted by this restriction.\nThis restriction is in place because connecting to port 443 without terminating\nTLS is frequently used in TLS-over-TLS proxies, which are prohibited on Deno\nDeploy as per our acceptable use policy.\n", "section": "Pricing and limitations", diff --git a/deploy/_data.ts b/deploy/_data.ts index 09999280e..e9cb4e901 100644 --- a/deploy/_data.ts +++ b/deploy/_data.ts @@ -32,7 +32,7 @@ export const sidebar = [ }, { title: "Environment Variables and Contexts", - href: "/deploy/reference/env-vars-and-contexts/", + href: "/deploy/reference/env_vars_and_contexts/", }, { title: "Timelines", @@ -48,7 +48,7 @@ export const sidebar = [ }, { title: "Deno KV", - href: "/deploy/reference/deno-kv/", + href: "/deploy/reference/deno_kv/", }, { title: "Databases", @@ -56,7 +56,7 @@ export const sidebar = [ }, { title: "Cloud Connections", - href: "/deploy/reference/cloud-connections/", + href: "/deploy/reference/cloud_connections/", }, { title: "OIDC", @@ -84,6 +84,29 @@ export const sidebar = [ }, ], }, + { + title: "KV", + items: [ + { title: "Overview", href: "/deploy/kv/" }, + { title: "Key space", href: "/deploy/kv/key_space/" }, + { title: "Operations", href: "/deploy/kv/operations/" }, + { + title: "Key expiration", + href: "/deploy/kv/key_expiration/", + }, + { + title: "Secondary indexes", + href: "/deploy/kv/secondary_indexes/", + }, + { title: "Transactions", href: "/deploy/kv/transactions/" }, + { title: "Node", href: "/deploy/kv/node/" }, + { + title: "Data modeling", + href: "/deploy/kv/data_modeling_typescript/", + }, + { title: "Backup", href: "/deploy/kv/backup/" }, + ], + }, { title: "Policies and Limits", items: [ @@ -93,17 +116,17 @@ export const sidebar = [ }, { title: "Acceptable Use Policy", - href: "/deploy/acceptable-use-policy/", + href: "/deploy/acceptable_use_policy/", }, { title: "Fulfillment Policy", - href: "/deploy/fulfillment-policy/", + href: "/deploy/fulfillment_policy/", }, - { title: "Privacy Policy", href: "/deploy/privacy-policy/" }, + { title: "Privacy Policy", href: "/deploy/privacy_policy/" }, { title: "Security", href: "/deploy/security/" }, { title: "Terms and Conditions", - href: "/deploy/terms-and-conditions/", + href: "/deploy/terms_and_conditions/", }, ], }, diff --git a/deploy/acceptable-use-policy.md b/deploy/acceptable_use_policy.md similarity index 100% rename from deploy/acceptable-use-policy.md rename to deploy/acceptable_use_policy.md diff --git a/deploy/changelog.md b/deploy/changelog.md index a1baaf686..2949ca2af 100644 --- a/deploy/changelog.md +++ b/deploy/changelog.md @@ -103,7 +103,7 @@ description: "Listing notable progress in the development and evolution of Deno you through the process of connecting your app to AWS or GCP. - You can use the standard AWS and GCP SDKs to access the services - no need to re-write any code to use a different API. - - [Learn more in the documentation.](/deploy/reference/cloud-connections/) + - [Learn more in the documentation.](/deploy/reference/cloud_connections/) - The application metrics page now shows more metrics, including V8 memory metrics such as heap size and garbage collection stats, as well as process level metrics such as CPU usage and overall memory usage. diff --git a/deploy/classic/_data.ts b/deploy/classic/_data.ts index 21ce5db9a..ed573bc36 100644 --- a/deploy/classic/_data.ts +++ b/deploy/classic/_data.ts @@ -19,7 +19,7 @@ export const sidebar = [ { title: "Regions", href: "/deploy/classic/regions/" }, { title: "Pricing and limits", - href: "/deploy/pricing-and-limits/", + href: "/deploy/pricing_and_limits/", }, ], }, @@ -48,36 +48,13 @@ export const sidebar = [ title: "Logs", href: "/deploy/classic/logs/", }, - { - title: "KV", - items: [ - { title: "Overview", href: "/deploy/kv/manual/" }, - { title: "Key space", href: "/deploy/kv/manual/key_space/" }, - { title: "Operations", href: "/deploy/kv/manual/operations/" }, - { - title: "Key expiration", - href: "/deploy/kv/manual/key_expiration/", - }, - { - title: "Secondary indexes", - href: "/deploy/kv/manual/secondary_indexes/", - }, - { title: "Transactions", href: "/deploy/kv/manual/transactions/" }, - { title: "Node", href: "/deploy/kv/manual/node/" }, - { - title: "Data modeling", - href: "/deploy/kv/manual/data_modeling_typescript/", - }, - { title: "Backup", href: "/deploy/kv/manual/backup/" }, - ], - }, { title: "Queues", - href: "/deploy/kv/manual/queue_overview/", + href: "/deploy/classic/queues/", }, { title: "Cron", - href: "/deploy/kv/manual/cron/", + href: "/deploy/classic/cron/", }, { title: "Edge cache", @@ -90,7 +67,7 @@ export const sidebar = [ items: [ { title: "Deno KV", - href: "/deploy/kv/manual/on_deploy/", + href: "/deploy/classic/kv_on_deploy/", }, { title: "Third-Party Databases", diff --git a/deploy/kv/manual/cron.md b/deploy/classic/cron.md similarity index 98% rename from deploy/kv/manual/cron.md rename to deploy/classic/cron.md index f4fdccac2..598951db6 100644 --- a/deploy/kv/manual/cron.md +++ b/deploy/classic/cron.md @@ -2,6 +2,7 @@ title: "Scheduling cron tasks" oldUrl: - /kv/manual/cron/ + - /deploy/kv/manual/cron/ --- :::info Legacy Documentation @@ -76,7 +77,7 @@ Any nested `Deno.cron` definitions (e.g. inside in an error or will be ignored. If you need to schedule tasks dynamically during your Deno program execution, -you can use the [Deno Queues](./queue_overview) APIs. +you can use the [Deno Queues](/deploy/classic/queues/) APIs. ### Time zone diff --git a/deploy/classic/edge-cache.md b/deploy/classic/edge_cache.md similarity index 97% rename from deploy/classic/edge-cache.md rename to deploy/classic/edge_cache.md index 26a7bd0db..625f0caea 100644 --- a/deploy/classic/edge-cache.md +++ b/deploy/classic/edge_cache.md @@ -1,5 +1,7 @@ --- title: "Edge Cache" +oldUrl: + - /deploy/classic/edge-cache/ --- :::info Legacy Documentation diff --git a/deploy/kv/manual/images/cron-tasks.png b/deploy/classic/images/cron-tasks.png similarity index 100% rename from deploy/kv/manual/images/cron-tasks.png rename to deploy/classic/images/cron-tasks.png diff --git a/deploy/kv/manual/on_deploy.md b/deploy/classic/kv_on_deploy.md similarity index 95% rename from deploy/kv/manual/on_deploy.md rename to deploy/classic/kv_on_deploy.md index 0d2f0f6dc..f060ce461 100644 --- a/deploy/kv/manual/on_deploy.md +++ b/deploy/classic/kv_on_deploy.md @@ -3,6 +3,7 @@ title: "KV on Deno Deploy" oldUrl: - /deploy/manual/kv/ - /kv/manual/on_deploy/ + - /deploy/kv/manual/on_deploy/ --- :::info Legacy Documentation @@ -53,12 +54,6 @@ Below are the latency figures observed in our top regions: | California (us-west2) | 72ms | 72ms | | Hong Kong (asia-east2) | 42ms | 194ms | -## Distributed queues - -Serverless distributed queues are available on Deno Deploy. See -[Queues on Deno Deploy](/deploy/kv/manual/queue_overview#queues-on-deno-deploy) -for more details. - ## Connect to managed databases from outside of Deno Deploy You can connect to your Deno Deploy KV database from your Deno application diff --git a/deploy/kv/manual/queue_overview.md b/deploy/classic/queues.md similarity index 93% rename from deploy/kv/manual/queue_overview.md rename to deploy/classic/queues.md index 018e4b79b..a4a2f27e9 100644 --- a/deploy/kv/manual/queue_overview.md +++ b/deploy/classic/queues.md @@ -2,8 +2,17 @@ title: "Using Queues" oldUrl: - /kv/manual/queue_overview/ + - /deploy/kv/manual/queue_overview/ --- +:::info Legacy Documentation + +You are viewing legacy documentation for Deno Deploy Classic. We recommend +migrating to the new +Deno Deploy platform. + +::: + The Deno runtime includes a queueing API that supports offloading larger @@ -108,8 +117,9 @@ kv.listenQueue((msg: unknown) => { ## Queue API with KV atomic transactions -You can combine the queue API with [KV atomic transactions](./transactions) to -atomically enqueue messages and modify keys in the same transaction. +You can combine the queue API with +[KV atomic transactions](/deploy/kv/transactions/) to atomically enqueue +messages and modify keys in the same transaction. ```ts title="kv_transaction_example.ts" const kv = await Deno.openKv(); @@ -160,8 +170,8 @@ It's important to design your applications such that duplicate messages are handled correctly. You may use queues in combination with -[KV atomic transactions](/deploy/kv/manual/transactions) primitives to ensure -that your queue handler KV updates are performed exactly once per message. See +[KV atomic transactions](/deploy/kv/transactions) primitives to ensure that your +queue handler KV updates are performed exactly once per message. See [Queue API with KV atomic transactions](#queue-api-with-kv-atomic-transactions). ### Automatic retries @@ -230,9 +240,7 @@ there's no need to wait for the underlying task to be completed before returning a response. In these cases, you can offload work to a queue to keep your web application -responsive and send immediate feedback to clients. To see an example of this use -case in action, check out our -[webhook processing example](../tutorials/webhook_processor.md). +responsive and send immediate feedback to clients. ### Scheduling work for the future @@ -242,6 +250,3 @@ to send a notification to a new customer a day after they have placed an order to send them a satisfaction survey. You can schedule a queue message to be delivered 24 hours into the future, and set up a listener to send out the notification at that time. - -To see an example of scheduling a notification to go out in the future, check -out our [notification example](../tutorials/schedule_notification.md). diff --git a/deploy/fulfillment-policy.md b/deploy/fulfillment_policy.md similarity index 100% rename from deploy/fulfillment-policy.md rename to deploy/fulfillment_policy.md diff --git a/deploy/kv/manual/_admonition.tsx b/deploy/kv/_admonition.tsx similarity index 100% rename from deploy/kv/manual/_admonition.tsx rename to deploy/kv/_admonition.tsx diff --git a/deploy/kv/manual/backup.md b/deploy/kv/backup.md similarity index 96% rename from deploy/kv/manual/backup.md rename to deploy/kv/backup.md index f9d30b6fe..1be6043b8 100644 --- a/deploy/kv/manual/backup.md +++ b/deploy/kv/backup.md @@ -2,18 +2,11 @@ title: "Backups" oldUrl: - /kv/manual/backup/ + - /deploy/kv/manual/backup/ --- -:::info Legacy Documentation - -You are viewing legacy documentation for Deno Deploy Classic. We recommend -migrating to the new -Deno Deploy platform. - -::: - -KV databases hosted on Deno Deploy Classic can be continuously backed up to your -own S3-compatible storage buckets. This is in addition to the replication and +KV databases hosted on Deno Deploy can be continuously backed up to your own +S3-compatible storage buckets. This is in addition to the replication and backups that we internally perform for all data stored in hosted Deno KV databases to ensure high availability and data durability. diff --git a/deploy/kv/manual/data_modeling_typescript.md b/deploy/kv/data_modeling_typescript.md similarity index 96% rename from deploy/kv/manual/data_modeling_typescript.md rename to deploy/kv/data_modeling_typescript.md index 55ba977a5..d48093831 100644 --- a/deploy/kv/manual/data_modeling_typescript.md +++ b/deploy/kv/data_modeling_typescript.md @@ -2,16 +2,9 @@ title: "Data Modeling in TypeScript" oldUrl: - /kv/manual/data_modeling_typescript/ + - /deploy/kv/manual/data_modeling_typescript/ --- -:::info Legacy Documentation - -You are viewing legacy documentation for Deno Deploy Classic. We recommend -migrating to the new -Deno Deploy platform. - -::: - In TypeScript applications, it is usually desirable to create strongly-typed, well-documented objects to contain the data that your application operates on. Using [interfaces](https://www.typescriptlang.org/docs/handbook/2/objects.html) diff --git a/deploy/kv/manual/images/backup-add-bucket-to-dash.png b/deploy/kv/images/backup-add-bucket-to-dash.png similarity index 100% rename from deploy/kv/manual/images/backup-add-bucket-to-dash.png rename to deploy/kv/images/backup-add-bucket-to-dash.png diff --git a/deploy/kv/manual/images/backup-bucket-create.png b/deploy/kv/images/backup-bucket-create.png similarity index 100% rename from deploy/kv/manual/images/backup-bucket-create.png rename to deploy/kv/images/backup-bucket-create.png diff --git a/deploy/kv/manual/images/backup-gcs-bucket-create.png b/deploy/kv/images/backup-gcs-bucket-create.png similarity index 100% rename from deploy/kv/manual/images/backup-gcs-bucket-create.png rename to deploy/kv/images/backup-gcs-bucket-create.png diff --git a/deploy/kv/manual/images/backup-gcs-create-hmac.png b/deploy/kv/images/backup-gcs-create-hmac.png similarity index 100% rename from deploy/kv/manual/images/backup-gcs-create-hmac.png rename to deploy/kv/images/backup-gcs-create-hmac.png diff --git a/deploy/kv/manual/images/backup-gcs-grant.png b/deploy/kv/images/backup-gcs-grant.png similarity index 100% rename from deploy/kv/manual/images/backup-gcs-grant.png rename to deploy/kv/images/backup-gcs-grant.png diff --git a/deploy/kv/manual/images/kv-connect.png b/deploy/kv/images/kv-connect.png similarity index 100% rename from deploy/kv/manual/images/kv-connect.png rename to deploy/kv/images/kv-connect.png diff --git a/deploy/kv/manual/index.md b/deploy/kv/index.md similarity index 95% rename from deploy/kv/manual/index.md rename to deploy/kv/index.md index 5df5fb002..c38533eb0 100644 --- a/deploy/kv/manual/index.md +++ b/deploy/kv/index.md @@ -4,15 +4,16 @@ oldUrl: - /kv/ - /kv/manual/ - /runtime/manual/runtime/kv/ + - /deploy/kv/manual/ --- -**Deno KV** is a +Deno KV is a [key-value database](https://en.wikipedia.org/wiki/Key%E2%80%93value_database) built directly into the Deno runtime, available in the [`Deno.Kv` namespace](https://docs.deno.com/api/deno/~/Deno.Kv). It can be used for many kinds of data storage use cases, but excels at storing simple data structures that benefit from very fast reads and writes. Deno KV is available in -the Deno CLI and on [Deno Deploy](./on_deploy). +the Deno CLI and on [Deno Deploy](/deploy/reference/deno_kv/). :::caution @@ -237,15 +238,11 @@ Learn more about [using Deno KV watch here](./operations#watch). ## Production usage -Deno KV is available for use in live applications on [Deno Deploy](./on_deploy). -In production, Deno KV is backed by +Deno KV is available for use in live applications on +[Deno Deploy](/deploy/reference/deno_kv/). In production, Deno KV is backed by [FoundationDB](https://www.foundationdb.org/), the open source key-value store created by Apple. -**No additional configuration is necessary** to run your Deno programs that use -KV on Deploy - a new Deploy database will be provisioned for you when required -by your code. Learn more about Deno KV on Deno Deploy [here](./on_deploy). - ## Testing By default, [`Deno.openKv()`](https://docs.deno.com/api/deno/~/Deno.openKv) diff --git a/deploy/kv/manual/key_expiration.md b/deploy/kv/key_expiration.md similarity index 97% rename from deploy/kv/manual/key_expiration.md rename to deploy/kv/key_expiration.md index c189d7e9a..6ae7db276 100644 --- a/deploy/kv/manual/key_expiration.md +++ b/deploy/kv/key_expiration.md @@ -2,6 +2,7 @@ title: "Key Expiration (TTL for keys)" oldUrl: - /kv/manual/key_expiration/ + - /deploy/kv/manual/key_expiration/ --- diff --git a/deploy/kv/manual/key_space.md b/deploy/kv/key_space.md similarity index 99% rename from deploy/kv/manual/key_space.md rename to deploy/kv/key_space.md index d6dacaa21..565cbf0b4 100644 --- a/deploy/kv/manual/key_space.md +++ b/deploy/kv/key_space.md @@ -3,6 +3,7 @@ title: "Key Space" oldUrl: - /runtime/manual/runtime/kv/key_space/ - /kv/manual/key_space/ + - /deploy/kv/manual/key_space/ --- diff --git a/deploy/kv/manual/node.md b/deploy/kv/node.md similarity index 92% rename from deploy/kv/manual/node.md rename to deploy/kv/node.md index ee1aafab7..8975b08f7 100644 --- a/deploy/kv/manual/node.md +++ b/deploy/kv/node.md @@ -4,14 +4,6 @@ oldUrl: - /kv/manual/node/ --- -:::info Legacy Documentation - -You are viewing legacy documentation for Deno Deploy Classic. We recommend -migrating to the new -Deno Deploy platform. - -::: - Connecting to a Deno KV database in Node.js is supported via our [official client library on npm](https://www.npmjs.com/package/@deno/kv). You can find usage instructions for this option below. diff --git a/deploy/kv/manual/operations.md b/deploy/kv/operations.md similarity index 99% rename from deploy/kv/manual/operations.md rename to deploy/kv/operations.md index de8249ca3..5c64804d9 100644 --- a/deploy/kv/manual/operations.md +++ b/deploy/kv/operations.md @@ -3,6 +3,7 @@ title: "Operations" oldUrl: - /runtime/manual/runtime/kv/operations/ - /kv/manual/operations/ + - /deploy/kv/manual/operations/ --- The Deno KV API provides a set of operations that can be performed on the key diff --git a/deploy/kv/manual/secondary_indexes.md b/deploy/kv/secondary_indexes.md similarity index 99% rename from deploy/kv/manual/secondary_indexes.md rename to deploy/kv/secondary_indexes.md index dcf24a0e4..4796dd409 100644 --- a/deploy/kv/manual/secondary_indexes.md +++ b/deploy/kv/secondary_indexes.md @@ -3,6 +3,7 @@ title: "Secondary Indexes" oldUrl: - /runtime/manual/runtime/kv/secondary_indexes - /kv/manual/secondary_indexes + - /deploy/kv/manual/secondary_indexes/ --- Key-value stores like Deno KV organize data as collections of key-value pairs, diff --git a/deploy/kv/manual/transactions.md b/deploy/kv/transactions.md similarity index 99% rename from deploy/kv/manual/transactions.md rename to deploy/kv/transactions.md index a1e458288..6a16b08ef 100644 --- a/deploy/kv/manual/transactions.md +++ b/deploy/kv/transactions.md @@ -3,6 +3,7 @@ title: "Transactions" oldUrl: - /runtime/manual/runtime/kv/transactions/ - /kv/manual/transactions/ + - /deploy/kv/manual/transactions/ --- The Deno KV store utilizes _optimistic concurrency control transactions_ rather diff --git a/deploy/pricing-and-limits.md b/deploy/pricing_and_limits.md similarity index 89% rename from deploy/pricing-and-limits.md rename to deploy/pricing_and_limits.md index 9afb41d74..c613b4e42 100644 --- a/deploy/pricing-and-limits.md +++ b/deploy/pricing_and_limits.md @@ -10,7 +10,7 @@ of these limits, [please reach out](mailto:deploy@deno.com). No uptime guarantees are provided during the initial public beta for Deno Deploy. Access to the service will be controlled by -[our acceptable use policy](/deploy/acceptable-use-policy). Any user we deem to +[our acceptable use policy](/deploy/acceptable_use_policy). Any user we deem to be in violation of this policy, runs the risk of having their account terminated. @@ -27,7 +27,7 @@ Applications have a maximum memory allocation of 512MB We do not set a limit for the number of upload requests your application may handle as long as your application is within -[our acceptable use policy](/deploy/acceptable-use-policy). +[our acceptable use policy](/deploy/acceptable_use_policy). ## TLS proxying @@ -41,4 +41,4 @@ connection to port 443, please use This restriction is in place because connecting to port 443 without terminating TLS is frequently used in TLS-over-TLS proxies, which are prohibited on Deno Deploy Classic as per -[our acceptable use policy](/deploy/acceptable-use-policy). +[our acceptable use policy](/deploy/acceptable_use_policy). diff --git a/deploy/privacy-policy.md b/deploy/privacy_policy.md similarity index 99% rename from deploy/privacy-policy.md rename to deploy/privacy_policy.md index c72fa4a6c..7bd5e0dec 100644 --- a/deploy/privacy-policy.md +++ b/deploy/privacy_policy.md @@ -1,7 +1,7 @@ --- title: "Privacy Policy" -oldUrl: /deploy/classic/privacy-policy description: "Deno's Privacy Policy" +oldUrl: /deploy/classic/privacy-policy --- **DENO PRIVACY POLICY** 09 September 2024 @@ -32,7 +32,7 @@ products and services constitutes your acknowledgment and/or consent to the practices described in this Policy. This Privacy Policy incorporates -[Deno’s Terms and Conditions](https://docs.deno.com/deploy/terms-and-conditions/) +[Deno’s Terms and Conditions](https://docs.deno.com/deploy/terms_and_conditions/) (the “Terms”). Capitalized terms that are not defined in the Privacy Policy have the meaning given to them in the Terms. diff --git a/deploy/reference/apps.md b/deploy/reference/apps.md index 6fbf02a86..8155293aa 100644 --- a/deploy/reference/apps.md +++ b/deploy/reference/apps.md @@ -31,7 +31,7 @@ detailed build configuration information, see the You can add environment variables during app creation by clicking "Edit Environment Variables". For more details on environment variables, see the -[Environment Variables and Contexts](/deploy/reference/env-vars-and-contexts/) +[Environment Variables and Contexts](/deploy/reference/env_vars_and_contexts/) documentation. ## Renaming an application diff --git a/deploy/reference/builds.md b/deploy/reference/builds.md index 9915d211f..f86c11220 100644 --- a/deploy/reference/builds.md +++ b/deploy/reference/builds.md @@ -108,6 +108,6 @@ than Node.js. Environment variables configured for the "Build" context are available during builds, but variables from "Production" or "Development" contexts are not. -[Learn more about environment variables](./env-vars-and-contexts/). +[Learn more about environment variables](/deploy/reference/env_vars_and_contexts/). Builders have 8 GB of storage available during the build process. diff --git a/deploy/reference/cloud-connections.md b/deploy/reference/cloud_connections.md similarity index 99% rename from deploy/reference/cloud-connections.md rename to deploy/reference/cloud_connections.md index 49b84d3cd..2128fc5f6 100644 --- a/deploy/reference/cloud-connections.md +++ b/deploy/reference/cloud_connections.md @@ -1,6 +1,7 @@ --- title: Cloud Connections description: Learn how to connect Deno Deploy to cloud providers like AWS and Google Cloud Platform without needing to manage credentials. +oldUrl: /deploy/reference/cloud-connections --- Deno Deploy allows you to connect to cloud providers like AWS and Google Cloud @@ -13,7 +14,8 @@ Deno Deploy is an OIDC provider. Every running application of Deno Deploy can be issued short-lived JWT tokens that are signed by Deno Deploy. These tokens contain information about the application, such as the organization and application ids and slugs, the context in which an application is executing, and -the running revision ID. Learn more about [OIDC in Deno Deploy](./oidc). +the running revision ID. Learn more about +[OIDC in Deno Deploy](/deploy/reference/oidc). By sending these tokens to AWS or GCP, one can exchange them for short-lived AWS or GCP credentials that can be used to access cloud resources such as AWS S3 diff --git a/deploy/reference/deno-kv.md b/deploy/reference/deno-kv.md deleted file mode 100644 index 6039bcafe..000000000 --- a/deploy/reference/deno-kv.md +++ /dev/null @@ -1,95 +0,0 @@ ---- -title: Deno KV -description: Use Deno KV in your applications with a database for each timeline ---- - -[Deno KV] is supported in Deno Deploy as a possible database engine of the -[databases] feature, alongside PostgreSQL, and others. Thanks to the new -[timelines] capability of Deno Deploy EA, your apps now have full control over -the Deno KV databases used (one for production, one for each git branch, etc) -ensuring data isolation and security across all their environments. - -Like with the rest of the database engines, your code automatically connects to -the correct database for each environment without requiring timeline detection -or manual database name handling. - -## Getting Started - -### Adding a Database - -Navigate to your organization dashboard and click "Databases" in the navigation -bar. Click "Add Database", choose Deno KV as the database engine, provide a -memorable name and save. - -### Connecting an App to a Database - -Just like with any other [databases] engine, once you have a database instance -you can assign it to your apps. From the database instances list, click "Assign" -next to your database instance and select the app from the dropdown. - -Deno Deploy automatically creates separate databases for each timeline. This -ensures your production data stays safe while developing and testing. You can -monitor the provisioning process and watch the status change to "Connected". If -there are any errors, use the "Fix" button to retry. - -## Using Deno KV in Your Code - -### Zero Configuration Required - -Once you've assigned a database to your app, connecting to it from your code is -simple. Deno Deploy takes care of setting up the connection to the right -database according to environment being queried. - -### Example - -Here's how to connect to Deno KV in your Deno Deploy app: - -```typescript -const kv = await Deno.openKv(); - -Deno.serve(async () => { - const res = await kv.get(["requests"]); - const requests = res.value + 1; - await kv.set(["requests"], requests); - return new Response(JSON.stringify(requests)); -}); -``` - -For detailed information about Deno KV and its features, see the -[Deno KV documentation][Deno KV]. - -## Data distribution - -Deno KV databases are replicated across at least 3 data centers in the primary -region, North Virginia (us-east4). Once a write operation is committed, its -mutations are persistently stored in a quorum of data centers within the primary -region. Cross-region replication is currently not available. - -## Frequently Asked Questions - -**Q: How is data stored during local development?** - -In your local development environment, data is maintained in memory. No database -needs to be created or allocated prior to using the KV APIs in local -development, and your KV code can be consistent between environments. - -**Q: What happens to my data when I remove an app assignment?** - -The data in the databases remain on the servers. To recover or delete the data -in these databases, please [contact Deno support](../support). - -**Q: Can I use the same database for multiple environments?** - -This is currently not supported. If you are interested in this use case, please -[contact Deno support](../support). - -**Q: How do I delete a database instance?** - -Click "Delete" on the Deno KV entry in the database instances list. Unlike with -the rest of database engines, this action will delete all the existing Deno KV -databases and their data. Please make sure to backup your data before -proceeding. - -[Deno KV]: /kv/ -[databases]: ./databases.md -[timelines]: ./timelines.md diff --git a/deploy/reference/deno_kv.md b/deploy/reference/deno_kv.md new file mode 100644 index 000000000..5b9b40e85 --- /dev/null +++ b/deploy/reference/deno_kv.md @@ -0,0 +1,89 @@ +--- +title: Deno KV +description: Use Deno KV in your applications with a dedicated database per timeline +oldUrl: /deploy/reference/deno-kv/ +--- + +[Deno KV] is a Key Value database supported in Deno Deploy as a database engine +option in the [databases] feature. Thanks to the new [timelines] capability in +Deno Deploy Early Access (EA), your apps have full control over the Deno KV +databases they use (for example, one for production and one for each Git +branch), ensuring data isolation and security across environments. + +As with other database engines, your code automatically connects to the correct +database for each environment—no timeline detection or manual database naming +required. + +## Getting Started + +### Add a KV database + +Navigate to your organization dashboard and click "Databases" in the navigation +bar. Click "Provision Database", choose Deno KV as the database engine, provide +a memorable name, and save. + +### Connect an app to a KV database + +Once you have a database instance you can assign it to an app. From the database +instances list, click "Assign" next to the database you wish to use and select +the app from the dropdown. + +Deno Deploy automatically creates a separate database for each timeline. This +keeps your production data safe while you develop and test. You can monitor +provisioning and watch the status change to "Connected." If any errors occur, +click "Fix" to retry. + +## Using Deno KV in Your Code + +Once you've assigned a database to your app, connecting from code is simple. +Deno Deploy sets up the connection to the correct database based on the current +environment. + +### Example + +Here's how to connect to Deno KV in your Deno Deploy app: + +```typescript +const kv = await Deno.openKv(); + +Deno.serve(async () => { + const res = await kv.get(["requests"]); + const requests = res.value + 1; + await kv.set(["requests"], requests); + return new Response(JSON.stringify(requests)); +}); +``` + +For detailed information about Deno KV and its features, see the +[Deno KV documentation][Deno KV]. + +## Un-assigning a KV database + +If you remove a database assignment from an app, the app will no longer be able +to access that database. However, the database itself and its data will remain +intact and can be reassigned to another app or the same app at a later time. +Hover over the name of the assigned app in the databases list and click the +'remove app assignment' icon to un-assign it. + +## Data Distribution + +Deno KV databases are replicated across at least three data centers in the +primary region, Northern Virginia (us-east4). Once a write operation is +committed, its mutations are durably stored in a quorum of data centers within +the primary region. Cross-region replication is not currently available. + +## Data storage + +In local development, data is kept in memory. You do not need to create or +allocate a database before using the KV APIs locally, and your KV code remains +consistent across environments. + +## Deleting a database instance + +Click "Delete" on the Deno KV entry in the database instances list. Unlike other +database engines, this action deletes all existing Deno KV databases and their +data. Be sure to back up your data before proceeding. + +[Deno KV]: /deploy/kv/ +[databases]: /deploy/reference/databases/ +[timelines]: /deploy/reference/timelines/ diff --git a/deploy/reference/env-vars-and-contexts.md b/deploy/reference/env_vars_and_contexts.md similarity index 98% rename from deploy/reference/env-vars-and-contexts.md rename to deploy/reference/env_vars_and_contexts.md index f1b4d7d08..674eb0170 100644 --- a/deploy/reference/env-vars-and-contexts.md +++ b/deploy/reference/env_vars_and_contexts.md @@ -1,6 +1,7 @@ --- title: Environment Variables and Contexts description: "Guide to managing environment variables and contexts in Deno Deploy, including variable types, creation, editing, and accessing them in your code." +oldUrl: /deploy/reference/env-vars-and-contexts/ --- Environment variables in Deno Deploy allow you to configure your application @@ -125,7 +126,7 @@ Environment variables have the following limits: - `OTEL_` - Environment variable values can be at most 16 KB (16,384 bytes) long. - Environment variable keys can not be any of these keys. Instead, use - [Cloud Connections](/deploy/reference/cloud-connections) + [Cloud Connections](/deploy/reference/cloud_connections) - `AWS_ROLE_ARN` - `AWS_WEB_IDENTITY_TOKEN_FILE` - `GCP_WORKLOAD_PROVIDER_ID` diff --git a/deploy/reference/frameworks.md b/deploy/reference/frameworks.md index 6bb843b72..aa4da5535 100644 --- a/deploy/reference/frameworks.md +++ b/deploy/reference/frameworks.md @@ -18,7 +18,7 @@ the build settings. Feel like a framework is missing? Let us know in the [Deno Deploy Discord channel](https://discord.gg/deno) or -[contact Deno support](../support). +[contact Deno support](/deploy/support/). ## Supported frameworks diff --git a/deploy/reference/oidc.md b/deploy/reference/oidc.md index 68764237e..6328e51ce 100644 --- a/deploy/reference/oidc.md +++ b/deploy/reference/oidc.md @@ -16,10 +16,10 @@ NPM, and others. :::tip Do you want to use OIDC tokens to authenticate with AWS or Google Cloud? Use the -[Cloud Connections](./cloud-connections) feature instead of manually configuring -OIDC authentication. Cloud Connections handle the entire configuration for you, -including setting up trust relationships and permissions. OIDC is used under the -hood. +[Cloud Connections](/deploy/reference/cloud_connections) feature instead of +manually configuring OIDC authentication. Cloud Connections handle the entire +configuration for you, including setting up trust relationships and permissions. +OIDC is used under the hood. ::: @@ -30,7 +30,7 @@ function from the [`@deno/oidc` module on JSR](http://jsr.io/@deno/oidc). First, install `@deno/oidc` as a dependency of your application: -``` +```sh deno add jsr:@deno/oidc ``` diff --git a/deploy/reference/prisma-postgres.md b/deploy/reference/prisma_postgres.md similarity index 99% rename from deploy/reference/prisma-postgres.md rename to deploy/reference/prisma_postgres.md index b01a30c08..d46703b23 100644 --- a/deploy/reference/prisma-postgres.md +++ b/deploy/reference/prisma_postgres.md @@ -1,6 +1,7 @@ --- title: Prisma Postgres description: Provision and manage Prisma Postgres databases for your Deno Deploy applications. +oldUrl: /deploy/reference/prisma-postgres/ --- Prisma Postgres is a serverless PostgreSQL database that is instantly responsive diff --git a/deploy/reference/timelines.md b/deploy/reference/timelines.md index 639b7e195..465c38a13 100644 --- a/deploy/reference/timelines.md +++ b/deploy/reference/timelines.md @@ -9,9 +9,9 @@ timeline. One of the revisions (usually the most recent one) is the "active" revision, which is the one that is currently serving traffic. The active revision receives traffic on all URLs that are assigned to the timeline. -Each timeline is associated with a [context](./env-vars-and-contexts.md), which -determines which environment variables are available to the code running in that -timeline. +Each timeline is associated with a +[context](/deploy/reference/env_vars_and_contexts/), which determines which +environment variables are available to the code running in that timeline. By default, there are multiple timelines set up for each application: diff --git a/deploy/terms-and-conditions.md b/deploy/terms_and_conditions.md similarity index 99% rename from deploy/terms-and-conditions.md rename to deploy/terms_and_conditions.md index 0bdd2fb5b..5ed82613c 100644 --- a/deploy/terms-and-conditions.md +++ b/deploy/terms_and_conditions.md @@ -1,7 +1,7 @@ --- title: "Terms and Conditions" description: "Deno Terms and Conditions" -oldUrl: "/deploy/classic/terms-and-conditions" +oldUrl: /deploy/classic/terms-and-conditions --- **DENO TERMS AND CONDITIONS** 09 September 2024 @@ -16,7 +16,7 @@ platform (the “Platform”) via the following websites: - Deno Deploy ([https://deno.com/deploy](https://deno.com/deploy)) - Deno Deploy Classic - ([https://deno.com/deploy/classic](https://deno.com/deploy/classic)) + ([https://deno.com/deploy/classic/](https://deno.com/deploy/classic)) - Deno Subhosting ([https://deno.com/subhosting](https://deno.com/subhosting)) By accessing or using the Site or any other digital property that links to these diff --git a/deploy/usage.md b/deploy/usage.md index cbc71a79e..ded51069b 100644 --- a/deploy/usage.md +++ b/deploy/usage.md @@ -25,8 +25,8 @@ You’ll be able to review and control these in the The Deno company is now using Deno Deploy to host our own websites and is putting significant efforts into ensuring service reliability. -- [Deno Deploy Acceptable Use Policy](/deploy/acceptable-use-policy/) -- [Deno Deploy Terms and Conditions](/deploy/terms-and-conditions/) +- [Deno Deploy Acceptable Use Policy](/deploy/acceptable_use_policy/) +- [Deno Deploy Terms and Conditions](/deploy/terms_and_conditions/) Deno reserves the right to terminate any user, organization, or app that we find to be in violation of the terms and conditions. diff --git a/examples/scripts/queues.ts b/examples/scripts/queues.ts index 00db3d8cb..ef52928da 100644 --- a/examples/scripts/queues.ts +++ b/examples/scripts/queues.ts @@ -3,7 +3,7 @@ * @difficulty intermediate * @tags cli, deploy * @run --unstable-kv - * @resource {https://docs.deno.com/deploy/kv/manual/queue_overview} Deno Queues user guide + * @resource {https://docs.deno.com/deploy/class9c/queues/} Deno Queues user guide * @resource {https://docs.deno.com/api/deno/~/Deno.Kv} Deno Queues Runtime API docs * @group Unstable APIs * diff --git a/examples/tutorials/deno_deploy.md b/examples/tutorials/deno_deploy.md index 95ca6b5b0..0e78d221c 100644 --- a/examples/tutorials/deno_deploy.md +++ b/examples/tutorials/deno_deploy.md @@ -156,5 +156,5 @@ Deno Deploy provides comprehensive observability tools: Astro, and other frameworks 3. Learn about [caching strategies](/deploy/reference/caching/) to improve performance -4. Set up different [environments](/deploy/reference/env-vars-and-contexts/) for +4. Set up different [environments](/deploy/reference/env_vars_and_contexts/) for development and production diff --git a/runtime/_data.ts b/runtime/_data.ts index 826f2e19d..c79a27cdd 100644 --- a/runtime/_data.ts +++ b/runtime/_data.ts @@ -227,11 +227,11 @@ export const sidebar = [ ], }, { - title: "TS Config Migration", + title: "Configuring TypeScript", href: "/runtime/reference/ts_config_migration/", }, { - title: "Continuous Integration", + title: "Continuous integration", href: "/runtime/reference/continuous_integration/", }, { @@ -255,7 +255,7 @@ export const sidebar = [ href: "/runtime/reference/bundling/", }, { - title: "Lint Plugins", + title: "Lint plugins", href: "/runtime/reference/lint_plugins/", }, { @@ -263,7 +263,7 @@ export const sidebar = [ href: "/runtime/reference/wasm/", }, { - title: "Migration Guide", + title: "Migration guide", href: "/runtime/reference/migration_guide/", }, { diff --git a/runtime/reference/cli/deploy.md b/runtime/reference/cli/deploy.md index c276a5f5d..524c76b17 100644 --- a/runtime/reference/cli/deploy.md +++ b/runtime/reference/cli/deploy.md @@ -154,12 +154,12 @@ deno deploy logs --org my-org --app my-app --start "2024-01-01T00:00:00Z" ### Configure cloud connections The `deploy` command includes tools to help you configure integrations for use -as [Cloud Connections](/deploy/reference/cloud-connections/) in your +as [Cloud Connections](/deploy/reference/cloud_connections/) in your applications. #### AWS integration setup -[Configure AWS integration](/deploy/reference/cloud-connections/#aws%3A-easy-setup-with-deno-deploy-setup-aws) +[Configure AWS integration](/deploy/reference/cloud_connections/#aws%3A-easy-setup-with-deno-deploy-setup-aws) for use as a Cloud Connection in your application. ```bash @@ -178,7 +178,7 @@ deno deploy setup-aws --org my-org --app my-app ### Google Cloud Platform integration setup -[Configure Google Cloud Platform integration](/deploy/reference/cloud-connections/#setting-up-gcp) +[Configure Google Cloud Platform integration](/deploy/reference/cloud_connections/#setting-up-gcp) for use as a Cloud Connection in your application. ```bash diff --git a/styleguide/components.mdx b/styleguide/components.mdx index e4f10b8d5..2a8ebc8ab 100644 --- a/styleguide/components.mdx +++ b/styleguide/components.mdx @@ -148,7 +148,7 @@ A component for displaying content in equal width columns

Column 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

- Queues docs + Queues docs
``` @@ -166,6 +166,6 @@ A component for displaying content in equal width columns

Column 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

- Queues docs + Queues docs