gitee上构建前台流水线

happy young...大约 2 分钟技术流水线

此前使用个人服务器直接拉取代码仓构建部署。 服务重构后,服务器配置无法支撑完成构建。 尝试通过gitee平台的流水线进行自动构建。

核心就两个步骤:构建打包和上传部署

构建打包:选择NodeJs构建。 需要配置的也较少。选择Node版本号,输入shell构建指令,配置打包后的文件目录。

上传部署:我这里选择的主机部署,需要提前配置主机组和机器。gitee提供了指令可以快捷的添加公网主机。选择上一阶段的打包制品,下载到机器指定路径,然后自定义shell指令完成部署。我这里仅做了解压和移动文件路径的操作。

流水线操作官方指导:https://gitee.com/help/articles/4381#article-header0open in new window 从使用体验来说,上手使用非常方便,配置简单。对于个人开发者是个不错的福利。

附上流水线配置:

version: '1.0'
name: branch-pipeline
displayName: BranchPipeline
triggers:
  trigger: auto
  push:
    branches:
      include:
        - .*
      exclude:
        - master
stages:
  - name: compile
    displayName: 编译
    strategy: naturally
    trigger: auto
    steps:
      - step: build@nodejs
        name: build_nodejs
        displayName: Nodejs 构建
        nodeVersion: 14.16.0
        commands:
          - npm install && rm -rf ./docs/.vuepress/dist && npm run build
        artifacts:
          - name: BUILD_ARTIFACT
            path:
              - ./docs/.vuepress/dist/
        strategy: {}
      - step: publish@general_artifacts
        name: publish_general_artifacts
        displayName: 上传制品
        dependArtifact: BUILD_ARTIFACT
        artifactName: output
        strategy: {}
        dependsOn: build_nodejs
  - name: release
    displayName: 发布
    strategy: naturally
    trigger: auto
    steps:
      - step: deploy@agent
        name: deploy_agent
        displayName: 主机部署
        hostGroupID:
          ID: vm1
          hostID:
            - 4055e140-6bf7-4bbf-b618-64f5016f32a8
        deployArtifact:
          - source: artifact
            name: output
            target: ~/gitee_go/deploy/
            artifactRepository: default
            artifactName: output
            artifactVersion: latest
        script:
          - '# 功能:部署脚本会在部署主机组的每台机器上执行'
          - '# 使用场景:先将制品包解压缩到指定目录中,再执行启动脚本deploy.sh,脚本示例地址:https://gitee.com/gitee-go/spring-boot-maven-deploy-case/blob/master/deploy.sh'
          - tar zxvf ~/gitee_go/deploy/output.tar.gz -C /usr/share/nginx/html/
        notify: []
        strategy:
          retry: '0'
上次编辑于:
贡献者: Yangxi
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.14.6