LOADING...

加载过慢请开启缓存(浏览器默认开启)

loading

gitlab ci/cd 自动部署项目(前端)

2023/5/27 项目部署

项目部署完毕后,若要对项目进行修改,须重新对项目进行打包、将打包后的文件上传到服务器、刷新nginx,比较繁琐,gitlab ci/cd可以将流程自动化,我们只需将修改后的代码推到gitlab上便自动部署。

  • 首先安装gitlab-runner(不再赘述)

  • 注册一个runner,可以使用命令行gitlab-runner register 注册(建议使用),也可配置config.toml,配置文件如下:

    [[runners]]
      name = "tsn前端"
      url = "xx"
      id = 3
      token = "xx"
      token_obtained_at = 2023-05-26T07:51:58Z
      token_expires_at = 0001-01-01T00:00:00Z
      executor = "shell"
      shell = "powershell"
      pre_clone_script = "chcp 65001"
      pre_build_script = "chcp 65001"
      [runners.custom_build_dir]
      [runners.cache]
        MaxUploadedArchiveSize = 0
        [runners.cache.s3]
        [runners.cache.gcs]
        [runners.cache.azure]
    

    其中,url和token可以在gitlab项目中的设置–>pipeline找到(旧版目录),新版目录在侧边菜单栏–>settings->CI/CD中

  • 编写.gitlab-ci.yml文件
    进入项目根目录,新建文件:.gitlab-ci.yml文件,输入如下内容:

    stages:
      - build
      - deploy
      
    build:
      stage: build
      tags:
        - tsn前端
      script:
        - cd $CI_PROJECT_DIR
        - yarn install
        - yarn build
      cache:
        key: ${CI_COMMIT_REF_SLUG}
        paths:
          - node_modules/
          - .yarn/cache/
      only:
        - master
      artifacts:  
        paths:
            - build/
    
    deploy:
      stage: deploy
      tags:
        - tsn前端
      script:
        - cd $CI_PROJECT_DIR
        - xcopy build C:\Users\admin\web\tsn /E /C /I /Q /H /R /Y
    

    各部分解释如下:

image-20230527165511866

  • 当提交代码时,便会自动触发gitlab ci/cd,可以在侧边菜单栏查看CI/CD状态
    image-20230527165649355
  • success!