0

我整天都在尝试将我的 Vue 项目部署到 Surge.sh,该项目使用webpack-simple模板。

有趣的是,如果我从 CLI 手动部署它,它会工作,但如果我将它推送到 GitHub 并从 Travis CI 部署它,它就不会工作。如果我从 Travis 部署它,它将不包含该dist/文件夹,因此该站点将无法运行。

这是我的 Travis CI 配置:

language: node_js
node_js:
  - "node"
  - "7"
cache:
  directories:
    - node_modules/
    - dist/
install:
  - npm install
after_success:
  - surge --project . --domain mydomain.surge.sh

我确实添加了两个环境变量,即SURGE_TOKEN& SURGE_LOGIN。我真的不知道现在做什么。所以请帮忙。

4

1 回答 1

0

在 Travis 构建步骤之后您的dist文件夹丢失的原因是因为在每个步骤之后都会清理环境。

为了防止这种情况,您需要deploy:在您的部分中指定一个部分.travis.yml并设置skip_cleanup: true设置。

幸运的是,Travis CI直接支持 Surge.sh 部署,因此您无需一步一步surge直接使用 CLI 工具after_success。看看上面的链接说明,看看你是怎么做的。

更新:

我认为您需要script:在部署站点之前添加一个步骤来构建站点。否则我认为这个命令不会被其他任何东西调用。

就像是:

install:
  - npm install
script:
  - npm run build
deploy:
  provider: etc...
于 2018-04-04T10:26:04.663 回答