Skip to content

Commit 0744a73

Browse files
committed
feat(docs): Clarify astro:env/server variable evaluation and secret handling
1 parent e7d1b49 commit 0744a73

File tree

5 files changed

+25
-0
lines changed

5 files changed

+25
-0
lines changed

src/content/docs/en/guides/environment-variables.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,11 @@ There are three kinds of environment variables, determined by the combination of
285285
**Secret client variables** are not supported because there is no safe way to send this data to the client. Therefore, it is not possible to configure both `context: "client"` and `access: "secret"` in your schema.
286286
:::
287287
288+
:::caution
289+
Environment variables are evaluated immediately when `astro:env/server` is imported. Therefore, **secret server variables** are validated even when running `astro build`.
290+
If your build process does not have access to these secrets, the build will fail. To fix this, you can pass dummy values to the build command to satisfy the validation.
291+
:::
292+
288293
### Data types
289294
290295
There are currently four data types supported: strings, numbers, enums, and booleans:

src/content/docs/es/guides/environment-variables.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,11 @@ Hay tres tipos de variables de entorno, determinados por la combinación de las
289289
**Las variables secretas de cliente** no son compatibles porque no existe una forma segura de enviar estos datos al cliente. Por lo tanto, no es posible configurar simultáneamente `context: "client"` y `access: "secret"` en tu esquema.
290290
:::
291291
292+
:::caution
293+
Al importar `astro:env/server`, las variables de entorno se evalúan de inmediato. Por lo tanto, las **variables secretas del servidor** también se validan al ejecutar `astro build`.
294+
Si el proceso de compilación no tiene acceso a estos secretos, la compilación fallará. Para solucionar este problema, puedes pasar valores ficticios en el comando de compilación para que la validación se realice correctamente.
295+
:::
296+
292297
### Tipos de datos
293298
294299
Actualmente se admiten cuatro tipos de datos: cadenas, números, enumeraciones y booleanos:

src/content/docs/fr/guides/environment-variables.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,11 @@ Il existe trois types de variables d'environnement, déterminées par la combina
285285
Les **variables secrètes du client** ne sont pas prises en charge car il n'existe aucun moyen sûr d'envoyer ces données au client. Par conséquent, il n'est pas possible de configurer à la fois `context: "client"` et `access: "secret"` dans votre schéma.
286286
:::
287287
288+
:::caution
289+
Les variables d’environnement sont évaluées immédiatement lorsque astro:env/server est importé. Ainsi, les variables serveur secrètes sont également validées lors de l’exécution de astro build.
290+
Si votre processus de build n’a pas accès à ces variables secrètes, le build échouera. Pour résoudre ce problème, vous pouvez fournir des valeurs factices dans la commande de build afin de satisfaire la validation.
291+
:::
292+
288293
### Types de données
289294
290295
Il existe actuellement quatre types de données pris en charge : les chaînes de caractères, les nombres, les énumérations et les booléens :

src/content/docs/ko/guides/environment-variables.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,11 @@ const data = await fetch(`${API_URL}/users`, {
285285
**비밀 클라이언트 변수**는 지원되지 않습니다. 이 데이터를 클라이언트로 안전하게 전송할 방법이 없기 때문입니다. 따라서 스키마에서 `context: "client"``access: "secret"`을 모두 구성하는 것은 불가능합니다.
286286
:::
287287
288+
:::caution
289+
`astro:env/server`를 가져오면 환경 변수가 즉시 평가됩니다. 따라서 **비밀 서버 변수**`astro build` 실행 시에도 확인됩니다.
290+
빌드 환경에서 이러한 비밀 값에 접근할 수 없으면 빌드가 실패합니다. 이 문제를 해결하려면, 검증을 통과하도록 빌드 명령어에 임시 값(더미 값)을 전달하면 됩니다.
291+
:::
292+
288293
### 데이터 타입
289294
290295
현재 문자열, 숫자, enum 및 부울의 네 가지 데이터 타입이 지원됩니다.

src/content/docs/zh-cn/guides/environment-variables.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,11 @@ const data = await fetch(`${API_URL}/users`, {
286286
不支持 **私密的客户端变量**,因为没有一种可以将这些数据安全发送到客户端的方式。所以,不能在你的 schema 中配置 `context: "client"``access: "secret"`
287287
:::
288288
289+
:::caution
290+
导入 `astro:env/server` 后,环境变量会被立即评估。因此,**私密的服务器变量** 在执行 `astro build` 时也会进行验证。
291+
如果构建环境无法访问这些私密变量,构建将会失败。为了解决这个问题,可以在构建命令中传入临时值(虚拟值)以通过验证。
292+
:::
293+
289294
### 数据类型
290295
291296
目前支持四种数据类型:字符串、数字、枚举和布尔值:

0 commit comments

Comments
 (0)