没有什么高深的东西,1 2天的时间大多数人都能自己摸索出来,这里将自己遇到过的问题分享出来避免其他同学再一次挖坑.


目录

  1. 主从节点

  2. Nuget自动包还原

  3. powershell部署

  4. 内网机器实现基于变化的构建

  5. Github私有项目pull时限


  所谓主从,主要应用的场景例如多种环境(windows/linux,.net/java/php)需要不同的构建基础,而我们又不想都将一系列的步骤和环境混杂在一台构建服务器上,所以类似于go中的代理,jenkins也提供了slave节点的概念,大家可以把不同类别的项目的构建部署在分类的节点服务器上。节点服务器不需要安装完整的jenkins包,构建事件的分发由master端来执行。

这里需要注意的就是主从节点之间的通信,我这里选择是将从节点以windows service的方式启动,而我碰到的坑就是环境变量的配置问题,当我在主从服务都安装好jdk并且配置完环境变量后,发现启动从节点时还是怎么都找不到jdk,卡了半个小时才发现jenkins 从节点的环境变量是需要在web系统中配置的,此坑填平,后者慎入。

至于slave端的分配在构建配置中


  用.net开发的同学nuget应该大多都涉及到,类似java的maven,神器之一,不多说。如果用visual studio开发这里会有一个选项

选中这里的话 会再在你rebuild项目的时候 自动将丢失的包补齐,当然仅限于公众平台上的内容,如果是同学们自己开发的local版本的包还会遇到另外的问题,这里我们重点不计较这些。

回到jenkins上来因为jenkins的构建条件中目前还不支持直接使用.net的ide,所以我们需要安装msbuild的插件

装完以后构建后发现编译失败,各种组件丢失。这里再填一坑,首先卸载我们的主要输出项目,然后编辑项目属性内容,在最后加上一个节点配置

<Target Name="AfterBuild"><MSBuild Condition="'$(Configuration)|$(Platform)' == 'Release|x86'" Projects="NuGet\NuGet.msbuild" /></Target><Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />  

  还原项目,这样再使用msbuild命令就OK了。


  powershell的使用场景可以这样理解,在我们build通过一个项目后,我们需要将他部署在一台测试服务器上,但是我们的数据库配置需要修改,如何去除人工的干预,这里就需要使用到powershell或者其他工具了。

powershell的使用你可以分为2种,一种是写好ps脚本然后通过batch command中powershell命令来完成,另外一种是jenkins直接安装powershell命令,这里更推荐后者,因为有些时候你并没有权限上服务器上修改脚本或者其他元素,所有后者更直观简单,简单的数据库连接修改脚本

$original_file = 'xx\web.config'
$destination_file =  'xx\web.config'
(Get-Content $original_file) | Foreach-Object {$_ -replace 'name="dbdemo" connectionstring=".+" ', 'name="dbdemo"  connectionString="server=(local);database=basedemo;user id=demoUser;password=!@#qqq" providerName="System.Data.SqlClient" '
} | Set-Content $destination_file -encoding UTF8


  如果我们的master机器部署在内网,github通过hook的方式回调不到,那么我们就很难基于github项目的push动作来进行基于版本的即时构建。怎么办?这里可以使用一个取巧的办法

在poll scm模式下选择* * * * *,当系统发现本地文件没有变更时,会忽略掉此次构建。


  github私有项目,主要也就是ssh授权的问题,这里的坑不是权限认证问题,而是github插件的时限问题,默认是10分钟,由于某些项目可能资源比较大,第一次pull的时候耗费时间比较长,但是控制台提示一直停留在认证那个阶段,让操作人员误以为是认证问题,这个估计也算个坑吧。填坑方法如下图:

ok 简单的填坑总结。有些问题虽然小但是一点一点排查总归还是浪费时间,希望对大家有帮助

转载于:https://www.cnblogs.com/dubing/p/3628851.html

