Render Env Guard
Use this skill when a deployment is failing because environment variables are missing, placeholder values leaked from templates, or service selection is ambiguous.
What this skill does
- - Resolves a Render service by ID or name
- Pulls service environment variables through Render API
- Validates required keys exist and are non-empty
- Flags suspicious values (template placeholders, localhost DB URLs, unexpanded
${VAR} refs) - Exits non-zero on any blocking issue so CI/deploy scripts can fail fast
When to use
- - Before
render deploy / render blueprint updates - After onboarding a new environment
- When runtime is showing config-related 5xx errors
Inputs
- -
RENDER_API_KEY (required) - one of:
-
RENDER_SERVICE_ID
-
RENDER_SERVICE_NAME
-
RENDER_API_BASE_URL (default
https://api.render.com/v1)
-
REQUIRED_ENV_KEYS (comma-separated, default:
DATABASE_URL,DIRECT_URL,SHADOW_DATABASE_URL,NEXT_PUBLIC_APP_URL)
Run
CODEBLOCK0
or with explicit values:
CODEBLOCK1
Output contract
- - Prints a short report with
PASS/ INLINECODE11 - Returns exit code
0 when all required keys are valid - Returns exit code
1 when any key is missing/invalid or service lookup fails
Notes
- - This checker is intentionally strict to prevent bad deploys.
- It validates values at the service level (what Render will inject at runtime), not local
.env files.
Render 环境守卫
当部署因环境变量缺失、模板中的占位符泄露或服务选择不明确而失败时,请使用此技能。
此技能的功能
- - 通过ID或名称解析Render服务
- 通过Render API拉取服务环境变量
- 验证必需的键是否存在且非空
- 标记可疑值(模板占位符、本地主机数据库URL、未展开的${VAR}引用)
- 遇到阻塞问题时以非零退出,使CI/部署脚本能够快速失败
使用时机
- - 在render deploy / render blueprint更新之前
- 接入新环境之后
- 运行时出现配置相关的5xx错误时
输入参数
- RENDER
SERVICEID
- RENDER
SERVICENAME
- RENDER
APIBASE_URL(默认值 https://api.render.com/v1)
- REQUIRED
ENVKEYS(逗号分隔,默认值:DATABASE
URL,DIRECTURL,SHADOW
DATABASEURL,NEXT
PUBLICAPP_URL)
运行方式
bash
bash scripts/check-render-env.sh
或使用显式参数:
bash
RENDERSERVICENAME=my-service \
REQUIREDENVKEYS=DATABASEURL,NEXTPUBLICAPPURL,STRIPESECRETKEY \
bash scripts/check-render-env.sh
输出约定
- - 打印包含PASS/FAIL的简短报告
- 当所有必需的键均有效时返回退出码0
- 当任何键缺失/无效或服务查找失败时返回退出码1
注意事项
- - 此检查器故意设置严格规则以防止不良部署。
- 它在服务级别(即Render在运行时注入的内容)验证值,而非本地.env文件。