当前位置: 首页 > news >正文

网站建设中端口号的作用是什么意思杭州产品推广服务公司

网站建设中端口号的作用是什么意思,杭州产品推广服务公司,移动网站屏蔽,dream8网站建设及设计gitlab runner的安装和基本使用:https://bear-coding.blog.csdn.net/article/details/120591711安装并给项目配置完gitlab runner后再操作后面步骤。实现目标:master分支代码有变更的时候自动构建build。当开发人员在gitlab上给项目打一个tag标签分支的时候自动触发…

gitlab runner的安装和基本使用:https://bear-coding.blog.csdn.net/article/details/120591711

安装并给项目配置完gitlab runner后再操作后面步骤。

实现目标:

  1. master分支代码有变更的时候自动构建build。

  1. 当开发人员在gitlab上给项目打一个tag标签分支的时候自动触发流水线,根据标签名称和分支名称来自动发布;

例如分支名称为"test_3.1.1.1_project1&project2"则发布到测试环境

例如分支名称为"prod_3.1.1.1_project1&project2"则发布到生产环境

在项目根目录下创建以下文件:

创建好之后,提交到gitlab上,就直接可以使用了

.gitlab-ci.yml 流水线文件

stages:- build- test- prod#当master分支变更的时候触发
build:stage: buildscript: sh ./build.shonly:- master  #master主干有变更的发起编译任务tags:- trade_runner  #任务标签,根据此标签匹配gitlab runner的标签。test:stage: testscript: sh ./test.shonly:refs:- tags #创建tag分支且格式为”test_44.55.66.77_project1.project2“的时候发起发布任务variables:- $CI_COMMIT_TAG =~ /^test_[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+_[a-zA-Z0-9&\.]+$/tags:- trade_runnerprod:stage: prodscript: sh ./prod.shonly:refs:- tags #创建tag分支且格式为”prod_44.55.66.77_project1.project2“的时候发起发布任务variables:- $CI_COMMIT_TAG =~ /^prod_[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+_[a-zA-Z0-9&\.]+$/tags:- trade_runnerwhen: manual #设置需要手动触发

build.sh 执行编译项目的脚本文件

#!/bin/shecho "start build task,job_name=$CI_JOB_NAME"#判断流水线任务必须是build
if [ "$CI_JOB_NAME" != "build" ]; thenecho "error job name: $CI_JOB_NAME"exit 1
ficd GitLabTest/
dotnet build $build_args
#获取构建结果
build_result=$?
echo "end build task,$build_result"
exit $build_result

test.sh 执行发布测试环境的脚本

