diff --git a/src/content/docs/en/guides/astro-db.mdx b/src/content/docs/en/guides/astro-db.mdx index 4e1740ee4bcc4..f943163b25d77 100644 --- a/src/content/docs/en/guides/astro-db.mdx +++ b/src/content/docs/en/guides/astro-db.mdx @@ -10,7 +10,7 @@ import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; import { Steps } from '@astrojs/starlight/components'; -Astro DB is a fully-managed SQL database designed exclusively for Astro. Develop locally or connect to a hosted database managed on our [Astro Studio](/en/recipes/studio/) platform. +Astro DB is a fully-managed SQL database designed exclusively for Astro. Develop locally or connect to a hosted database managed on our [Astro Studio](#astro-studio) platform. ## Installation @@ -339,9 +339,134 @@ See the [Drizzle `db.batch()`](https://orm.drizzle.team/docs/batch-api) docs for ## Astro Studio -Astro DB can [connect to the Astro Studio platform](/en/recipes/studio/) to quickly add a hosted database to your project. You can view, manage and deploy new hosted databases all from the Astro Studio dashboard. +Astro DB can connect to the Astro Studio platform to quickly add a hosted database to your project. You can view, manage and deploy new hosted databases all from the Astro Studio dashboard. -To create a new project, you can use a [ready-made template](https://studio.astro.build) or visit the [Astro Studio guide](/en/recipes/studio/#create-a-new-studio-project). +The [Astro Studio web portal](http://studio.astro.build) allows you to connect to and manage your remote hosted Astro DB databases through a web interface or using [CLI commands](/en/reference/cli-reference/#astro-studio-cli). + +From your Studio dashboard, you have access to account management, help articles and a support message console. + +Visit [Astro Studio](http://studio.astro.build) to sign up or log in. + + +### Create a new Studio project + + +There are two ways to create a project in Astro Studio: + +1. [**Use the Astro Studio web UI**](https://studio.astro.build) to create from a new or existing GitHub repository. + + To get started, click the "create project" button in the header and follow the instructions. Astro Studio will connect to your GitHub repository and create a new hosted database for your project. + +2. **Use the Astro Studio CLI** to create from any local Astro project. You can run the following commands to get started: + + + + ```shell + # Log in to Astro Studio with your GitHub account + npx astro login + + # Link to a new project by following the prompts + npx astro link + + # (Optional) Push your local db configuration to the remote database + npx astro db push + ``` + + + ```shell + # Log in to Astro Studio with your GitHub account + pnpm astro login + + # Link to a new project by following the prompts + pnpm astro link + + # (Optional) Push your local db configuration to the remote database + pnpm astro db push + ``` + + + ```shell + # Log in to Astro Studio with your GitHub account + yarn astro login + + # Link to a new project by following the prompts + yarn astro link + + # (Optional) Push your local db configuration to the remote database + yarn astro db push + ``` + + + + Once you are logged in and linked successfully, you can run all Astro DB commands to manage your remote database. + + See [the Astro DB CLI reference](/en/guides/integrations-guide/db/#astro-db-cli-reference) for all available commands. + + +### Deploy with a Studio connection + + +You can deploy your Astro DB project with a live connection to your Studio database. This is possible with any deployment platform using static builds or an [SSR adapter](/en/guides/server-side-rendering/). + +First, configure your build command to connect with Studio using the `--remote` flag. This example applies the flag to a `"build"` script in your project's `package.json`. If your deployment platform accepts a build command, ensure this is set to `npm run build`. + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + +#### Create a Studio app token + + +You need to create an app token to access your Studio database from a production deploy. You can create an app token from your Studio project dashboard by navigating to the **Settings** tab and selecting **Tokens**. + +Copy the generated token and apply as an environment variable / environment secret in your deployment platform using the name `ASTRO_STUDIO_APP_TOKEN`. + + +### Set up the GitHub CI Action + + +You can automatically push schema changes to your Studio database with the Studio CI action. This verifies changes can be made safely, and keeps your configuration up-to-date whenever you merge to `main`. + +[Follow GitHub's documentation](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) to configure a new secret in your repository with the name `ASTRO_STUDIO_APP_TOKEN` and your Studio app token as the value for the secret. + +Once your secret is configured, create a new GitHub Actions workflow file in your project's `.github/workflows` directory to checkout the repository and install Node.js as steps, and use the `withastro/action-studio` action to sync schema changes. + +The action will run `astro db verify` on all [event triggers](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows) to ensure schema changes can be applied safely. If you add the **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)** trigger specifically, the action will push those changes to your Studio database. + +This example GitHub Action `_studio.yml` pushes changes whenever the `main` branch is updated: + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` ### Pushing table schemas @@ -520,7 +645,7 @@ To use a remote connection, you will need an app token to authenticate with Stud -When you're ready to deploy, see our [Deploy with a Studio Connection guide](/en/recipes/studio/#deploy-with-a-studio-connection). +When you're ready to deploy, see our [Deploy with a Studio Connection guide](#deploy-with-a-studio-connection). @@ -604,7 +729,7 @@ Using a database file is an advanced feature, and care should be taken when depl Additionally, this method will not work in serverless deployments, as the file system is not persisted in those environments. -For a fully managed solution, [connect to databases hosted on the Astro Studio platform](/en/recipes/studio/) instead. +For a fully managed solution, [connect to databases hosted on the Astro Studio platform](#astro-studio) instead. ::: If you are comfortable with the risks, and can manage deployment yourself, you can use a database file instead of connecting to Studio. diff --git a/src/content/docs/en/guides/integrations-guide/db.mdx b/src/content/docs/en/guides/integrations-guide/db.mdx index e059ff8876bcf..8e8ddf605aa04 100644 --- a/src/content/docs/en/guides/integrations-guide/db.mdx +++ b/src/content/docs/en/guides/integrations-guide/db.mdx @@ -12,7 +12,7 @@ import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB is a fully-managed SQL database designed for the Astro ecosystem: develop locally in Astro and deploy from your [Astro Studio dashboard](/en/recipes/studio/). +Astro DB is a fully-managed SQL database designed for the Astro ecosystem: develop locally in Astro and deploy from your [Astro Studio dashboard](/en/guides/astro-db/#astro-studio). With Astro DB you have a powerful, local, type-safe tool to query and model content as a relational database. View, manage and deploy your hosted remote data through your interactive Studio dashboard. @@ -196,7 +196,7 @@ Each foreign key configuration object accepts the following properties: ## Astro DB CLI reference -Astro DB includes a set of CLI commands to interact with your hosted project database and your [Astro Studio](/en/recipes/studio/) account. +Astro DB includes a set of CLI commands to interact with your hosted project database and your [Astro Studio](/en/guides/astro-db/#astro-studio) account. These commands are called automatically when using a GitHub CI action, and can be called manually using the `astro db` CLI. diff --git a/src/content/docs/en/recipes/studio.mdx b/src/content/docs/en/recipes/studio.mdx deleted file mode 100644 index fdbcf73d395ca..0000000000000 --- a/src/content/docs/en/recipes/studio.mdx +++ /dev/null @@ -1,127 +0,0 @@ ---- -title: 'Astro Studio' -description: An interactive dashboard for managing Astro DB. -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; -import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; - -The [Astro Studio web portal](http://studio.astro.build) allows you to connect to and manage your remote hosted [Astro DB databases](/en/guides/astro-db/) through a web interface or using [CLI commands](/en/reference/cli-reference/#astro-studio-cli). - -From your Studio dashboard, you have access to account management, help articles and a support message console. - -Visit [Astro Studio](http://studio.astro.build) to sign up or log in. - -## Create a new Studio project - -There are two ways to create a project in Astro Studio: - -1. [**Use the Astro Studio web UI**](https://studio.astro.build) to create from a new or existing GitHub repository. - - To get started, click the "create project" button in the header and follow the instructions. Astro Studio will connect to your GitHub repository and create a new hosted database for your project. - -2. **Use the Astro Studio CLI** to create from any local Astro project. You can run the following commands to get started: - - - - ```shell - # Log in to Astro Studio with your GitHub account - npx astro login - - # Link to a new project by following the prompts - npx astro link - - # (Optional) Push your local db configuration to the remote database - npx astro db push - ``` - - - ```shell - # Log in to Astro Studio with your GitHub account - pnpm astro login - - # Link to a new project by following the prompts - pnpm astro link - - # (Optional) Push your local db configuration to the remote database - pnpm astro db push - ``` - - - ```shell - # Log in to Astro Studio with your GitHub account - yarn astro login - - # Link to a new project by following the prompts - yarn astro link - - # (Optional) Push your local db configuration to the remote database - yarn astro db push - ``` - - - - Once you are logged in and linked successfully, you can run all Astro DB commands to manage your remote database. - - See [the Astro DB CLI reference](/en/guides/integrations-guide/db/#astro-db-cli-reference) for all available commands. - -## Deploy with a Studio connection - -You can deploy your Astro DB project with a live connection to your Studio database. This is possible with any deployment platform using static builds or an [SSR adapter](/en/guides/server-side-rendering/). - -First, configure your build command to connect with Studio using the `--remote` flag. This example applies the flag to a `"build"` script in your project's `package.json`. If your deployment platform accepts a build command, ensure this is set to `npm run build`. - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### Create a Studio app token - -You need to create an app token to access your Studio database from a production deploy. You can create an app token from your Studio project dashboard by navigating to the **Settings** tab and selecting **Tokens**. - -Copy the generated token and apply as an environment variable / environment secret in your deployment platform using the name `ASTRO_STUDIO_APP_TOKEN`. - -## Set up the GitHub CI Action - -You can automatically push schema changes to your Studio database with the Studio CI action. This verifies changes can be made safely, and keeps your configuration up-to-date whenever you merge to `main`. - -[Follow GitHub's documentation](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) to configure a new secret in your repository with the name `ASTRO_STUDIO_APP_TOKEN` and your Studio app token as the value for the secret. - -Once your secret is configured, create a new GitHub Actions workflow file in your project's `.github/workflows` directory to checkout the repository and install Node.js as steps, and use the `withastro/action-studio` action to sync schema changes. - -The action will run `astro db verify` on all [event triggers](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows) to ensure schema changes can be applied safely. If you add the **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)** trigger specifically, the action will push those changes to your Studio database. - -This example GitHub Action `_studio.yml` pushes changes whenever the `main` branch is updated: - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` diff --git a/src/content/docs/es/guides/astro-db.mdx b/src/content/docs/es/guides/astro-db.mdx index d7eb291237940..d9963e7ac261b 100644 --- a/src/content/docs/es/guides/astro-db.mdx +++ b/src/content/docs/es/guides/astro-db.mdx @@ -9,7 +9,7 @@ import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; -Astro DB es una base de datos SQL de gestión integral diseñada exclusivamente para Astro. Desarrolla localmente o conéctate a una base de datos alojada gestionada en nuestra plataforma [Astro Studio](/es/recipes/studio/). +Astro DB es una base de datos SQL de gestión integral diseñada exclusivamente para Astro. Desarrolla localmente o conéctate a una base de datos alojada gestionada en nuestra plataforma [Astro Studio](#astro-studio). ## Instalación @@ -335,13 +335,80 @@ Consulta la documentación de [Drizzle `db.batch()`](https://orm.drizzle.team/do ## Astro Studio -Astro DB puede [conectarse a la plataforma Astro Studio](/es/recipes/studio/) para agregar rápidamente una base de datos alojada a tu proyecto. Puedes ver, gestionar y implementar nuevas bases de datos alojadas, todo desde el portal web de Astro Studio. +Astro DB puede conectarse a la plataforma Astro Studio para agregar rápidamente una base de datos alojada a tu proyecto. Puedes ver, gestionar y implementar nuevas bases de datos alojadas, todo desde el portal web de Astro Studio. -Hay dos formas de crear un proyecto en Astro Studio: -1. A través del [CLI de Astro Studio](/es/reference/cli-reference/#cli-de-astro-studio) utilizando `astro link` -2. A través de la [interfaz de usuario web de Astro Studio](https://studio.astro.build) +El [portal web de Astro Studio](http://studio.astro.build/) te permite conectar y gestionar tus bases de datos de Astro DB alojadas de forma remota a través de una interfaz web o mediante [comandos de CLI](/es/reference/cli-reference/#cli-de-astro-studio). -Para crear una nueva base de datos en la interfaz web de Astro Studio, haz clic en el botón "crear proyecto" en el encabezado y sigue las instrucciones presentadas. Astro Studio te guiará a través de los pasos necesarios, y al final del proceso tendrás una base de datos alojada configurada para tu proyecto. +Desde tu panel de Studio, tienes acceso a la gestión de cuentas, artículos de ayuda y una consola de mensajes de soporte. + +Visita [Astro Studio](http://studio.astro.build) para registrarte o iniciar sesión. + + +### Despliega con una conexión a Studio + + +Puedes desplegar tu proyecto de Astro DB con una conexión en vivo a tu base de datos de Studio. Esto es posible con cualquier plataforma de despliegue que utilice compilaciones estáticas o un [adaptador SSR](/es/guides/server-side-rendering/). + +Primero, configura tu comando de compilación para conectar con Studio utilizando el indicador `--remote`. Este ejemplo aplica el indicador a un script `"build"` en el archivo `package.json` de tu proyecto. Si tu plataforma de despliegue acepta un comando de compilación, asegúrate de configurarlo como `npm run build`. + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + + +#### Crear un token de aplicación para Studio + + +Necesitas crear un token de aplicación para acceder a tu base de datos de Studio desde un despliegue de producción. Puedes crear un token de aplicación desde el panel de tu proyecto de Studio navegando a la pestaña **Settings** y seleccionando **Tokens**. + +Copia el token generado y aplícalo como una variable de entorno / secreto de entorno en tu plataforma de despliegue usando el nombre `ASTRO_STUDIO_APP_TOKEN`. + + +### Configurar la acción de CI de GitHub + + +Puedes enviar automáticamente los cambios de esquema a tu base de datos de Studio con la acción de CI de Studio. Esto verifica que los cambios se puedan realizar de manera segura y mantiene tu configuración actualizada cada vez que fusionas a `main`. + +[Sigue la documentación de GitHub](https://docs.github.com/es/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) para configurar un nuevo secreto en tu repositorio con el nombre `ASTRO_STUDIO_APP_TOKEN` y tu token de aplicación de Studio como el valor del secreto. + +Una vez configurado tu secreto, crea un nuevo archivo de flujo de trabajo de GitHub Actions en el directorio `.github/workflows` de tu proyecto para verificar el repositorio e instala Node.js siguiendo los pasos, y usa la acción `withastro/action-studio` para sincronizar los cambios de esquema. + +La acción ejecutará `astro db verify` en todos los [activadores de eventos](https://docs.github.com/es/actions/using-workflows/events-that-trigger-workflows) para asegurar que los cambios de esquema se puedan aplicar de manera segura. Si agregas específicamente el activador **[push](https://docs.github.com/es/actions/using-workflows/events-that-trigger-workflows#push)**, la acción enviará esos cambios a tu base de datos de Studio. + +Este ejemplo de acción de GitHub `_studio.yml` envía cambios siempre que se actualice la rama `main`: + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` ### Subiendo esquemas de tablas @@ -425,7 +492,7 @@ Para usar una conexión remota, necesitarás un token de aplicación para autent -Cuando estés listo para implementar, consulta nuestra [guía de Implementación con una Conexión a Studio](/es/recipes/studio/#despliega-con-una-conexión-a-studio). +Cuando estés listo para implementar, consulta nuestra [guía de Implementación con una Conexión a Studio](#despliega-con-una-conexión-a-studio). diff --git a/src/content/docs/es/guides/integrations-guide/db.mdx b/src/content/docs/es/guides/integrations-guide/db.mdx index 71e20b775d5a2..ac4422bb54caa 100644 --- a/src/content/docs/es/guides/integrations-guide/db.mdx +++ b/src/content/docs/es/guides/integrations-guide/db.mdx @@ -12,7 +12,7 @@ import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB es una base de datos SQL completamente administrada diseñada para el ecosistema de Astro: desarrolla localmente en Astro y despliega desde tu [panel de Astro Studio](/es/recipes/studio/). +Astro DB es una base de datos SQL completamente administrada diseñada para el ecosistema de Astro: desarrolla localmente en Astro y despliega desde tu [panel de Astro Studio](/en/guides/astro-db/#astro-studio). Con Astro DB tienes una herramienta potente, local y segura para consultar y modelar contenido como una base de datos relacional. Visualiza, administra y despliega tus datos remotos alojados a través de tu panel interactivo de Studio. @@ -196,7 +196,7 @@ Cada objeto de configuración de clave foránea acepta las siguientes propiedade ## Referencia de la CLI de Astro DB -Astro DB incluye un conjunto de comandos CLI para interactuar con tu base de datos de proyecto alojada y tu cuenta de [Astro Studio](/es/recipes/studio/). +Astro DB incluye un conjunto de comandos CLI para interactuar con tu base de datos de proyecto alojada y tu cuenta de [Astro Studio](/es/guides/astro-db/#astro-studio). Estos comandos se ejecutan automáticamente al usar una acción de GitHub CI, y se pueden llamar manualmente utilizando el CLI `astro db`. diff --git a/src/content/docs/es/recipes/studio.mdx b/src/content/docs/es/recipes/studio.mdx deleted file mode 100644 index 19a68d17627bd..0000000000000 --- a/src/content/docs/es/recipes/studio.mdx +++ /dev/null @@ -1,74 +0,0 @@ ---- -title: 'Astro Studio' -description: Un panel interactivo para gestionar Astro DB. -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; - - -El [portal web de Astro Studio](http://studio.astro.build) te permite conectar y gestionar tus [bases de datos de Astro DB](/es/guides/astro-db/) alojadas de forma remota a través de una interfaz web o mediante [comandos de CLI](/es/reference/cli-reference/#cli-de-astro-studio). - -Desde tu panel de Studio, tienes acceso a la gestión de cuentas, artículos de ayuda y una consola de mensajes de soporte. - -Visita [Astro Studio](http://studio.astro.build) para registrarte o iniciar sesión. - -## Despliega con una conexión a Studio - -Puedes desplegar tu proyecto de Astro DB con una conexión en vivo a tu base de datos de Studio. Esto es posible con cualquier plataforma de despliegue que utilice compilaciones estáticas o un [adaptador SSR](/es/guides/server-side-rendering/). - -Primero, configura tu comando de compilación para conectar con Studio utilizando el indicador `--remote`. Este ejemplo aplica el indicador a un script `"build"` en el archivo `package.json` de tu proyecto. Si tu plataforma de despliegue acepta un comando de compilación, asegúrate de configurarlo como `npm run build`. - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### Crear un token de aplicación para Studio - -Necesitas crear un token de aplicación para acceder a tu base de datos de Studio desde un despliegue de producción. Puedes crear un token de aplicación desde el panel de tu proyecto de Studio navegando a la pestaña **Settings** y seleccionando **Tokens**. - -Copia el token generado y aplícalo como una variable de entorno / secreto de entorno en tu plataforma de despliegue usando el nombre `ASTRO_STUDIO_APP_TOKEN`. - -## Configurar la acción de CI de GitHub - -Puedes enviar automáticamente los cambios de esquema a tu base de datos de Studio con la acción de CI de Studio. Esto verifica que los cambios se puedan realizar de manera segura y mantiene tu configuración actualizada cada vez que fusionas a `main`. - -[Sigue la documentación de GitHub](https://docs.github.com/es/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) para configurar un nuevo secreto en tu repositorio con el nombre `ASTRO_STUDIO_APP_TOKEN` y tu token de aplicación de Studio como el valor del secreto. - -Una vez configurado tu secreto, crea un nuevo archivo de flujo de trabajo de GitHub Actions en el directorio `.github/workflows` de tu proyecto para verificar el repositorio e instala Node.js siguiendo los pasos, y usa la acción `withastro/action-studio` para sincronizar los cambios de esquema. - -La acción ejecutará `astro db verify` en todos los [activadores de eventos](https://docs.github.com/es/actions/using-workflows/events-that-trigger-workflows) para asegurar que los cambios de esquema se puedan aplicar de manera segura. Si agregas específicamente el activador **[push](https://docs.github.com/es/actions/using-workflows/events-that-trigger-workflows#push)**, la acción enviará esos cambios a tu base de datos de Studio. - -Este ejemplo de acción de GitHub `_studio.yml` envía cambios siempre que se actualice la rama `main`: - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` diff --git a/src/content/docs/fr/guides/astro-db.mdx b/src/content/docs/fr/guides/astro-db.mdx index a34987e81a5a7..0eff57ac55d82 100644 --- a/src/content/docs/fr/guides/astro-db.mdx +++ b/src/content/docs/fr/guides/astro-db.mdx @@ -10,7 +10,7 @@ import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; import { Steps } from '@astrojs/starlight/components'; -Astro DB est une base de données SQL entièrement gérée, conçue exclusivement pour Astro. Développez localement ou connectez-vous à une base de données hébergée et gérée sur notre plateforme [Astro Studio](/fr/recipes/studio/). +Astro DB est une base de données SQL entièrement gérée, conçue exclusivement pour Astro. Développez localement ou connectez-vous à une base de données hébergée et gérée sur notre plateforme [Astro Studio](#astro-studio). ## Installation @@ -339,12 +339,137 @@ export default async function () { ## Astro Studio -Astro DB peut [se connecter à la plateforme Astro Studio](/fr/recipes/studio/) pour ajouter rapidement une base de données hébergée à votre projet. Vous pouvez visualiser, gérer et déployer de nouvelles bases de données hébergées à partir du portail web Astro Studio. +Astro DB peut se connecter à la plateforme Astro Studio pour ajouter rapidement une base de données hébergée à votre projet. Vous pouvez visualiser, gérer et déployer de nouvelles bases de données hébergées à partir du portail web Astro Studio. -Pour créer un nouveau projet, vous pouvez utiliser un [modèle prêt à l'emploi](https://studio.astro.build) ou consulter le [guide Astro Studio](/fr/recipes/studio/#créer-un-nouveau-projet-studio). +Le [portail web Astro Studio](http://studio.astro.build) vous permet de vous connecter et de gérer vos [bases de données Astro DB](/fr/guides/astro-db/) hébergées à distance via une interface web ou en utilisant des [commandes CLI](/fr/reference/cli-reference/#astro-studio-cli). + +Depuis votre tableau de bord Studio, vous avez accès à la gestion de votre compte, à des articles d'aide et à une console de messages d'assistance. + +Visitez [Astro Studio](http://studio.astro.build) pour vous inscrire ou vous connecter. + + +### Créer un nouveau projet Studio + + +Il existe deux façons de créer un projet dans Astro Studio : + +1. [**Utiliser l'interface web Astro Studio**](https://studio.astro.build) pour créer à partir d'un dépôt GitHub nouveau ou existant. + +Pour commencer, cliquez sur le bouton "créer un projet" dans l'en-tête et suivez les instructions. Astro Studio se connectera à votre dépôt GitHub et créera une nouvelle base de données hébergée pour votre projet. + +2. **Utilisez le CLI** d'Astro Studio pour créer à partir de n'importe quel projet Astro local. Vous pouvez exécuter les commandes suivantes pour commencer : + + + + ```shell + # Connectez-vous à Astro Studio avec votre compte GitHub + npx astro login + + # Créez un lien vers un nouveau projet en suivant les instructions. + npx astro link + + # (Facultatif) Transférer la configuration de la base de données locale vers la base de données distante. + npx astro db push + ``` + + + ```shell + # Connectez-vous à Astro Studio avec votre compte GitHub + pnpm astro login + + # Créez un lien vers un nouveau projet en suivant les instructions. + pnpm astro link + + # (Facultatif) Transférer la configuration de la base de données locale vers la base de données distante. + pnpm astro db push + ``` + + + ```shell + # Connectez-vous à Astro Studio avec votre compte GitHub + yarn astro login + + # Créez un lien vers un nouveau projet en suivant les instructions. + yarn astro link + + # (Facultatif) Transférer la configuration de la base de données locale vers la base de données distante. + yarn astro db push + ``` + + + +Une fois connecté et relié avec succès, vous pouvez exécuter toutes les commandes Astro DB pour gérer votre base de données distante. + +Voir [la référence CLI Astro DB](/fr/guides/integrations-guide/db/#référence-cli-astro-db) pour toutes les commandes disponibles. + + +### Déployer avec une connexion Studio + + +Vous pouvez déployer votre projet Astro DB avec une connexion en direct à votre base de données Studio. Ceci est possible avec n'importe quelle plateforme de déploiement utilisant des constructions statiques ou un [adaptateur SSR](/fr/guides/server-side-rendering/). + +Tout d'abord, configurez votre commande de compilation pour qu'elle se connecte à Studio en utilisant l'option `--remote`. Cet exemple applique le drapeau à un script `"build"` dans le `package.json` de votre projet. Si votre plateforme de déploiement accepte une commande de construction, assurez-vous qu'elle est définie comme `npm run build`. + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + +#### Créer un jeton d'application Studio + + +Vous devez créer un jeton d'application pour accéder à votre base de données Studio à partir d'un déploiement en production. Vous pouvez créer un jeton d'application à partir du tableau de bord de votre projet Studio en accédant à l'onglet **Settings** et en sélectionnant **Tokens**. + +Copiez le jeton généré et appliquez-le en tant que variable d'environnement / secret d'environnement dans votre plateforme de déploiement en utilisant le nom `ASTRO_STUDIO_APP_TOKEN`. + + +### Configurer l'action CI GitHub + + +Vous pouvez pousser automatiquement les changements de schéma dans votre base de données Studio avec l'action Studio CI. Cela permet de vérifier que les changements peuvent être effectués en toute sécurité, et de maintenir votre configuration à jour à chaque fois que vous fusionnez avec `main`. + +[Suivez la documentation de GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) pour configurer un nouveau secret dans votre dépôt avec le nom `ASTRO_STUDIO_APP_TOKEN` et le jeton de votre application Studio comme valeur pour le secret. + +Une fois que votre secret est configuré, créez un nouveau fichier de workflow GitHub Actions dans le répertoire `.github/workflows` de votre projet pour extraire le dépôt et installer Node.js comme étape, et utilisez l'action `withastro/action-studio` pour synchroniser les changements de schémas. + +L'action lancera `astro db verify` sur tous les [déclencheurs d`évènements](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows) pour s'assurer que les changements de schéma peuvent être appliqués en toute sécurité. Si vous ajoutez spécifiquement le déclencheur **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, l'action poussera ces changements dans la base de données de Studio. + +Cet exemple d'action GitHub `_studio.yml` pousse les changements à chaque fois que la branche `main` est mise à jour : + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` - ### Pousser les schémas de table +### Pousser les schémas de table diff --git a/src/content/docs/fr/guides/integrations-guide/db.mdx b/src/content/docs/fr/guides/integrations-guide/db.mdx index 60e43eecd1f19..92f441e05ce7b 100644 --- a/src/content/docs/fr/guides/integrations-guide/db.mdx +++ b/src/content/docs/fr/guides/integrations-guide/db.mdx @@ -12,7 +12,7 @@ import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB est une base de données SQL entièrement gérée, conçue pour l'écosystème Astro : développez localement dans Astro et déployez depuis votre [tableau de bord Astro Studio](/fr/recipes/studio/). +Astro DB est une base de données SQL entièrement gérée, conçue pour l'écosystème Astro : développez localement dans Astro et déployez depuis votre [tableau de bord Astro Studio](#astro-studio). Avec Astro DB, vous disposez d'un outil puissant, local et sûr pour interroger et modéliser le contenu comme une base de données relationnelle. Visualisez, gérez et déployez vos données distantes hébergées via le tableau de bord interactif de Studio. @@ -196,7 +196,7 @@ Chaque objet de configuration de clé étrangère accepte les propriétés suiva ## Référence CLI Astro DB -Astro DB inclut un ensemble de commandes CLI pour interagir avec la base de données de votre projet hébergé et votre compte [Astro Studio](/fr/recipes/studio/). +Astro DB inclut un ensemble de commandes CLI pour interagir avec la base de données de votre projet hébergé et votre compte [Astro Studio](#astro-studio). Ces commandes sont appelées automatiquement lors de l'utilisation d'une action CI GitHub, et peuvent être appelées manuellement en utilisant le CLI `astro db`. diff --git a/src/content/docs/fr/recipes/studio.mdx b/src/content/docs/fr/recipes/studio.mdx deleted file mode 100644 index 33acc65f153a5..0000000000000 --- a/src/content/docs/fr/recipes/studio.mdx +++ /dev/null @@ -1,127 +0,0 @@ ---- -title: 'Astro Studio' -description: Un tableau de bord interactif pour gérer Astro DB. -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; -import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; - -Le [portail web Astro Studio](http://studio.astro.build) vous permet de vous connecter et de gérer vos [bases de données Astro DB](/fr/guides/astro-db/) hébergées à distance via une interface web ou en utilisant des [commandes CLI](/fr/reference/cli-reference/#astro-studio-cli). - -Depuis votre tableau de bord Studio, vous avez accès à la gestion de votre compte, à des articles d'aide et à une console de messages d'assistance. - -Visitez [Astro Studio](http://studio.astro.build) pour vous inscrire ou vous connecter. - -## Créer un nouveau projet Studio - -Il existe deux façons de créer un projet dans Astro Studio : - -1. [**Utiliser l'interface web Astro Studio**](https://studio.astro.build) pour créer à partir d'un dépôt GitHub nouveau ou existant. - - Pour commencer, cliquez sur le bouton "créer un projet" dans l'en-tête et suivez les instructions. Astro Studio se connectera à votre dépôt GitHub et créera une nouvelle base de données hébergée pour votre projet. - -2. **Utilisez le CLI** d'Astro Studio pour créer à partir de n'importe quel projet Astro local. Vous pouvez exécuter les commandes suivantes pour commencer : - - - - ```shell - # Connectez-vous à Astro Studio avec votre compte GitHub - npx astro login - - # Créez un lien vers un nouveau projet en suivant les instructions. - npx astro link - - # (Facultatif) Transférer la configuration de la base de données locale vers la base de données distante. - npx astro db push - ``` - - - ```shell - # Connectez-vous à Astro Studio avec votre compte GitHub - pnpm astro login - - # Créez un lien vers un nouveau projet en suivant les instructions. - pnpm astro link - - # (Facultatif) Transférer la configuration de la base de données locale vers la base de données distante. - pnpm astro db push - ``` - - - ```shell - # Connectez-vous à Astro Studio avec votre compte GitHub - yarn astro login - - # Créez un lien vers un nouveau projet en suivant les instructions. - yarn astro link - - # (Facultatif) Transférer la configuration de la base de données locale vers la base de données distante. - yarn astro db push - ``` - - - - Une fois connecté et relié avec succès, vous pouvez exécuter toutes les commandes Astro DB pour gérer votre base de données distante. - - Voir [la référence CLI Astro DB](/fr/guides/integrations-guide/db/#référence-cli-astro-db) pour toutes les commandes disponibles. - -## Déployer avec une connexion Studio - -Vous pouvez déployer votre projet Astro DB avec une connexion en direct à votre base de données Studio. Ceci est possible avec n'importe quelle plateforme de déploiement utilisant des constructions statiques ou un [adaptateur SSR](/fr/guides/server-side-rendering/). - -Tout d'abord, configurez votre commande de compilation pour qu'elle se connecte à Studio en utilisant l'option `--remote`. Cet exemple applique le drapeau à un script `"build"` dans le `package.json` de votre projet. Si votre plateforme de déploiement accepte une commande de construction, assurez-vous qu'elle est définie comme `npm run build`. - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### Créer un jeton d'application Studio - -Vous devez créer un jeton d'application pour accéder à votre base de données Studio à partir d'un déploiement en production. Vous pouvez créer un jeton d'application à partir du tableau de bord de votre projet Studio en accédant à l'onglet **Settings** et en sélectionnant **Tokens**. - -Copiez le jeton généré et appliquez-le en tant que variable d'environnement / secret d'environnement dans votre plateforme de déploiement en utilisant le nom `ASTRO_STUDIO_APP_TOKEN`. - -## Configurer l'action CI GitHub - -Vous pouvez pousser automatiquement les changements de schéma dans votre base de données Studio avec l'action Studio CI. Cela permet de vérifier que les changements peuvent être effectués en toute sécurité, et de maintenir votre configuration à jour à chaque fois que vous fusionnez avec `main`. - -[Suivez la documentation de GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) pour configurer un nouveau secret dans votre dépôt avec le nom `ASTRO_STUDIO_APP_TOKEN` et le jeton de votre application Studio comme valeur pour le secret. - -Une fois que votre secret est configuré, créez un nouveau fichier de workflow GitHub Actions dans le répertoire `.github/workflows` de votre projet pour extraire le dépôt et installer Node.js comme étapes, et utilisez l'action `withastro/action-studio` pour synchroniser les changements de schémas. - -L'action lancera `astro db verify` sur tous les [déclencheurs d`évènements](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows) pour s'assurer que les changements de schéma peuvent être appliqués en toute sécurité. Si vous ajoutez spécifiquement le déclencheur **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, l'action poussera ces changements dans la base de données de Studio. - -Cet exemple d'action GitHub `_studio.yml` pousse les changements à chaque fois que la branche `main` est mise à jour : - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` diff --git a/src/content/docs/it/guides/astro-db.mdx b/src/content/docs/it/guides/astro-db.mdx index 15e1bb7d3894d..daaea81847345 100644 --- a/src/content/docs/it/guides/astro-db.mdx +++ b/src/content/docs/it/guides/astro-db.mdx @@ -10,7 +10,7 @@ import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; import { Steps } from '@astrojs/starlight/components'; -Astro DB è un database SQL completamente gestito progettato esclusivamente per Astro. Sviluppa localmente o connettiti a un database ospitato gestito sulla nostra piattaforma [Astro Studio](/it/recipes/studio/). +Astro DB è un database SQL completamente gestito progettato esclusivamente per Astro. Sviluppa localmente o connettiti a un database ospitato gestito sulla nostra piattaforma [Astro Studio](#astro-studio). ## Installazione @@ -339,9 +339,135 @@ Vedi i [documenti `db.batch()` di Drizzle](https://orm.drizzle.team/docs/batch-a ## Astro Studio -Astro DB può [connettersi alla piattaforma Astro Studio](/it/recipes/studio/) per aggiungere rapidamente un database ospitato al tuo progetto. Puoi visualizzare, gestire e distribuire nuovi database ospitati direttamente dalla dashboard di Astro Studio. +Astro DB può connettersi alla piattaforma Astro Studio per aggiungere rapidamente un database ospitato al tuo progetto. Puoi visualizzare, gestire e distribuire nuovi database ospitati direttamente dalla dashboard di Astro Studio. -Per creare un nuovo progetto, puoi utilizzare un [template già pronto](https://studio.astro.build) o visitare la [guida di Astro Studio](/it/recipes/studio/#crea-un-nuovo-progetto-studio). +Il [portale web di Astro Studio](http://studio.astro.build) ti permette di connetterti e gestire i tuoi database Astro DB ospitati in remoto attraverso un'interfaccia web o utilizzando [comandi CLI](/it/reference/cli-reference/#astro-studio-cli). + +Dalla tua dashboard di Studio, hai accesso alla gestione dell'account, articoli di aiuto e una console per messaggi di supporto. + +Visita [Astro Studio](http://studio.astro.build) per registrarti o accedere. + + +### Crea un nuovo progetto Studio + + +Ci sono due modi per creare un progetto in Astro Studio: + +1. [**Usa l'interfaccia web di Astro Studio**](https://studio.astro.build) per creare da un repository GitHub nuovo o esistente. + + Per iniziare, clicca sul pulsante "crea progetto" nell'intestazione e segui le istruzioni. Astro Studio si collegherà al tuo repository GitHub e creerà un nuovo database ospitato per il tuo progetto. + +2. **Usa la CLI di Astro Studio** per creare da qualsiasi progetto Astro locale. Puoi eseguire i seguenti comandi per iniziare: + + + + ```shell + # Accedi ad Astro Studio con il tuo account GitHub + npx astro login + + # Collega a un nuovo progetto seguendo le istruzioni + npx astro link + + # (Opzionale) Invia la tua configurazione db locale al database remoto + npx astro db push + ``` + + + ```shell + # Accedi ad Astro Studio con il tuo account GitHub + pnpm astro login + + # Collega a un nuovo progetto seguendo le istruzioni + pnpm astro link + + # (Opzionale) Invia la tua configurazione db locale al database remoto + pnpm astro db push + ``` + + + ```shell + # Accedi ad Astro Studio con il tuo account GitHub + yarn astro login + + # Collega a un nuovo progetto seguendo le istruzioni + yarn astro link + + # (Opzionale) Invia la tua configurazione db locale al database remoto + yarn astro db push + ``` + + + + Una volta effettuato l'accesso e collegato con successo, puoi eseguire tutti i comandi di Astro DB per gestire il tuo database remoto. + + Consulta [il riferimento della CLI di Astro DB](/it/guides/integrations-guide/db/#riferimento-per-la-cli-di-astro-db) per tutti i comandi disponibili. + + +### Distribuire con una connessione Studio + + +Puoi distribuire il tuo progetto Astro DB con una connessione attiva al tuo database Studio. Questo è possibile con qualsiasi piattaforma di distribuzione utilizzando build statiche o un [adattatore SSR](/it/guides/server-side-rendering/). + +Prima di tutto, configura il tuo comando di build per connettersi con Studio utilizzando il flag `--remote`. Questo esempio applica il flag a uno script `"build"` nel `package.json` del tuo progetto. Se la tua piattaforma di distribuzione accetta un comando di build, assicurati che sia impostato su `npm run build`. + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + + +#### Crea un token per l'app Studio + + +Hai bisogno di creare un token per l'app per accedere al tuo database Studio da una distribuzione in produzione. Puoi creare un token per l'app dalla dashboard del tuo progetto Studio navigando nella scheda **Impostazioni** e selezionando **Token**. + +Copia il token generato e applicalo come variabile d'ambiente / segreto d'ambiente nella tua piattaforma di distribuzione utilizzando il nome `ASTRO_STUDIO_APP_TOKEN`. + + +### Configura l'azione CI di GitHub + + +Puoi spingere automaticamente le modifiche allo schema al tuo database Studio con l'azione CI di Studio. Questo verifica che le modifiche possano essere effettuate in sicurezza e mantiene la tua configurazione aggiornata ogni volta che effettui il merge su `main`. + +[Segui la documentazione di GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) per configurare un nuovo segreto nel tuo repository con il nome `ASTRO_STUDIO_APP_TOKEN` e il tuo token per l'app Studio come valore per il segreto. + +Una volta configurato il tuo segreto, crea un nuovo file di workflow di GitHub Actions nella directory `.github/workflows` del tuo progetto per effettuare il checkout del repository e installare Node.js come passaggi, e usa l'azione `withastro/action-studio` per sincronizzare le modifiche allo schema. + +L'azione eseguirà `astro db verify` su tutti i [trigger di evento](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows) per assicurarsi che le modifiche allo schema possano essere applicate in sicurezza. Se aggiungi specificamente il trigger **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, l'azione spingerà quelle modifiche al tuo database Studio. + +Questo esempio di GitHub Action `_studio.yml` spinge le modifiche ogni volta che il ramo `main` viene aggiornato: + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` ### Pubblicazione degli schemi delle tabelle @@ -520,7 +646,7 @@ Per utilizzare una connessione remota, avrai bisogno di un token dell'app per au -Quando sei pronto per il deploy, consulta la nostra [guida al Deploy con una Connessione Studio](/it/recipes/studio/#distribuire-con-una-connessione-studio). +Quando sei pronto per il deploy, consulta la nostra [guida al Deploy con una Connessione Studio](#distribuire-con-una-connessione-studio). @@ -604,7 +730,7 @@ L'utilizzo di un file di database è una funzionalità avanzata e occorre presta Inoltre, questo metodo non funzionerà nelle distribuzioni serverless, poiché il file system non viene persistito in tali ambienti. -Per una soluzione completamente gestita, [connettiti invece ai database ospitati sulla piattaforma Astro Studio](/it/recipes/studio/). +Per una soluzione completamente gestita, [connettiti invece ai database ospitati sulla piattaforma Astro Studio](#astro-studio). ::: Se sei a tuo agio con i rischi e puoi gestire la distribuzione autonomamente, puoi utilizzare un file di database invece di connetterti a Studio. diff --git a/src/content/docs/it/guides/integrations-guide/db.mdx b/src/content/docs/it/guides/integrations-guide/db.mdx index ea6c0ce47e8aa..7d61892495218 100644 --- a/src/content/docs/it/guides/integrations-guide/db.mdx +++ b/src/content/docs/it/guides/integrations-guide/db.mdx @@ -12,7 +12,7 @@ import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB è un database SQL completamente gestito progettato per l'ecosistema Astro: sviluppa localmente in Astro e distribuisci dal tuo [dashboard di Astro Studio](/it/recipes/studio/). +Astro DB è un database SQL completamente gestito progettato per l'ecosistema Astro: sviluppa localmente in Astro e distribuisci dal tuo [dashboard di Astro Studio](/it/guides/astro-db/#astro-studio). Con Astro DB hai uno strumento potente, locale e type-safe per interrogare e modellare contenuti come un database relazionale. Visualizza, gestisci e distribuisci i tuoi dati remoti ospitati attraverso la tua dashboard interattiva di Studio. @@ -196,7 +196,7 @@ Ogni oggetto di configurazione della chiave esterna accetta le seguenti propriet ## Riferimento per la CLI di Astro DB -Astro DB include un insieme di comandi CLI per interagire con il tuo database di progetto ospitato e il tuo account [Astro Studio](/it/recipes/studio/). +Astro DB include un insieme di comandi CLI per interagire con il tuo database di progetto ospitato e il tuo account [Astro Studio](/it/guides/astro-db/#astro-studio). Questi comandi vengono chiamati automaticamente quando si utilizza un'azione CI di GitHub e possono essere chiamati manualmente utilizzando la CLI `astro db`. diff --git a/src/content/docs/it/recipes/studio.mdx b/src/content/docs/it/recipes/studio.mdx deleted file mode 100644 index f46af8aebc722..0000000000000 --- a/src/content/docs/it/recipes/studio.mdx +++ /dev/null @@ -1,127 +0,0 @@ ---- -title: 'Astro Studio' -description: Una dashboard interattiva per gestire Astro DB. -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; -import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; - -Il [portale web di Astro Studio](http://studio.astro.build) ti permette di connetterti e gestire i tuoi database Astro DB ospitati in remoto attraverso un'interfaccia web o utilizzando [comandi CLI](/it/reference/cli-reference/#astro-studio-cli). - -Dalla tua dashboard di Studio, hai accesso alla gestione dell'account, articoli di aiuto e una console per messaggi di supporto. - -Visita [Astro Studio](http://studio.astro.build) per registrarti o accedere. - -## Crea un nuovo progetto Studio - -Ci sono due modi per creare un progetto in Astro Studio: - -1. [**Usa l'interfaccia web di Astro Studio**](https://studio.astro.build) per creare da un repository GitHub nuovo o esistente. - - Per iniziare, clicca sul pulsante "crea progetto" nell'intestazione e segui le istruzioni. Astro Studio si collegherà al tuo repository GitHub e creerà un nuovo database ospitato per il tuo progetto. - -2. **Usa la CLI di Astro Studio** per creare da qualsiasi progetto Astro locale. Puoi eseguire i seguenti comandi per iniziare: - - - - ```shell - # Accedi ad Astro Studio con il tuo account GitHub - npx astro login - - # Collega a un nuovo progetto seguendo le istruzioni - npx astro link - - # (Opzionale) Invia la tua configurazione db locale al database remoto - npx astro db push - ``` - - - ```shell - # Accedi ad Astro Studio con il tuo account GitHub - pnpm astro login - - # Collega a un nuovo progetto seguendo le istruzioni - pnpm astro link - - # (Opzionale) Invia la tua configurazione db locale al database remoto - pnpm astro db push - ``` - - - ```shell - # Accedi ad Astro Studio con il tuo account GitHub - yarn astro login - - # Collega a un nuovo progetto seguendo le istruzioni - yarn astro link - - # (Opzionale) Invia la tua configurazione db locale al database remoto - yarn astro db push - ``` - - - - Una volta effettuato l'accesso e collegato con successo, puoi eseguire tutti i comandi di Astro DB per gestire il tuo database remoto. - - Consulta [il riferimento della CLI di Astro DB](/it/guides/integrations-guide/db/#riferimento-per-la-cli-di-astro-db) per tutti i comandi disponibili. - -## Distribuire con una connessione Studio - -Puoi distribuire il tuo progetto Astro DB con una connessione attiva al tuo database Studio. Questo è possibile con qualsiasi piattaforma di distribuzione utilizzando build statiche o un [adattatore SSR](/it/guides/server-side-rendering/). - -Prima di tutto, configura il tuo comando di build per connettersi con Studio utilizzando il flag `--remote`. Questo esempio applica il flag a uno script `"build"` nel `package.json` del tuo progetto. Se la tua piattaforma di distribuzione accetta un comando di build, assicurati che sia impostato su `npm run build`. - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### Crea un token per l'app Studio - -Hai bisogno di creare un token per l'app per accedere al tuo database Studio da una distribuzione in produzione. Puoi creare un token per l'app dalla dashboard del tuo progetto Studio navigando nella scheda **Impostazioni** e selezionando **Token**. - -Copia il token generato e applicalo come variabile d'ambiente / segreto d'ambiente nella tua piattaforma di distribuzione utilizzando il nome `ASTRO_STUDIO_APP_TOKEN`. - -## Configura l'azione CI di GitHub - -Puoi spingere automaticamente le modifiche allo schema al tuo database Studio con l'azione CI di Studio. Questo verifica che le modifiche possano essere effettuate in sicurezza e mantiene la tua configurazione aggiornata ogni volta che effettui il merge su `main`. - -[Segui la documentazione di GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) per configurare un nuovo segreto nel tuo repository con il nome `ASTRO_STUDIO_APP_TOKEN` e il tuo token per l'app Studio come valore per il segreto. - -Una volta configurato il tuo segreto, crea un nuovo file di workflow di GitHub Actions nella directory `.github/workflows` del tuo progetto per effettuare il checkout del repository e installare Node.js come passaggi, e usa l'azione `withastro/action-studio` per sincronizzare le modifiche allo schema. - -L'azione eseguirà `astro db verify` su tutti i [trigger di evento](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows) per assicurarsi che le modifiche allo schema possano essere applicate in sicurezza. Se aggiungi specificamente il trigger **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, l'azione spingerà quelle modifiche al tuo database Studio. - -Questo esempio di GitHub Action `_studio.yml` spinge le modifiche ogni volta che il ramo `main` viene aggiornato: - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` diff --git a/src/content/docs/ko/guides/astro-db.mdx b/src/content/docs/ko/guides/astro-db.mdx index 975d9578d2bda..5bfd296e5bd45 100644 --- a/src/content/docs/ko/guides/astro-db.mdx +++ b/src/content/docs/ko/guides/astro-db.mdx @@ -10,7 +10,7 @@ import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; import { Steps } from '@astrojs/starlight/components'; -Astro DB는 Astro 전용으로 설계된 완전 관리형 SQL 데이터베이스입니다. 로컬에서 개발하거나 [Astro Studio](/ko/recipes/studio/) 플랫폼에서 관리되는 호스팅된 데이터베이스에 연결하세요. +Astro DB는 Astro 전용으로 설계된 완전 관리형 SQL 데이터베이스입니다. 로컬에서 개발하거나 [Astro Studio](#astro-studio) 플랫폼에서 관리되는 호스팅된 데이터베이스에 연결하세요. ## 설치 @@ -337,9 +337,134 @@ export default async function () { ## Astro Studio -Astro DB는 [Astro Studio 플랫폼](/ko/recipes/studio/)을 연결하여 호스팅된 데이터베이스를 프로젝트에 빠르게 추가할 수 있습니다. Astro Studio 대시보드에서 새로운 호스팅 데이터베이스를 확인하고, 관리하고, 배포할 수 있습니다. +Astro DB는 Astro Studio 플랫폼을 연결하여 호스팅된 데이터베이스를 프로젝트에 빠르게 추가할 수 있습니다. Astro Studio 대시보드에서 새로운 호스팅 데이터베이스를 확인하고, 관리하고, 배포할 수 있습니다. -새 프로젝트를 생성하려면 [미리 만들어진 템플릿](https://studio.astro.build)을 사용하거나 [Astro Studio 가이드](/ko/recipes/studio/#새-studio-프로젝트-생성)를 방문하세요. +[Astro Studio 웹 포털](http://studio.astro.build)을 사용하면 웹 인터페이스나 [CLI 명령](/ko/reference/cli-reference/#astro-studio-cli)을 사용하여 원격 호스팅 Astro DB 데이터베이스에 연결하고 관리할 수 있습니다. + +Studio 대시보드에서 계정 관리, 도움말 및 지원 메시지 콘솔에 액세스할 수 있습니다. + +[Astro Studio](http://studio.astro.build)를 방문하여 회원가입 또는 로그인을 해주세요. + + +### 새 Studio 프로젝트 생성 + + +Astro Studio에서 프로젝트를 생성하는 방법에는 두 가지가 있습니다. + +1. [**Astro Studio 웹 UI**](https://studio.astro.build)를 사용하여 신규 또는 기존 GitHub 저장소에서 생성합니다. + + 시작하려면 헤더에 있는 "create project" 버튼을 클릭하고 지침을 따르세요. Astro Studio는 GitHub 저장소를 연결하고 프로젝트를 위한 새로운 호스팅 데이터베이스를 생성합니다. + +2. **Astro Studio CLI**를 사용하여 로컬 Astro 프로젝트에서 생성합니다. 다음 명령을 실행하여 시작할 수 있습니다. + + + + ```shell + # GitHub 계정으로 Astro Studio에 로그인합니다. + npx astro login + + # 프롬프트를 따라 새 프로젝트에 연결합니다. + npx astro link + + # (선택 사항) 로컬 DB 구성을 원격 데이터베이스에 푸시합니다. + npx astro db push + ``` + + + ```shell + # GitHub 계정으로 Astro Studio에 로그인합니다. + pnpm astro login + + # 프롬프트를 따라 새 프로젝트에 연결합니다. + pnpm astro link + + # (선택 사항) 로컬 DB 구성을 원격 데이터베이스에 푸시합니다. + pnpm astro db push + ``` + + + ```shell + # GitHub 계정으로 Astro Studio에 로그인합니다. + yarn astro login + + # 프롬프트를 따라 새 프로젝트에 연결합니다. + yarn astro link + + # (선택 사항) 로컬 DB 구성을 원격 데이터베이스에 푸시합니다. + yarn astro db push + ``` + + + + 로그인 및 연결이 성공적으로 완료되었다면 모든 Astro DB 명령을 실행하여 원격 데이터베이스를 관리할 수 있습니다. + + 사용 가능한 모든 명령은 [Astro DB CLI 참조](/ko/guides/integrations-guide/db/#astro-db-cli-참조)를 확인하세요. + + +### Studio 연결을 사용하여 배포 + + +Studio 데이터베이스에 대한 라이브 연결을 통해 Astro DB 프로젝트를 배포할 수 있습니다. 이는 정적 빌드나 [SSR 어댑터](/ko/guides/server-side-rendering/)를 사용하는 모든 배포 플랫폼에서 가능합니다. + +먼저 `--remote` 플래그를 사용하여 Studio와 연결하도록 빌드 명령을 구성합니다. 이 예시에서는 프로젝트의 `package.json` 파일에 있는 `"build"` 스크립트에 플래그를 적용합니다. 배포 플랫폼이 빌드 명령을 허용하는 경우 `npm run build`로 설정되어 있는지 확인하세요. + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + +#### Studio 앱 토큰 생성 + + +프로덕션 배포에서 Studio 데이터베이스에 액세스하려면 앱 토큰을 생성해야 합니다. **Settings** 탭으로 이동하고 **Tokens**를 선택하여 Studio 프로젝트 대시보드에서 앱 토큰을 생성할 수 있습니다. + +생성된 토큰을 복사하고 `ASTRO_STUDIO_APP_TOKEN`를 이름으로 사용하여 배포 플랫폼에서 환경 변수 / 환경 비밀로 적용합니다. + + +### GitHub CI Action 설정 + + +Studio CI action을 사용하면 스키마 변경 사항을 Studio 데이터베이스에 자동으로 푸시할 수 있습니다. 이를 통해 변경 사항이 안전하게 적용될 수 있는지 확인하고 `main`에 병합할 때마다 구성을 최신 상태로 유지합니다. + +[GitHub 문서에 따라](https://docs.github.com/ko/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) `ASTRO_STUDIO_APP_TOKEN`이라는 이름과 Studio 앱 토큰을 비밀 값으로 사용하여 저장소에 새 비밀을 구성하세요. + +비밀이 구성되면 프로젝트의 `.github/workflows` 디렉터리에 새 GitHub Actions 워크플로 파일을 생성하여 단계별로 저장소를 체크아웃하고 Node.js를 설치하고 `withastro/action-studio` action을 사용하여 스키마 변경 사항을 동기화하세요. + +이 action은 모든 [이벤트 트리거](https://docs.github.com/ko/actions/using-workflows/events-that-trigger-workflows)에서 `astro db verify`를 실행하여 스키마 변경 사항이 안전하게 적용될 수 있는지 확인합니다. **[push](https://docs.github.com/ko/actions/using-workflows/events-that-trigger-workflows#push)** 트리거를 별도로 추가하면 action이 해당 변경 사항을 Studio 데이터베이스에 푸시합니다. + +이 예시 GitHub Action `_studio.yml`은 `main` 브랜치가 업데이트될 때마다 변경 사항을 푸시합니다. + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` ### 테이블 스키마 푸시 @@ -517,7 +642,7 @@ astro dev --remote -배포할 준비가 되면 [Studio 연결 및 배포 가이드](/ko/recipes/studio/#studio-연결을-사용하여-배포)를 확인하세요. +배포할 준비가 되면 [Studio 연결 및 배포 가이드](#studio-연결을-사용하여-배포)를 확인하세요. @@ -601,7 +726,7 @@ export default async function() { 또한 서버리스 배포에서는 파일 시스템이 유지되지 않으므로 이 방법은 작동하지 않습니다. -완전 관리형 솔루션의 경우 [Astro Studio 플랫폼에서 호스팅되는 데이터베이스에 연결](/ko/recipes/studio/)하세요. +완전 관리형 솔루션의 경우 [Astro Studio 플랫폼에서 호스팅되는 데이터베이스에 연결](#astro-studio)하세요. ::: 위험을 감수하고 배포를 직접 관리할 수 있는 경우 Studio에 연결하는 대신 데이터베이스 파일을 사용할 수 있습니다. diff --git a/src/content/docs/ko/guides/integrations-guide/db.mdx b/src/content/docs/ko/guides/integrations-guide/db.mdx index aa6d07218fb2c..346f3f7109d87 100644 --- a/src/content/docs/ko/guides/integrations-guide/db.mdx +++ b/src/content/docs/ko/guides/integrations-guide/db.mdx @@ -11,7 +11,7 @@ import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB는 Astro 생태계를 위해 설계된 완전 관리형 SQL 데이터베이스입니다. Astro에서 로컬로 개발하고 [Astro Studio 대시보드](/ko/recipes/studio/)에서 배포하세요. +Astro DB는 Astro 생태계를 위해 설계된 완전 관리형 SQL 데이터베이스입니다. Astro에서 로컬로 개발하고 [Astro Studio 대시보드](/ko/guides/astro-db/#astro-studio)에서 배포하세요. Astro DB를 사용하면 콘텐츠를 관계형 데이터베이스로 쿼리하고 모델링할 수 있는 강력하고 타입 안정성을 갖춘 로컬에서 동작하는 도구를 갖게 됩니다. 대화형 Studio 대시보드를 통해 호스팅된 원격 데이터를 확인하고 관리하고 배포하세요. @@ -195,7 +195,7 @@ const Comment = defineTable({ ## Astro DB CLI 참조 -Astro DB에는 호스팅된 프로젝트 데이터베이스 및 [Astro Studio](/ko/recipes/studio/) 계정과 상호 작용하는 CLI 명령 세트가 포함되어 있습니다. +Astro DB에는 호스팅된 프로젝트 데이터베이스 및 [Astro Studio](/ko/guides/astro-db/#astro-studio) 계정과 상호 작용하는 CLI 명령 세트가 포함되어 있습니다. 이러한 명령은 GitHub CI action을 사용할 때 자동으로 호출되며 `astro db` CLI를 사용하여 수동으로 호출할 수 있습니다. diff --git a/src/content/docs/ko/recipes/studio.mdx b/src/content/docs/ko/recipes/studio.mdx deleted file mode 100644 index 715000948b6ed..0000000000000 --- a/src/content/docs/ko/recipes/studio.mdx +++ /dev/null @@ -1,127 +0,0 @@ ---- -title: 'Astro Studio' -description: Astro DB 관리를 위한 대화형 대시보드입니다. -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; -import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; - -[Astro Studio 웹 포털](http://studio.astro.build)을 사용하면 웹 인터페이스나 [CLI 명령](/ko/reference/cli-reference/#astro-studio-cli)을 사용하여 원격 호스팅 [Astro DB 데이터베이스](/ko/guides/astro-db/)에 연결하고 관리할 수 있습니다. - -Studio 대시보드에서 계정 관리, 도움말 및 지원 메시지 콘솔에 액세스할 수 있습니다. - -[Astro Studio](http://studio.astro.build)를 방문하여 회원가입 또는 로그인을 해주세요. - -## 새 Studio 프로젝트 생성 - -Astro Studio에서 프로젝트를 생성하는 방법에는 두 가지가 있습니다. - -1. [**Astro Studio 웹 UI**](https://studio.astro.build)를 사용하여 신규 또는 기존 GitHub 저장소에서 생성합니다. - - 시작하려면 헤더에 있는 "create project" 버튼을 클릭하고 지침을 따르세요. Astro Studio는 GitHub 저장소를 연결하고 프로젝트를 위한 새로운 호스팅 데이터베이스를 생성합니다. - -2. **Astro Studio CLI**를 사용하여 로컬 Astro 프로젝트에서 생성합니다. 다음 명령을 실행하여 시작할 수 있습니다. - - - - ```shell - # GitHub 계정으로 Astro Studio에 로그인합니다. - npx astro login - - # 프롬프트를 따라 새 프로젝트에 연결합니다. - npx astro link - - # (선택 사항) 로컬 DB 구성을 원격 데이터베이스에 푸시합니다. - npx astro db push - ``` - - - ```shell - # GitHub 계정으로 Astro Studio에 로그인합니다. - pnpm astro login - - # 프롬프트를 따라 새 프로젝트에 연결합니다. - pnpm astro link - - # (선택 사항) 로컬 DB 구성을 원격 데이터베이스에 푸시합니다. - pnpm astro db push - ``` - - - ```shell - # GitHub 계정으로 Astro Studio에 로그인합니다. - yarn astro login - - # 프롬프트를 따라 새 프로젝트에 연결합니다. - yarn astro link - - # (선택 사항) 로컬 DB 구성을 원격 데이터베이스에 푸시합니다. - yarn astro db push - ``` - - - - 로그인 및 연결이 성공적으로 완료되었다면 모든 Astro DB 명령을 실행하여 원격 데이터베이스를 관리할 수 있습니다. - - 사용 가능한 모든 명령은 [Astro DB CLI 참조](/ko/guides/integrations-guide/db/#astro-db-cli-참조)를 확인하세요. - -## Studio 연결을 사용하여 배포 - -Studio 데이터베이스에 대한 라이브 연결을 통해 Astro DB 프로젝트를 배포할 수 있습니다. 이는 정적 빌드나 [SSR 어댑터](/ko/guides/server-side-rendering/)를 사용하는 모든 배포 플랫폼에서 가능합니다. - -먼저 `--remote` 플래그를 사용하여 Studio와 연결하도록 빌드 명령을 구성합니다. 이 예시에서는 프로젝트의 `package.json` 파일에 있는 `"build"` 스크립트에 플래그를 적용합니다. 배포 플랫폼이 빌드 명령을 허용하는 경우 `npm run build`로 설정되어 있는지 확인하세요. - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### Studio 앱 토큰 생성 - -프로덕션 배포에서 Studio 데이터베이스에 액세스하려면 앱 토큰을 생성해야 합니다. **Settings** 탭으로 이동하고 **Tokens**를 선택하여 Studio 프로젝트 대시보드에서 앱 토큰을 생성할 수 있습니다. - -생성된 토큰을 복사하고 `ASTRO_STUDIO_APP_TOKEN`를 이름으로 사용하여 배포 플랫폼에서 환경 변수 / 환경 비밀로 적용합니다. - -## GitHub CI Action 설정 - -Studio CI action을 사용하면 스키마 변경 사항을 Studio 데이터베이스에 자동으로 푸시할 수 있습니다. 이를 통해 변경 사항이 안전하게 적용될 수 있는지 확인하고 `main`에 병합할 때마다 구성을 최신 상태로 유지합니다. - -[GitHub 문서에 따라](https://docs.github.com/ko/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) `ASTRO_STUDIO_APP_TOKEN`이라는 이름과 Studio 앱 토큰을 비밀 값으로 사용하여 저장소에 새 비밀을 구성하세요. - -비밀이 구성되면 프로젝트의 `.github/workflows` 디렉터리에 새 GitHub Actions 워크플로 파일을 생성하여 단계별로 저장소를 체크아웃하고 Node.js를 설치하고 `withastro/action-studio` action을 사용하여 스키마 변경 사항을 동기화하세요. - -이 action은 모든 [이벤트 트리거](https://docs.github.com/ko/actions/using-workflows/events-that-trigger-workflows)에서 `astro db verify`를 실행하여 스키마 변경 사항이 안전하게 적용될 수 있는지 확인합니다. **[push](https://docs.github.com/ko/actions/using-workflows/events-that-trigger-workflows#push)** 트리거를 별도로 추가하면 action이 해당 변경 사항을 Studio 데이터베이스에 푸시합니다. - -이 예시 GitHub Action `_studio.yml`은 `main` 브랜치가 업데이트될 때마다 변경 사항을 푸시합니다. - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` diff --git a/src/content/docs/ru/guides/astro-db.mdx b/src/content/docs/ru/guides/astro-db.mdx index fa65c863266c1..c670e54cf257f 100644 --- a/src/content/docs/ru/guides/astro-db.mdx +++ b/src/content/docs/ru/guides/astro-db.mdx @@ -10,7 +10,7 @@ import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; import { Steps } from '@astrojs/starlight/components'; -Astro DB — это полностью управляемая база данных SQL, специально разработанная для Astro. Разрабатывайте локально или подключайтесь к хостингу базы данных, управляемой на нашей платформе [Astro Studio](/ru/recipes/studio/). +Astro DB — это полностью управляемая база данных SQL, специально разработанная для Astro. Разрабатывайте локально или подключайтесь к хостингу базы данных, управляемой на нашей платформе [Astro Studio](#astro-studio). ## Установка @@ -339,9 +339,139 @@ export default async function () { ## Astro Studio -Astro DB может [подключаться к платформе Astro Studio](/ru/recipes/studio/), чтобы быстро добавить хостинг базы данных в ваш проект. Вы можете просматривать, управлять и развёртывать новые хостинговые базы данных прямо из панели управления Astro Studio. +Astro DB может подключаться к платформе Astro Studio, чтобы быстро добавить хостинг базы данных в ваш проект. Вы можете просматривать, управлять и развёртывать новые хостинговые базы данных прямо из панели управления Astro Studio. -Чтобы создать новый проект, вы можете воспользоваться [готовым шаблоном](https://studio.astro.build) или обратиться к руководству [Astro Studio](/ru/recipes/studio/#создание-нового-проекта-studio). +[Веб-портал Astro Studio](http://studio.astro.build) позволяет вам подключаться и управлять вашими удаленными [базами данных Astro DB](/ru/guides/astro-db/) через веб-интерфейс или с использованием [CLI-команд](/ru/reference/cli-reference/#astro-studio-cli). + +Из вашей панели управления Studio у вас есть доступ к управлению учетной записью, справочным статьям и консоли сообщений поддержки. + +Посетите [Astro Studio](http://studio.astro.build), чтобы зарегистрироваться или войти в систему. + + +### Создание нового проекта Studio + + +Существует два способа создания проекта в Astro Studio: + +1. [**Использовать веб-интерфейс Astro Studio**](https://studio.astro.build) для создания из нового или существующего репозитория GitHub. + + Чтобы начать, нажмите кнопку "create project" в заголовке и следуйте инструкциям. Astro Studio подключится к вашему репозиторию GitHub и создаст новую хостинговую базу данных для вашего проекта. + +2. **Использовать Astro Studio CLI** для создания из любого локального проекта Astro. Для начала можно выполнить следующие команды: + + + + ```shell + # Войдите в Astro Studio с помощью вашей учетной записи GitHub + npx astro login + + # Свяжите новый проект, следуя инструкциям + npx astro link + + # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных + npx astro db push + ``` + + + ```shell + # Войдите в Astro Studio с помощью вашей учетной записи GitHub + pnpm astro login + + # Свяжите новый проект, следуя инструкциям + pnpm astro link + + # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных + pnpm astro db push + ``` + + + ```shell + # Log in to Astro Studio with your GitHub account + yarn astro login + + # Свяжите новый проект, следуя инструкциям + yarn astro link + + # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных + yarn astro db push + ``` + + + + После того как вы вошли в систему и успешно подключились, вы можете выполнять все команды Astro DB для управления удаленной базой данных. + + О всех доступных командах см. в [справочнике Astro DB CLI](/ru/guides/integrations-guide/db/#справочник-по-cli-astro-db). + + +### Развёртывание с подключением к Studio + + +Вы можете развернуть свой проект Astro DB с живым подключением к вашей базе данных Studio. Это возможно на любой платформе развёртывания с использованием статических сборок или [адаптера SSR](/ru/guides/server-side-rendering/). + +Сначала настройте свою команду сборки для подключения к Studio с использованием флага `--remote`. В этом примере флаг применяется к скрипту `"build"` в файле `package.json` вашего проекта. Если ваша платформа развёртывания принимает команду сборки, убедитесь, что она установлена на `npm run build`. + + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + + +#### Создание токена приложения Studio + + +Для доступа к вашей базе данных Studio из продакшн-развёртывания вам нужно создать токен приложения. Вы можете создать токен приложения на панели управления вашего проекта Studio, перейдя на вкладку **Settings** и выбрав **Tokens**. + +Скопируйте сгенерированный токен и примените его в качестве переменной окружения / секрета окружения на вашей платформе развёртывания, используя имя `ASTRO_STUDIO_APP_TOKEN`. + + +### Настройте действие GitHub CI + + +Вы можете автоматически отправлять изменения схемы в вашу базу данных Studio с использованием действия Studio CI. Это позволит убедиться, что изменения могут быть внесены безопасно, и поддерживать конфигурацию в актуальном состоянии при каждом слиянии с `main`. + +[Следуйте документации GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository), чтобы настроить новый секрет в вашем репозитории с именем `ASTRO_STUDIO_APP_TOKEN` и вашим токеном приложения Studio в качестве значения секрета. + +После того как секрет настроен, создайте новый файл рабочего процесса GitHub Actions в директории проекта `.github/workflows` для проверки репозитория и установки Node.js в качестве шагов, а также используйте действие `withastro/action-studio` для синхронизации изменений схемы. + +После настройки секрета создайте новый файл рабочего процесса GitHub Actions в директории проекта `.github/workflows` для проверки репозитория и установки Node.js в качестве шагов, а также используйте действие `withastro/action-studio` для синхронизации изменений схемы. + +Действие запустит `astro db verify` на всех [событиях-триггерах](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows), чтобы убедиться, что изменения схемы могут быть применены безопасно. Если вы специально добавите триггер **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, действие перенесет эти изменения в базу данных Studio. + +Приведенный пример GitHub Action `_studio.yml` отправляет изменения при каждом обновлении ветки `main`: + + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` ### Отправка схем таблиц @@ -520,7 +650,7 @@ astro dev --remote -Когда вы будете готовы к развёртыванию, ознакомьтесь с нашим [Руководством по развёртыванию с подключением к Studio](/ru/recipes/studio/#развёртывание-с-подключением-к-studio). +Когда вы будете готовы к развёртыванию, ознакомьтесь с нашим [Руководством по развёртыванию с подключением к Studio](#развёртывание-с-подключением-к-studio). diff --git a/src/content/docs/ru/guides/integrations-guide/db.mdx b/src/content/docs/ru/guides/integrations-guide/db.mdx index d4c47ec7aeec3..6baf33e0f774b 100644 --- a/src/content/docs/ru/guides/integrations-guide/db.mdx +++ b/src/content/docs/ru/guides/integrations-guide/db.mdx @@ -12,7 +12,7 @@ import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB - это полностью управляемая база данных SQL, разработанная для экосистемы Astro: разрабатывайте локально в Astro и развертывайте из вашей [панели управления Astro Studio](/ru/recipes/studio/). +Astro DB - это полностью управляемая база данных SQL, разработанная для экосистемы Astro: разрабатывайте локально в Astro и развертывайте из вашей [панели управления Astro Studio](/ru/guides/astro-db/#astro-studio). С Astro DB у вас есть мощное, локальное, типобезопасное средство для запросов и моделирования контента в виде реляционной базы данных. Просматривайте, управляйте и развертывайте свои удаленные хостинговые данные через вашу интерактивную панель управления Studio. @@ -192,7 +192,7 @@ const Comment = defineTable({ ## Справочник по CLI Astro DB -Astro DB включает в себя набор команд CLI для взаимодействия с базой данных вашего проекта на хостинге и учетной записью [Astro Studio](/ru/recipes/studio/). +Astro DB включает в себя набор команд CLI для взаимодействия с базой данных вашего проекта на хостинге и учетной записью [Astro Studio](/ru/guides/astro-db/#astro-studio). Эти команды вызываются автоматически при использовании действия GitHub CI, а также могут быть вызваны вручную с помощью CLI `astro db`. diff --git a/src/content/docs/ru/recipes/studio.mdx b/src/content/docs/ru/recipes/studio.mdx deleted file mode 100644 index 7b240e69c1c37..0000000000000 --- a/src/content/docs/ru/recipes/studio.mdx +++ /dev/null @@ -1,132 +0,0 @@ ---- -title: 'Astro Studio' -description: Интерактивная панель для управления Astro DB. -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; -import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'; - -[Веб-портал Astro Studio](http://studio.astro.build) позволяет вам подключаться и управлять вашими удаленными [базами данных Astro DB](/ru/guides/astro-db/) через веб-интерфейс или с использованием [CLI-команд](/ru/reference/cli-reference/#astro-studio-cli). - -Из вашей панели управления Studio у вас есть доступ к управлению учетной записью, справочным статьям и консоли сообщений поддержки. - -Посетите [Astro Studio](http://studio.astro.build), чтобы зарегистрироваться или войти в систему. - -## Создание нового проекта Studio - -Существует два способа создания проекта в Astro Studio: - -1. [**Использовать веб-интерфейс Astro Studio**](https://studio.astro.build) для создания из нового или существующего репозитория GitHub. - - Чтобы начать, нажмите кнопку "create project" в заголовке и следуйте инструкциям. Astro Studio подключится к вашему репозиторию GitHub и создаст новую хостинговую базу данных для вашего проекта. - -2. **Использовать Astro Studio CLI** для создания из любого локального проекта Astro. Для начала можно выполнить следующие команды: - - - - ```shell - # Войдите в Astro Studio с помощью вашей учетной записи GitHub - npx astro login - - # Свяжите новый проект, следуя инструкциям - npx astro link - - # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных - npx astro db push - ``` - - - ```shell - # Войдите в Astro Studio с помощью вашей учетной записи GitHub - pnpm astro login - - # Свяжите новый проект, следуя инструкциям - pnpm astro link - - # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных - pnpm astro db push - ``` - - - ```shell - # Log in to Astro Studio with your GitHub account - yarn astro login - - # Свяжите новый проект, следуя инструкциям - yarn astro link - - # (Необязательно) Отправьте вашу локальную конфигурацию базы данных на удаленную базу данных - yarn astro db push - ``` - - - - После того как вы вошли в систему и успешно подключились, вы можете выполнять все команды Astro DB для управления удаленной базой данных. - - О всех доступных командах см. в [справочнике Astro DB CLI](/ru/guides/integrations-guide/db/#справочник-по-cli-astro-db). - - -## Развёртывание с подключением к Studio - -Вы можете развернуть свой проект Astro DB с живым подключением к вашей базе данных Studio. Это возможно на любой платформе развёртывания с использованием статических сборок или [адаптера SSR](/ru/guides/server-side-rendering/). - -Сначала настройте свою команду сборки для подключения к Studio с использованием флага `--remote`. В этом примере флаг применяется к скрипту `"build"` в файле `package.json` вашего проекта. Если ваша платформа развёртывания принимает команду сборки, убедитесь, что она установлена на `npm run build`. - - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### Создание токена приложения Studio - -Для доступа к вашей базе данных Studio из продакшн-развёртывания вам нужно создать токен приложения. Вы можете создать токен приложения на панели управления вашего проекта Studio, перейдя на вкладку **Settings** и выбрав **Tokens**. - -Скопируйте сгенерированный токен и примените его в качестве переменной окружения / секрета окружения на вашей платформе развёртывания, используя имя `ASTRO_STUDIO_APP_TOKEN`. - -## Настройте действие GitHub CI - -Вы можете автоматически отправлять изменения схемы в вашу базу данных Studio с использованием действия Studio CI. Это позволит убедиться, что изменения могут быть внесены безопасно, и поддерживать конфигурацию в актуальном состоянии при каждом слиянии с `main`. - -[Следуйте документации GitHub](https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository), чтобы настроить новый секрет в вашем репозитории с именем `ASTRO_STUDIO_APP_TOKEN` и вашим токеном приложения Studio в качестве значения секрета. - -После того как секрет настроен, создайте новый файл рабочего процесса GitHub Actions в директории проекта `.github/workflows` для проверки репозитория и установки Node.js в качестве шагов, а также используйте действие `withastro/action-studio` для синхронизации изменений схемы. - -После настройки секрета создайте новый файл рабочего процесса GitHub Actions в директории проекта `.github/workflows` для проверки репозитория и установки Node.js в качестве шагов, а также используйте действие `withastro/action-studio` для синхронизации изменений схемы. - -Действие запустит `astro db verify` на всех [событиях-триггерах](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows), чтобы убедиться, что изменения схемы могут быть применены безопасно. Если вы специально добавите триггер **[push](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push)**, действие перенесет эти изменения в базу данных Studio. - -Приведенный пример GitHub Action `_studio.yml` отправляет изменения при каждом обновлении ветки `main`: - - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` \ No newline at end of file diff --git a/src/content/docs/zh-cn/guides/astro-db.mdx b/src/content/docs/zh-cn/guides/astro-db.mdx index d98d53e6e32e5..41277ab6fa8fe 100644 --- a/src/content/docs/zh-cn/guides/astro-db.mdx +++ b/src/content/docs/zh-cn/guides/astro-db.mdx @@ -10,7 +10,7 @@ import ReadMore from '~/components/ReadMore.astro'; import StudioHeading from '~/components/StudioHeading.astro'; import { Steps } from '@astrojs/starlight/components'; -Astro DB 是一款专为 Astro 设计的全托管 SQL 数据库。你可以在本地开发或者连接到我们 [Astro Studio](/zh-cn/recipes/studio/) 平台上托管的数据库。 +Astro DB 是一款专为 Astro 设计的全托管 SQL 数据库。你可以在本地开发或者连接到我们 [Astro Studio](#astro-studio) 平台上托管的数据库。 ## 安装 @@ -338,9 +338,134 @@ export default async function () { ## Astro Studio -Astro DB 可以[连接到 Astro Studio 平台](/zh-cn/recipes/studio/),快速为你的项目添加一个托管数据库。你可以从 Astro Studio 仪表盘上查看、管理和部署新的托管数据库。 +Astro DB 可以连接到 Astro Studio 平台,快速为你的项目添加一个托管数据库。你可以从 Astro Studio 仪表盘上查看、管理和部署新的托管数据库。 -要创建一个新项目,你可以使用[现成的模板](https://studio.astro.build)或访问[Astro Studio 指南](/zh-cn/recipes/studio/#创建新的-studio-项目)。 +[Astro Studio 网页门户](http://studio.astro.build) 允许你通过网页界面或使用 [CLI 命令](/zh-cn/reference/cli-reference/#astro-studio-cli) 连接并管理你的远程托管的 [Astro DB 数据库](/zh-cn/guides/astro-db/)。 + +在你的 Studio 仪表板,你可以访问账号管理、帮助文章和支持消息控制台等。 + +访问 [Astro Studio](http://studio.astro.build) 进行注册或登录。 + + +### 创建新的 Studio 项目 + + +在 Astro Studio 中有两种方式创建项目: + +1. [**使用 Astro Studio 网页界面**](https://studio.astro.build)从新的或现有的 GitHub 仓库创建。 + + 点击页头中的 "create project" 按钮并按照说明开始操作。Astro Studio 将连接到你的 GitHub 仓库,并为你的项目创建一个新的托管数据库。 + +2. **使用 Astro Studio CLI** 从任何本地 Astro 项目创建。你可以运行以下命令开始: + + + + ```shell + # 使用你的 GitHub 账号登录到 Astro Studio + npx astro login + + # 根据提示链接到一个新的项目 + npx astro link + + # (可选) 将你的本地数据库配置推送到远程数据库 + npx astro db push + ``` + + + ```shell + # 使用你的 GitHub 账号登录到 Astro Studio + pnpm astro login + + # 根据提示链接到一个新的项目 + pnpm astro link + + # (可选) 将你的本地数据库配置推送到远程数据库 + pnpm astro db push + ``` + + + ```shell + # 使用你的 GitHub 账号登录到 Astro Studio + yarn astro login + + # 根据提示链接到一个新的项目 + yarn astro link + + # (可选) 将你的本地数据库配置推送到远程数据库 + yarn astro db push + ``` + + + + 一旦你已经成功登录并链接,你就可以运行所有的 Astro DB 命令来管理你的远程数据库。 + + 查看 [Astro DB CLI 参考](/zh-cn/guides/integrations-guide/db/#astro-db-cli-参考) 获取所有可用命令。 + + + +### 使用 Studio 连接进行部署 + + +你可以使用与你的 Studio 数据库的实时连接来部署你的 Astro DB 项目。这可以在任何使用静态构建或 [SSR 适配器](/zh-cn/guides/server-side-rendering/) 的部署平台上实现。 + +首先,配置你的构建命令以使用 `--remote` 标志与 Studio 连接。这个示例将该标志应用到你项目 `package.json` 中的 `"build"` 脚本。如果你的部署平台接受构建命令,确保这被设置成 `npm run build`。 + +```json title="package.json" "--remote" +{ + "scripts": { + "build": "astro build --remote" + } +} +``` + +#### 创建一个 Studio 应用令牌 + +你需要创建一个应用令牌来从生产部署访问你的 Studio 数据库。你可以通过导航到 **Settings** 标签页并选择 **Tokens** 从你的 Studio 项目仪表板创建一个应用令牌。 + +复制生成的令牌并在你的部署平台中使用名称 `ASTRO_STUDIO_APP_TOKEN` 作为环境变量 / 环境秘钥。 + + +### 设置 GitHub CI Action + + +你可以使用 Studio CI 流水线自动推送模式更改到你的 Studio 数据库。每当你合并到 `main` 时,这将会校验更改是否可以安全地进行,并且都会保持你的配置更新。 + +[按照 GitHub 的文档](https://docs.github.com/zh/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) 在你的仓库中配置一个新的秘钥,名称为 `ASTRO_STUDIO_APP_TOKEN`,并将你的 Studio 应用令牌作为秘钥的值。 + +一旦你的秘钥配置好,就在你的项目的 `.github/workflows` 目录中创建一个新的 GitHub Actions 工作流文件,将检出仓库和安装 Node.js 作为步骤,并使用 `withastro/action-studio` 动作来同步模式更改。 + +该动作会在所有 [事件触发器](https://docs.github.com/zh/actions/using-workflows/events-that-trigger-workflows) 上运行 `astro db verify`,以确保架构更改可以安全地应用。如果你特别添加了 **[push](https://docs.github.com/zh/actions/using-workflows/events-that-trigger-workflows#push)** 触发器,那么该动作会将这些更改推送到你的 Studio 数据库。 + +这个示例 GitHub Action `_studio.yml` 在 `main` 分支更新时推送更改: + +```yaml title=".github/workflows/_studio.yml" +name: Astro Studio + +env: + ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} + +on: + push: + branches: + - main + pull_request: + types: [opened, reopened, synchronize] + +jobs: + DB: + permissions: + contents: read + actions: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20 + - uses: jaid/action-npm-install@v1.2.1 + - uses: withastro/action-studio@main +``` ### 推送表架构 @@ -519,7 +644,7 @@ astro dev --remote -当你准备好部署时,参见我们的 [使用 Studio 连接进行部署指南](/zh-cn/recipes/studio/#使用-studio-连接进行部署)。 +当你准备好部署时,参见我们的 [使用 Studio 连接进行部署指南](#使用-studio-连接进行部署)。 @@ -603,7 +728,7 @@ export default async function() { 此外,这种方法不适用于无服务器(serverless)部署,因为在这些环境中文件系统不会持久化。 -对于全托管的解决方案,建议[连接到 Astro Studio 平台上托管的数据库](/zh-cn/recipes/studio/)。 +对于全托管的解决方案,建议[连接到 Astro Studio 平台上托管的数据库](#astro-studio)。 ::: 如果你能够接受这些风险,并且能够自己管理部署,你可以使用数据库文件,而不是连接到 Studio。 @@ -620,4 +745,4 @@ ASTRO_DATABASE_FILE=/srv/files/database.db astro build :::danger 如果你在部署时覆盖了你的 `.db` 文件,你将会丢失你的生产数据。请仔细遵循你的主机的部署方法流程,以防止数据丢失。 -::: \ No newline at end of file +::: diff --git a/src/content/docs/zh-cn/guides/integrations-guide/db.mdx b/src/content/docs/zh-cn/guides/integrations-guide/db.mdx index c07370dfd8165..74463b84ba88a 100644 --- a/src/content/docs/zh-cn/guides/integrations-guide/db.mdx +++ b/src/content/docs/zh-cn/guides/integrations-guide/db.mdx @@ -12,7 +12,7 @@ import ReadMore from '~/components/ReadMore.astro'; import Badge from '~/components/Badge.astro'; -Astro DB 是一个为 Astro 生态设计的全托管 SQL 数据库:你可以在本地使用 Astro 进行开发,并从你的 [Astro Studio 仪表板](/zh-cn/recipes/studio/) 进行部署。 +Astro DB 是一个为 Astro 生态设计的全托管 SQL 数据库:你可以在本地使用 Astro 进行开发,并从你的 [Astro Studio 仪表板](/zh-cn/guides/astro-db/#astro-studio) 进行部署。 有了 Astro DB,你就拥有了一个强大的、本地的、类型安全的工具,可以像关系数据库查询和构建内容。通过你的交互式 Studio 仪表板查看、管理和部署你的托管远程数据。 @@ -196,7 +196,7 @@ const Comment = defineTable({ ## Astro DB CLI 参考 -Astro DB 包含一组 CLI 命令,用于与你的托管项目数据库和你的 [Astro Studio](/zh-cn/recipes/studio/) 账号进行交互。 +Astro DB 包含一组 CLI 命令,用于与你的托管项目数据库和你的 [Astro Studio](/zh-cn/guides/astro-db/#astro-studio) 账号进行交互。 当使用 GitHub CI 流水线时,这些命令会被自动调用,你也可以使用 `astro db` CLI 手动调用它们。 diff --git a/src/content/docs/zh-cn/recipes/studio.mdx b/src/content/docs/zh-cn/recipes/studio.mdx deleted file mode 100644 index 1b66750ae879b..0000000000000 --- a/src/content/docs/zh-cn/recipes/studio.mdx +++ /dev/null @@ -1,128 +0,0 @@ ---- -title: 'Astro Studio' -description: 用于管理 Astro DB 的交互式仪表板。 -i18nReady: true ---- -import ReadMore from '~/components/ReadMore.astro'; -import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro' - -[Astro Studio 网页门户](http://studio.astro.build) 允许你通过网页界面或使用 [CLI 命令](/zh-cn/reference/cli-reference/#astro-studio-cli) 连接并管理你的远程托管的 [Astro DB 数据库](/zh-cn/guides/astro-db/)。 - -在你的 Studio 仪表板,你可以访问账号管理、帮助文章和支持消息控制台等。 - -访问 [Astro Studio](http://studio.astro.build) 进行注册或登录。 - -## 创建新的 Studio 项目 - -在 Astro Studio 中有两种方式创建项目: - -1. [**使用 Astro Studio 网页界面**](https://studio.astro.build)从新的或现有的 GitHub 仓库创建。 - - 点击页头中的 "create project" 按钮并按照说明开始操作。Astro Studio 将连接到你的 GitHub 仓库,并为你的项目创建一个新的托管数据库。 - -2. **使用 Astro Studio CLI** 从任何本地 Astro 项目创建。你可以运行以下命令开始: - - - - ```shell - # 使用你的 GitHub 账号登录到 Astro Studio - npx astro login - - # 根据提示链接到一个新的项目 - npx astro link - - # (可选) 将你的本地数据库配置推送到远程数据库 - npx astro db push - ``` - - - ```shell - # 使用你的 GitHub 账号登录到 Astro Studio - pnpm astro login - - # 根据提示链接到一个新的项目 - pnpm astro link - - # (可选) 将你的本地数据库配置推送到远程数据库 - pnpm astro db push - ``` - - - ```shell - # 使用你的 GitHub 账号登录到 Astro Studio - yarn astro login - - # 根据提示链接到一个新的项目 - yarn astro link - - # (可选) 将你的本地数据库配置推送到远程数据库 - yarn astro db push - ``` - - - - 一旦你已经成功登录并链接,你就可以运行所有的 Astro DB 命令来管理你的远程数据库。 - - 查看 [Astro DB CLI 参考](/zh-cn/guides/integrations-guide/db/#astro-db-cli-参考) 获取所有可用命令。 - - -## 使用 Studio 连接进行部署 - -你可以使用与你的 Studio 数据库的实时连接来部署你的 Astro DB 项目。这可以在任何使用静态构建或 [SSR 适配器](/zh-cn/guides/server-side-rendering/) 的部署平台上实现。 - -首先,配置你的构建命令以使用 `--remote` 标志与 Studio 连接。这个示例将该标志应用到你项目 `package.json` 中的 `"build"` 脚本。如果你的部署平台接受构建命令,确保这被设置成 `npm run build`。 - -```json title="package.json" "--remote" -{ - "scripts": { - "build": "astro build --remote" - } -} -``` - -### 创建一个 Studio 应用令牌 - -你需要创建一个应用令牌来从生产部署访问你的 Studio 数据库。你可以通过导航到 **Settings** 标签页并选择 **Tokens** 从你的 Studio 项目仪表板创建一个应用令牌。 - -复制生成的令牌并在你的部署平台中使用名称 `ASTRO_STUDIO_APP_TOKEN` 作为环境变量 / 环境秘钥。 - -## 设置 GitHub CI Action - -你可以使用 Studio CI 流水线自动推送模式更改到你的 Studio 数据库。每当你合并到 `main` 时,这将会校验更改是否可以安全地进行,并且都会保持你的配置更新。 - -[按照 GitHub 的文档](https://docs.github.com/zh/actions/security-guides/using-secrets-in-github-actions#creating-secrets-for-a-repository) 在你的仓库中配置一个新的秘钥,名称为 `ASTRO_STUDIO_APP_TOKEN`,并将你的 Studio 应用令牌作为秘钥的值。 - -一旦你的秘钥配置好,就在你的项目的 `.github/workflows` 目录中创建一个新的 GitHub Actions 工作流文件,将检出仓库和安装 Node.js 作为步骤,并使用 `withastro/action-studio` 动作来同步模式更改。 - -该动作会在所有 [事件触发器](https://docs.github.com/zh/actions/using-workflows/events-that-trigger-workflows) 上运行 `astro db verify`,以确保架构更改可以安全地应用。如果你特别添加了 **[push](https://docs.github.com/zh/actions/using-workflows/events-that-trigger-workflows#push)** 触发器,那么该动作会将这些更改推送到你的 Studio 数据库。 - -这个示例 GitHub Action `_studio.yml` 在 `main` 分支更新时推送更改: - -```yaml title=".github/workflows/_studio.yml" -name: Astro Studio - -env: - ASTRO_STUDIO_APP_TOKEN: ${{secrets.ASTRO_STUDIO_APP_TOKEN }} - -on: - push: - branches: - - main - pull_request: - types: [opened, reopened, synchronize] - -jobs: - DB: - permissions: - contents: read - actions: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 20 - - uses: jaid/action-npm-install@v1.2.1 - - uses: withastro/action-studio@main -``` diff --git a/src/i18n/ar/nav.ts b/src/i18n/ar/nav.ts index 6edde33e1db2a..35e8b89f3f7e0 100644 --- a/src/i18n/ar/nav.ts +++ b/src/i18n/ar/nav.ts @@ -37,7 +37,6 @@ export default NavDictionary({ examples: 'الأمثلة', 'guides/migrate-to-astro': 'التحويل إلى أسترو', - 'recipes/studio': 'اتصال باستديو استرو', 'guides/cms': 'ربط نظام إدارة المحتوى', 'guides/backend': 'إضافة خدمات قفويّة', 'guides/deploy': 'نشر موقعك', diff --git a/src/i18n/de/nav.ts b/src/i18n/de/nav.ts index ae7b0352ca0bd..27714d1ec7262 100644 --- a/src/i18n/de/nav.ts +++ b/src/i18n/de/nav.ts @@ -45,7 +45,6 @@ export default NavDictionary({ // Recipes examples: 'Anleitungen', 'guides/migrate-to-astro': 'Zu Astro migrieren', - 'recipes/studio': 'Mit Astro Studio verbinden', 'guides/cms': 'Ein CMS verbinden', 'guides/backend': 'Backend-Dienste hinzufügen', 'guides/deploy': 'Website veröffentlichen', diff --git a/src/i18n/en/nav.ts b/src/i18n/en/nav.ts index 9d6cbf05f2624..9b60cba1dfbfb 100644 --- a/src/i18n/en/nav.ts +++ b/src/i18n/en/nav.ts @@ -109,7 +109,6 @@ export default [ { text: 'Recipes', header: true, type: 'learn', key: 'examples' }, { text: 'Migrate to Astro', slug: 'guides/migrate-to-astro', key: 'guides/migrate-to-astro' }, - { text: 'Connect to Astro Studio', slug: 'recipes/studio', key: 'recipes/studio' }, { text: 'Connect a CMS', slug: 'guides/cms', key: 'guides/cms' }, { text: 'Add backend services', slug: 'guides/backend', key: 'guides/backend' }, { text: 'Deploy your site', slug: 'guides/deploy', key: 'guides/deploy' }, diff --git a/src/i18n/fr/nav.ts b/src/i18n/fr/nav.ts index e936b8ec5b73b..7dd8a9fe86811 100644 --- a/src/i18n/fr/nav.ts +++ b/src/i18n/fr/nav.ts @@ -37,7 +37,6 @@ export default NavDictionary({ examples: 'Méthodes', 'guides/migrate-to-astro': 'Migrer vers Astro', - 'recipes/studio': 'Connecter a Astro Studio', 'guides/cms': 'Connecter un CMS', 'guides/backend': 'Ajouter des services Backend', 'guides/deploy': 'Déployez votre site', diff --git a/src/i18n/it/nav.ts b/src/i18n/it/nav.ts index 1fc0d0354b478..446d9510268b7 100644 --- a/src/i18n/it/nav.ts +++ b/src/i18n/it/nav.ts @@ -38,7 +38,6 @@ export default NavDictionary({ examples: 'Ricette', 'guides/migrate-to-astro': 'Passa ad Astro', - 'recipes/studio': 'Connetti Astro Studio', 'guides/cms': 'Connetti una CMS', 'guides/backend': 'Aggiungi un servizio backend', 'guides/deploy': 'Pubblica il tuo sito', diff --git a/src/i18n/ja/nav.ts b/src/i18n/ja/nav.ts index 808ddbfe7e292..5d4996c166162 100644 --- a/src/i18n/ja/nav.ts +++ b/src/i18n/ja/nav.ts @@ -38,7 +38,6 @@ export default NavDictionary({ examples: 'レシピ', 'guides/migrate-to-astro': 'Astroへの移行', - 'recipes/studio': 'Astro Studioとの接続', 'guides/cms': 'CMSとの接続', 'guides/backend': 'バックエンドサービスの追加', 'guides/deploy': 'サイトのデプロイ', diff --git a/src/i18n/ko/nav.ts b/src/i18n/ko/nav.ts index 7d41cbdb9ab18..6b5a761d2e21b 100644 --- a/src/i18n/ko/nav.ts +++ b/src/i18n/ko/nav.ts @@ -38,7 +38,6 @@ export default NavDictionary({ examples: '레시피', 'guides/migrate-to-astro': 'Astro로 전환', - 'recipes/studio': 'Astro Studio에 연결', 'guides/cms': 'CMS 연결', 'guides/backend': '백엔드 서비스 추가', 'guides/deploy': '사이트 배포', diff --git a/src/i18n/pl/nav.ts b/src/i18n/pl/nav.ts index 29c99a86a92af..07a3f2ebca32b 100644 --- a/src/i18n/pl/nav.ts +++ b/src/i18n/pl/nav.ts @@ -38,7 +38,6 @@ export default NavDictionary({ examples: 'Przykłady', 'guides/migrate-to-astro': 'Migracja do Astro', - 'recipes/studio': 'Połączenie z Astro Studio', 'guides/cms': 'Połączenie z CMS', 'guides/backend': 'Użycie usług backendowych', 'guides/deploy': 'Wdrażanie', diff --git a/src/i18n/pt-br/nav.ts b/src/i18n/pt-br/nav.ts index bff320b883d3e..43d18f929aa99 100644 --- a/src/i18n/pt-br/nav.ts +++ b/src/i18n/pt-br/nav.ts @@ -26,7 +26,6 @@ export default NavDictionary({ examples: 'Receitas', 'guides/migrate-to-astro': 'Migre para o Astro', - 'recipes/studio': 'Conecte ao Astro Studio', 'guides/cms': 'Conecte um CMS', 'guides/backend': 'Adicione serviços de backend', 'guides/integrations-guide': 'Adicione integrações', diff --git a/src/i18n/ru/nav.ts b/src/i18n/ru/nav.ts index 458b24f62894f..b6fcb34292e29 100644 --- a/src/i18n/ru/nav.ts +++ b/src/i18n/ru/nav.ts @@ -38,7 +38,6 @@ export default NavDictionary({ examples: 'Рецепты', 'guides/migrate-to-astro': 'Миграция на Astro', - 'recipes/studio': 'Подключитесь к Astro Studio', 'guides/cms': 'Подключение CMS', 'guides/backend': 'Добавление бэкэнд-сервисов', 'guides/deploy': 'Развёртывание сайта', diff --git a/src/i18n/zh-cn/nav.ts b/src/i18n/zh-cn/nav.ts index 1f073754e4a20..eea42d487a4e8 100644 --- a/src/i18n/zh-cn/nav.ts +++ b/src/i18n/zh-cn/nav.ts @@ -37,7 +37,6 @@ export default NavDictionary({ examples: '操作指南', 'guides/migrate-to-astro': '迁移到 Astro', - 'recipes/studio': '连接到 Astro Studio', 'guides/cms': '连接到 CMS', 'guides/backend': '添加后端服务', 'guides/deploy': '部署你的站点', diff --git a/vercel.json b/vercel.json index b34b33a0d9b1b..2af1a05b71cff 100644 --- a/vercel.json +++ b/vercel.json @@ -114,6 +114,11 @@ { "source": "/:lang/migrate/", "destination": "/:lang/guides/upgrade-to/v1/" }, - { "source": "/", "destination": "/en/getting-started/" } + { "source": "/", "destination": "/en/getting-started/" }, + + { + "source": "/:lang/recipes/studio/", + "destination": "/:lang/guides/astro-db/" + } ] }