代码之家  ›  专栏  ›  技术社区  ›  ZombieChowder

GitHub操作未将环境变量传递给Vite构建

  •  0
  • ZombieChowder  · 技术社区  · 1 年前

    我正在尝试创建一个GitHub操作,以便在S3 Bucket上部署React应用程序。我遇到的问题与 环境变量 在与Vite的构建过程中得到支持。

    当所有对GitHub操作的检查通过并部署应用程序时,似乎没有一个ENVS通过。

    name: Upload to S3
    
    on:
      pull_request:
      push:
        branches:
          - dev
    jobs:
      build:
        runs-on: ubuntu-latest
        
        strategy:
          matrix:
            node-version: [14.x]
    
        steps:
          - uses: actions/checkout@v3
          - name: Configure AWS Credentials
            uses: aws-actions/configure-aws-credentials@v2
            with:
              aws-region: ${{ secrets.AWS_REGION }}
              aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
              aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
            env:
              VITE_APP_BASE_URL: ${{ secrets.VITE_APP_BASE_URL }}
              AWS_S3_BUCKET: ${{ secrets.AWS_REBRAND_BUCKET_NAME }}
              VITE_APP_ALGOLIA_APP_ID:  ${{ secrets.VITE_APP_ALGOLIA_APP_ID }}
              VITE_APP_ENVIRONMENT: development
          
          - name: Yarn Install
            run: yarn install
          - name: Yarn Build
            run: yarn build
          - name: Deploy app build to S3 bucket
            run: aws s3 sync ./build/ s3://${{ secrets.AWS_REBRAND_BUCKET_NAME }} --delete
    

    我的 yarn build 命令只是 "build": "vite build" 。我注意到的一件奇怪的事情是,诸如 aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} 正确传递。

    我不知道为什么我的其他人 envs 根本没有通过。我的yaml不正确吗?

    1 回复  |  直到 1 年前
        1
  •  2
  •   Taras Drapalyuk    1 年前

    您已将环境变量放置在 Configure AWS Credentials 步您应该将这些变量移动到 Yarn Build 步骤,因为这是需要它们的地方。另一种选择是将它们移动到工作级别,以便在每一步都可以访问它们。