name: "环境变量配置示例" on: push: branches: - main workflow_dispatch: jobs: release-with-env: runs-on: ubuntu-latest name: "使用环境变量配置发布" steps: - name: 检出代码 uses: actions/checkout@v4 with: fetch-depth: 0 token: ${{ secrets.GITEA_TOKEN }} - name: 设置构建环境 uses: actions/xgj/setup-env@main with: docker-password: ${{ secrets.DOCKER_PASSWORD }} skip-kubectl: "true" - name: 安装依赖 uses: actions/xgj/npm-install@main with: package-manager: "npm" - name: 发布构建(环境变量配置) id: release uses: actions/xgj/release-web@main with: gitea-token: ${{ secrets.GITEA_TOKEN }} env: # 🌍 任意数量的环境变量都会自动传递给 release-it 命令 APP_ENV: "production" SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} SENTRY_DSN: ${{ vars.SENTRY_DSN }} SENTRY_VITE: "true" # 自定义环境变量示例 BUILD_NUMBER: ${{ github.run_number }} BRANCH_NAME: ${{ github.ref_name }} COMMIT_SHA: ${{ github.sha }} # release-it 相关的环境变量 RELEASE_VERSION_TYPE: "patch" CHANGELOG_PRESET: "conventionalcommits" # 其他可能需要的环境变量 CI: "true" NODE_ENV: "production" - name: 多环境配置示例 uses: actions/xgj/release-web@main with: gitea-token: ${{ secrets.GITEA_TOKEN }} docker-tags: | env-example ${{ github.ref_name }} env: # 🎯 根据分支设置不同的环境变量 APP_ENV: ${{ github.ref == 'refs/heads/main' && 'production' || 'staging' }} SENTRY_VITE: ${{ github.ref == 'refs/heads/main' && 'true' || 'false' }} # 动态环境变量 DEPLOY_TARGET: ${{ github.ref == 'refs/heads/main' && 'prod' || 'dev' }} FEATURE_FLAG_NEW_UI: ${{ contains(github.event.head_commit.message, '[enable-new-ui]') && 'true' || 'false' }} - name: 发布结果 run: | echo "🎉 发布完成!" echo "📦 版本: ${{ steps.release.outputs.version }}" echo "" echo "✨ 环境变量的优势:" echo " 🌍 可以传递任意数量的环境变量" echo " 🔄 支持动态配置" echo " 🎯 基于条件设置不同值" echo " 🔧 release-it 和构建脚本可直接使用" echo " 📋 不需要修改 action 代码"