【问题标题】:Deploying a vue project to surge.sh部署一个 vue 项目到浪涌.sh
【发布时间】:2018-04-03 15:10:04
【问题描述】:

我整天都在尝试将我的 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_TOKENSURGE_LOGIN。我真的不知道现在做什么。所以请帮忙。

【问题讨论】:

    标签: webpack vue.js vuejs2 travis-ci surge.sh


    【解决方案1】:

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

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

    幸运的是,Travis CI supports Surge.sh deployment directly,因此您无需在 after_success 步骤中直接使用 surge CLI 工具。看看上面的链接说明,看看你是怎么做的。

    更新:

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

    类似:

    install:
      - npm install
    script:
      - npm run build
    deploy:
      provider: etc...
    

    【讨论】:

    • 我已尝试将您的建议实施到我的 travis 配置中,但仍然无法正确部署,这是我当前的 travis 配置,如果有任何问题,请告诉我
    • 更新了我的答案。
    猜你喜欢
    • 2020-01-09
    • 2020-12-06
    • 1970-01-01
    • 2019-01-27
    • 2017-11-13
    • 2019-11-13
    • 1970-01-01
    • 2020-10-01
    • 2020-01-28
    相关资源
    最近更新 更多