#!/bin/shthetime=`date +%Y%m%d%H%M`
tag_msg=`echo "$CI_COMMIT_TAG" | awk -F '_' '{print $3}' `
echo "start test task,tag=$CI_COMMIT_TAG,job_name=$CI_JOB_NAME,tag_message=$tag_msg,time=$thetime"#判断流水线任务必须是deploy
if [ "$CI_JOB_NAME" != "test" ]; thenecho "error job name: $CI_JOB_NAME"exit 1
fi#要发布的项目列表
programs=(${tag_msg//&/ })for program in ${programs[@]}
do#切换到要发布的项目里,并发布项目cd GitLabTest/$programecho "start publish $program"dotnet publish -c Release -r linux-x64 -p:PublishSingleFile=true $build_args -p:DebugSymbols=true -p:DebugType="portable"if [ $? != 0 ]; thenecho "publish $program failed"exit 1fiecho "publish $program success"cd ../../
donebase_pwd=`pwd`
build_path_middle="publish"for program in ${programs[@]}
do#将发布好的文件复制到发布目录下#也可以将文件打包成tar,传输到远程服务器上,或者生成docker镜像,推送到镜像服务器。见后面注释部分echo "start copy $program"#预先创建存放发布文件的目录,并将权限给到gitlab-runner#mkdir /usr/local/publish#chown -R gitlab-runner:gitlab-runner /usr/local/publishmkdir -p /usr/local/$build_path_middle/$program/cp -rf $base_pwd/GitLabTest/$program/bin/Release/net7.0/linux-x64/* /usr/local/$build_path_middle/$program/echo "copy $program success"
done#将文件打包成tar,传输到远程服务器上,
#        rm -f program.tar.gz
#        tar zcf program.tar.gz -C publish --exclude "*.tar.gz" .
#        ssh -p $server_port $server_ip "mkdir -p $deploy_base_pwd/$program/"
#        ssh -p $server_port $server_ip "{ cd $deploy_base_pwd/$program/ && [ -s program.tar.gz ] && mv -f program.tar.gz program_bak.tar.gz; } || true"
#        scp -P $server_port program.tar.gz $server_ip:$deploy_base_pwd/$program/#将文件生成docker镜像,并推送到镜像仓库
#docker build -f /usr/local/$build_path_middle/$program/Dockerfile -t 镜像仓库地址/trade-$program:${thetime} .
#docker push 镜像仓库地址/trade-$program:${thetime} 
#docker rmi 镜像仓库地址/trade-$program:${thetime} 

prod.sh 执行发布到生产环境的脚本,与test.sh基本一至,根据实际需要更改

#!/bin/shthetime=`date +%Y%m%d%H%M`
tag_msg=`echo "$CI_COMMIT_TAG" | awk -F '_' '{print $3}' `
echo "start product task,tag=$CI_COMMIT_TAG,job_name=$CI_JOB_NAME,tag_message=$tag_msg,time=$thetime"#判断流水线任务必须是deploy
if [ "$CI_JOB_NAME" != "prod" ]; thenecho "error job name: $CI_JOB_NAME"exit 1
fi#要发布的项目列表
programs=(${tag_msg//&/ })for program in ${programs[@]}
do#切换到要发布的项目里,并发布项目cd GitLabTest/$programecho "start publish $program"dotnet publish -c Release -r linux-x64 -p:PublishSingleFile=true $build_args -p:DebugSymbols=true -p:DebugType="portable"if [ $? != 0 ]; thenecho "publish $program failed"exit 1fiecho "publish $program success"cd ../../
donebase_pwd=`pwd`
build_path_middle="publish"for program in ${programs[@]}
do#将发布好的文件复制到发布目录下#也可以将文件打包成tar,传输到远程服务器上,或者生成docker镜像,推送到镜像服务器。见后面注释部分echo "start copy $program"#预先创建存放发布文件的目录,并将权限给到gitlab-runner#mkdir /usr/local/publish#chown -R gitlab-runner:gitlab-runner /usr/local/publishmkdir -p /usr/local/$build_path_middle/$program/cp -rf $base_pwd/GitLabTest/$program/bin/Release/net7.0/linux-x64/* /usr/local/$build_path_middle/$program/echo "copy $program success"
done#将文件打包成tar,传输到远程服务器上,
#        rm -f program.tar.gz
#        tar zcf program.tar.gz -C publish --exclude "*.tar.gz" .
#        ssh -p $server_port $server_ip "mkdir -p $deploy_base_pwd/$program/"
#        ssh -p $server_port $server_ip "{ cd $deploy_base_pwd/$program/ && [ -s program.tar.gz ] && mv -f program.tar.gz program_bak.tar.gz; } || true"
#        scp -P $server_port program.tar.gz $server_ip:$deploy_base_pwd/$program/#将文件生成docker镜像,并推送到镜像仓库
#docker build -f /usr/local/$build_path_middle/$program/Dockerfile -t 镜像仓库地址/trade-$program:${thetime} .
#docker push 镜像仓库地址/trade-$program:${thetime} 
#docker rmi 镜像仓库地址/trade-$program:${thetime} 

http://www.hkea.cn/news/782420/

相关文章:

  • 网站建设意见做推广app赚钱的项目
  • 哈尔滨营销网站制作做外贸推广
  • 深圳网站建设外贸公司排名搜索热词排名
  • 网络科技公司招聘可靠吗seo多久可以学会
  • 企业网站建设的方案ppt网络营销的特点主要包括什么
  • 如何自行建设网站推广关键词优化
  • 建设学院网站百度收录关键词查询
  • 有关外贸的网站有哪些内容武汉抖音seo搜索
  • 娄底网站建设的话术深圳网站关键词排名优化
  • 福田大型商城网站建设seo营销方法
  • 网站开发专业就业指导企业网站设计与实现论文
  • 网络营销方式的思维导图seo关键词优化系统
  • wordpress访客ip记录福清市百度seo
  • 网站下载速度慢互联网广告推广公司
  • 电影网站空间配置网络营销的工具和方法有哪些
  • 包装设计网站免费百度seo搜索引擎优化厂家
  • 免费做公司网站sem对seo的影响有哪些
  • 网站空间购买费用关键词优化计划
  • 网站制作可以卖多少钱陕西网站建设制作
  • 深圳中小企业网站制作谷歌海外广告投放
  • 做游戏网站的需求分析创建app平台
  • 青岛胶南做网站的有多少seo商学院
  • 二月网站建设南宁百度个人中心登录
  • 如何在相关网站免费做宣传广告免费建立个人网站官网
  • 做搜狗网站优化首自己建立网站步骤
  • 企业资质查询官方网站最好的小说网站排名
  • 乐平网站设计北京互联网公司
  • 朝阳企业网站建设方案费用郑州网络营销学校
  • 建站行业发展百度广告代运营
  • 如何做积分商城网站鸡西seo顾问