【问题标题】:GitLab-CI for grails project用于 grails 项目的 GitLab-CI
【发布时间】:2015-10-09 15:28:15
【问题描述】:

我搬到 GitLab 并使用他所有的工具。 我在带有 Tomcat 的 CentOs7 上安装了 GitLab v8.0.4。我创建了一个项目并将一个 grails 示例推送到 git 项目。 现在,我希望能够在每次将文件推送到项目时启动部署。在 jenkis 中,我能够拉取项目,使用 grails cmd 工具对其进行编译,并将战争部署到 Tomcat。 我正在尝试做同样的事情,但我真的感到迷茫。有没有人从来没有尝试过这个,可以告诉我怎么做吗?

【问题讨论】:

    标签: grails gitlab gitlab-ci gitlab-ci-runner


    【解决方案1】:

    如果部署脚本与项目本身位于同一存储库中,则可以有一个构建阶段和一个部署阶段。如果构建阶段成功,它将开始部署阶段。 .gitlab-ci.yml 可能如下所示:

    stages:
      - build
      - deploy
    
    build_grails:
      stage: build
      script:
      - build-script_of_grails_cmd
    
    deploy_to_tomcat:
      stage: deploy
      script:
      - deploy_script_with_capistrano_or_whatever
    

    如果您的部署代码在另一个项目中,您可以在构建阶段完成后触发该项目开始部署。部署 repo 应该有一个触发器设置。这可以在部署项目的持续集成菜单中完成。设置触发器后,GitLab 会生成一个触发 curl sn-p 您可以粘贴到 yml 文件中。 grails 应用程序 gitlab-ci.yml 将如下所示:

    stages:
      - build
      - deploy
    
    build_grails:
      stage: build
      script:
      - build-script_of_grails_cmd
    
    trigger:
      type: deploy
      script:
        - curl -X POST -F token=4579a6f10c51f0a4b7bdbd384f6e53 https://gitlab-comewhere.com/ci/api/v1/projects/5/refs/master/trigger
    

    部署项目中的 gitlab-ci.yml 将如下所示:

    stages:
      - deploy
    
    deploy_to_tomcat:
      stage: deploy
      script:
      - deploy_script_with_capistrano_or_whatever
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-09
      • 2022-01-19
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-20
      相关资源
      最近更新 更多