【过程改进】 windows下jenkins常见问题填坑相关推荐

  1. windows下jenkins常见问题填坑

    没有什么高深的东西,1 2天的时间大多数人都能自己摸索出来,这里将自己遇到过的问题分享出来避免其他同学再一次挖坑. 目录 1. 主从节点 2. Nuget自动包还原 3. powershell部署 4 ...

  2. windows下jenkins运行jar包的命令

    windows下jenkins运行jar包的命令 @echo off setlocal enabledelayedexpansion :: 设置服务启动的端口 set port=9098 :: 根据端 ...

  3. windows下 composer常见问题及处理

    2019独角兽企业重金招聘Python工程师标准>>> windows下 composer常见错误及处理. 错误一: Warning: This development build ...

  4. Windows下Jenkins的详细安装及使用

    1.Ubuntu下Jenkins具体安装与构建部署使用教程 Jenkins是一个开源软件项目.旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成 ...

  5. windows下jenkins的安装

    Jenkins的下载地址:http://jenkins-ci.org/Jenkins的安装:一路Next,均默认值,如果需要更改安装路径也可以自己更改 步骤如下: 1.下载下来一个压缩包jenkins ...

  6. 在CENTOS7下安装kubernetes填坑教程(原创)

    kubernetes(以下简称"k8s")目前是公认的最先进的容器集群管理工具,在1.0版本发布后,k8s的发展速度更加迅猛,并且得到了容器生态圈厂商的全力支持,这包括coreos ...

  7. windows下jenkins slave 搭建

    一 创建新的Slave 注意Jenkins中slave称为note. 所以下面文章中的slave和node指的是一回事. 1)在Manage Jenkins-->Manage Nodes --& ...

  8. windows下jenkins执行shell报错

    创建完Job之后,执行shell脚本报错 Publish] $ sh -xe C:\Windows\TEMP\jenkins1513512433272584870.sh 办法是修改 Manage Je ...

  9. Windows下Jenkins修改用户密码

    描述:上周五下载部署完windows环境的Jenkins,已经注册过用户了:到这周一再次登录一直提示密码不正确:于是乎需要进行修改密码重新登录: 解决方法: 1.在C盘开启查看隐藏文件:进入Progr ...

最新文章

  1. SAP QM初阶之事务代码QS28
  2. 数组、ArrayList、链表、LinkedList
  3. oracle 日志丢失,Oracle联机日志文件丢失解决方法一例
  4. 【数据库实验课堂】实验二 使用SQL Server管理数据表
  5. android商品数量加减,微信小程序实现一个简单的商品数量加减案例
  6. 页面每次添加都显示最后一次访问记录spring scope=prototype 学习笔记
  7. ssm框架数据查询一直为null
  8. 基于JAVA+SpringMVC+Mybatis+MYSQL的学生信息管理系统
  9. 比较x^y和y^x的大小
  10. 银行排队叫号系统项目总结
  11. 什么是IAST(交互式应用安全测试)?
  12. Java实现基于Socket的pbft算法
  13. 斜杠(右斜杠)【/】 与 反斜杠(右斜杠)【\】
  14. css3图片放大缩小过度动画
  15. 科来数据包生成器使用方法
  16. APP隐私合规检测工具Camille环境搭建
  17. 命令行操作flyway
  18. OpenCV学习笔记5
  19. C# 压缩PDF文档
  20. 想想都脊背一凉,细思极恐,大家提早醒悟

热门文章

  1. 使用线程新建WPF窗体(公用进度条窗体)
  2. 常用的meta标签总结
  3. 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例
  4. [Java拾遗三]JavaWeb基础之Servlet
  5. HDU-1698 JUST A HOOK 线段树
  6. Spring事务管理器分类
  7. 数据分析之道:抽丝剥茧,存乎一心(中)
  8. 干货推荐 | 如何设计按钮?
  9. 轻芒阅读距离今日头条还差一个即刻
  10. PMCAFF微课堂 (已结束)| 京东平台产品负责人:如何打造一个支撑3200万日订单量的平台型产品