0

所以我正在构建一个带有 Angular 4 前端的 Spring Boot 应用程序,我需要自动化构建,我正在为此使用 AWS 开发人员套件

我已经创建了监视我的 repo 更改的管道,并且我有这个 buildspec.yml 具有以下配置

version: 0.2

phases:
  install:
    commands:
     - sudo apt-add-repository ppa:chris-lea/node.js
     - sudo apt-get -y update
     - sudo apt-get -y install nodejs=7.9.0
     - node -v
     - sudo npm install -g @angular/cli
  pre_build:
   commands:
     - sudo cd src/main/frontend
     - sudo npm install && sudo npm run deploy-dev
     - sudo cd .. && sudo cd .. && sudo cd..
  build:
   commands:
    - echo Build started on `date`
    - mvn clean install
 post_build:
   commands:
    - mv target/ROOT.war.original ROOT.war
artifacts:
  files:
    - '**/*'
  base-directory: 'target/ROOT'

它基本上是安装nodejs,然后安装angular-cli来构建Angular 4,然后在spring boot中将所有dist/*移动到/resources/public,然后运行maven build。

我的问题是我无法安装节点我尝试了很多方法都没有为我工作,任何人都可以帮助我第二眼或对此有任何经验吗?

我的 AWS codebuild 构建环境是 Java8

4

1 回答 1

0

好吧,我最终通过 bash 脚本安装了 nodejs v7.0.0

我用下面的脚本

    set -ex \
        && for key in \
          9554F04D7259F04124DE6B476D5A82AC7E37093B \
          94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
          0034A06D9D9B0064CE8ADF6BF1747F4AD2306D93 \
          FD3A5288F042B6850C66B31F09FE44734EB7990E \
          71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
          DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
          B9AE9905FFD7803F25714661B63B535A4C206CA9 \
          C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
        ; do \
          gpg --keyserver ha.pool.sks-keyservers.net --recv-keys"$key"; \
        done


        sudo apt-get update

       wget "https://nodejs.org/download/release/v7.0.0/node-v7.0.0-linux-
       x64.tar.gz" -O node-v7.0.0-linux-x64.tar.gz \
        && wget "https://nodejs.org/download/release/v7.0.0/SHASUMS256.txt.asc" -O SHASUMS256.txt.asc \
        && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
        && grep " node-v7.0.0-linux-x64.tar.gz\$" SHASUMS256.txt | sha256sum -c - \
        && tar -xzf "node-v7.0.0-linux-x64.tar.gz" -C /usr/local --strip-components=1 \
        && rm "node-v7.0.0-linux-x64.tar.gz" SHASUMS256.txt.asc SHASUMS256.txt \
        && ln -s /usr/local/bin/node /usr/local/bin/nodejs \
        && rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/*

基本上这个脚本会为你下载并安装 nodejs v7.0.0

我从这里拿的

嗨,未来的奋斗者,我给你留了点甜点 3>

于 2017-10-07T14:01:13.217 回答