打包代码上传之脚本未编译(部署后页面(以及代码)未更新)

23 篇文章 0 订阅
10 篇文章 0 订阅

愉快的一天一般从遇到问题时结束。
问题描述:在更新本地代码提交后-git push,需要部署到测试环境测试,在代码部署完后发现了新的问题----修改后的页面未在stage环境更新,于是我打开代码仓库,发现代码已经提交,并且已有提交记录,在重新部署代码无果后,果断摇人 找部署服务负责人。人说:“你脚本里定义的编译过程有问题(没编译,实际是没有执行编译打包命令(build文件、/dist目录))”。

我的原脚本配置文件://重点关注这

agile.js:

###################
# 线上环境编译
###################
build: 
  # 配置node服务环境
  env:
    node: '/usr/local/node/node-v8.11.3/bin/node'
    npm: '/usr/local/node/node-v8.11.3/bin/npm'
  # 静态资源上传CDN(没有可不填)
  static-cdn:
    module:
        # 上传文件或文件夹地址
      - dist: './dist'
        # vos 目录地址
        release: 'fe-static/vfe/um-workflow'
  # 编译命令
  command:
    - 'npm install --unsafe-perm'
    - 'npm run online-build'


###################
# 测试环境编译
###################
dev:
  # 编译命令
  command:
    - 'ls -la ./' //问题点-重点关注这
  # 测试环境部署
  deploy-defore: # 部署前置hook
    - 'ls -la ./dist'
  deploy: # 代码部署
    intend:  # 测试目标机器上执行命令
      - 'mkdir -p /opt/vipkid/vfe/um-workflow'//问题点-重点关注这
    output: './dist/*' # 编译完成后要发布的目录
    path: '/opt/vipkid/vfe/um-workflow'//问题点-重点关注这 # 发布到目标机器的目录
    command: # 发布完成后的操作
      - 'ls -la /opt/vipkid/vfe/um-workflow'//问题点-重点关注这

以及nginx文件(位于一个名为“工程效率”的项目(env-deploy)=>我的项目(um位于工程效率里)=>包含两个文件:1.nginx.conf;2.router-nginx.conf):

nginx.conf:

server {
    listen       80;
    server_name  {{domainname_exp}};
    
    location ^~ /auths/ {
        proxy_pass  http://127.0.0.1:11078/;
        proxy_set_header   Host             $host;
    }
    
    location ^~ /bmp/ {
        proxy_pass  http://127.0.0.1:11141/;
        proxy_set_header   Host             $host;
    }

    location / {
        root  /opt/vipkid/vfe/um-workflow/dist;
        try_files $uri $uri/ /index.html;
    }

}

router-nginx.con:

server {
    listen       {{vfe_listenport}};
    
    location / {
        root  /opt/vipkid/vfe/um-workflow/dist;
        try_files $uri $uri/ /index.html;
    }

}

server {
    listen       80;
    server_name  {{domainname_exp}} ~^{{env}}-workflow-test-vk-l5d-([\w-]+)\.vipkid(?:-qa)?\.com\.cn$;
    
    location ^~ /auths/ {
        proxy_pass  http://{{env}}-uc-management.vipkid-qa.com.cn/;
    }
    
    location ^~ /bmp/ {
        proxy_pass  http://{{env}}-uc-bpms.vipkid-qa.com.cn/;
    }
    
    location ^~ /eips/ {
        proxy_pass  http://{{env}}-uc-eips.vipkid-qa.com.cn/;
    }
    
    location ^~ /staffWeb/ {
        proxy_pass  http://{{env}}-biz-pl-staffweb-service.vipkid-qa.com.cn/;
    }

    location ^~ /wmps/ {
        proxy_pass  http://{{env}}-uc-wmps.vipkid-qa.com.cn/;
    }
    
    location ^~ /bpscs/ {
        proxy_pass  http://{{env}}-uc-bpsc.vipkid-qa.com.cn/;
    }
    
    location ^~ /reports/ {
        proxy_pass  http://{{env}}-uc-report.vipkid-qa.com.cn/;
    }

    location / {
		proxy_pass http://{{linkerd_host}}:4140;
        proxy_set_header   l5d-vk-host      {{projectname}};
    }
}

问题位于router-nginx.con文件的location / {root /opt/vipkid/vfe/um-workflow/dist;和agile文件的 output: ‘./dist/*’

agile文件里表示代码打包后编译输出位于agile文件的 output: ‘./dist/*’

agile文件里的command:- 'ls -la ./'未执行编译指令(具体修改后如下)

# 编译命令
  command:
    - 'npm install'
    - 'npm run build'

# 测试目标机器上执行命令# 编译完成后要发布的目录发布到目标机器的目录# 发布完成后的操作这几处的重点关注这没有匹配router-nginx.con文件的location / {root /opt/vipkid/vfe/um-workflow/dist;路径。

修改后的agile文件:

###################
# 线上环境编译
###################
build: 
  # 配置node服务环境
  env:
    node: '/usr/local/node/node-v8.11.3/bin/node'
    npm: '/usr/local/node/node-v8.11.3/bin/npm'
  # 静态资源上传CDN(没有可不填)
  static-cdn:
    module:
        # 上传文件或文件夹地址
      - dist: './dist'
        # vos 目录地址
        release: 'fe-static/vfe/um-workflow'
  # 编译命令
  command:
    - 'npm install --unsafe-perm'
    - 'npm run online-build'


###################
# 测试环境编译
###################
dev:
  # 编译命令
  command:
    - 'npm install' //修改后,更新部分
    - 'npm run build'//修改后,更新部分
  # 测试环境部署
  deploy-defore: # 部署前置hook
    - 'ls -la ./dist'
  deploy: # 代码部署
    intend:  # 测试目标机器上执行命令
      - 'mkdir -p /opt/vipkid/vfe/um-workflow/dist' //修改后,更新部分
    output: './dist/*' # 编译完成后要发布的目录
    path: '/opt/vipkid/vfe/um-workflow/dist' //修改后,更新部分 # 发布到目标机器的目录
    command: # 发布完成后的操作
      - 'ls -la /opt/vipkid/vfe/um-workflow/dist' //修改后,更新部分

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值