将“ng build”上传到 S3 存储桶

我正在尝试将我的 angular-meteor 项目的 'ng build' 上传到 S3 Bucket。

这是我的 .yml 文件

on:
  push:
    branches:
    - dev

jobs:
  build:

    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Setup meteor
      uses: meteorengineer/setup-meteor@v1
      with:
        meteor-release: '1.8.1'
    

    - name: Install Node.js
      uses: actions/setup-node@v1
      with:
        node-version: '10.x'

    - name: NG build Angular
      run: ng build --prod

    - name: Deploy to S3
      uses: jakejarvis/s3-sync-action@master
      with:
        args: --acl public-read --delete

      env:
        AWS_S3_BUCKET: ${{ secrets.DEV_AWS_S3_BUCKET }}
        AWS_accESS_KEY_ID: ${{ secrets.AWS_accESS_KEY_ID }}
        AWS_SECRET_accESS_KEY: ${{ secrets.AWS_SECRET_accESS_KEY }}
        AWS_REGION: ${{ secrets.AWS_REGION }}
        SOURCE_DIR: 'browser'

运行此程序后,我收到此 NG build Angular 部分的错误消息

将“ng build”上传到 S3 存储桶

我还尝试运行 ng build --prodng build — prod — aotng build -- --prod 而不是运行 npm run build -- --prod,但我仍然收到相同的错误消息。

有人知道如何解决这个问题吗?

fmadcat 回答:将“ng build”上传到 S3 存储桶

默认情况下,GitHub 运行器没有 ng/angular cli。所以我们必须安装它。下面的一段代码应该为你完成这项工作。

on:
  push:
    branches:
    - dev

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Setup meteor
      uses: meteorengineer/setup-meteor@v1
      with:
        meteor-release: '1.8.1'
    - name: Install Node.js
      uses: actions/setup-node@v1
      with:
        node-version: '10.x'

    - name: Install Angular CLI
      run: npm install -g @angular/cli

    - name: NG build Angular
      run: ng build --prod
    - name: Deploy to S3
      uses: jakejarvis/s3-sync-action@master
      with:
        args: --acl public-read --delete
,

@angular/cli 安装为 devDependency,因此您必须使用:

- name: NG build Angular
  run: npx ng build --prod

或在 Angular 12+ 中

- name: NG build Angular
  run: npx ng build --configuration production
本文链接:https://www.f2er.com/1971.html

大家都在问