【问题标题】:Trouble deploying static site using Gitlab CI使用 Gitlab CI 部署静态站点时遇到问题
【发布时间】:2016-11-25 09:30:38
【问题描述】:

我目前正在开发一个包含 Angular SPA 前端存储库和 nodeJS 后端存储库的项目。 我一直在研究如何在编译/缩小我的项目后使用 Gitlab-CI 将我的应用程序部署到 RHEL/centOS。 问题是,我不知道如何使用例如。 YUI Compressor 用于在 gitlab-ci.yml 文件中进行压缩。 我也很难使用例如 SSH 将我的文件部署到我的网络服务器上的公用文件夹或触发 pm2 以重新加载应用程序。 我很想用这种方法实现一个基本的单元测试,但我仍然无法掌握它是如何完成的。 我很高兴听到你的任何建议,可以扩展我的知识。 谢谢!

【问题讨论】:

    标签: continuous-integration gitlab gitlab-ci


    【解决方案1】:

    假设你使用 yuicompressor 作为 jar,那么在 .gitlab-ci.yml 中写这个怎么样:

    build:
      script:
      - yuicompressor.sh
    

    确保您的路径中有一个 shell 脚本,其中 chmod +x 位设置执行此操作:

    #!/bin/sh
    java -jar /path/to/your/yuicompressor-x.y.z.jar
    

    该文件必须在您的运行器 vm 上,名为 yuicompressor.sh。将跑步者资源的路径硬编码到 .gitlab-ci.yml 中对我来说似乎并不好。

    请注意,您可能需要与 java 应用程序不同的参数。

    我将跑步者需要的所有可执行工具(主要是脚本)放入文件夹 /glrunner/tools,并在启动时将 /glrunner/tools 放入跑步者的 PATH 中。

    如果您因为使用 Dockerized 运行程序而遇到问题,请使用 Linux VM 上的 shell 运行程序在 docker 外部运行一切,然后再转移到容器。这是人们犯的第一个新手错误。

    一旦你使用容器并且你有一个 Dockerfile 来启动你的工具,也许你不需要像我最初建议的那样考虑静态的“工具/脚本”文件夹,但这是一个很好的开始方式,先学 Gitlab CI Runners,再学 Docker。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-12-09
      • 1970-01-01
      • 2018-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多