摘要:
一 使用devenv来build单个projectdevenv是VisualStudio的可执行程序,一般安装在“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE”下。用来在命令行或GUI方式运行VisualStudio。其中devenv.com是命令行程序,devenv.exe是GUI的程序。默认地当你调用devenv的时候其实是启动devenv.com,除非你显示地调用devenv.exe才会启动GUI的VisualStudio。使用devenv来build一个.sln的实例:devenv d:\Build\My
阅读全文
posted @ 2011-12-22 13:32
iTech
阅读(23946)
推荐(3)
摘要:
一 .NET代码混淆.NET代码混淆技术:Symbol renamingString encryption and compressionResource encryption and compressionConstant literals pruningMethod signatures overload inductionClass hierarchy linerizationCode control flow obfuscationAssemblies merging and embeddingXML documentation filter免费的.NET代码混淆工具:Eazfusca
阅读全文
posted @ 2011-12-22 10:42
iTech
阅读(10429)
推荐(3)
摘要:
获得当前机器的名字:来自:http://tony413.iteye.com/blog/395177defhostname():sys=os.nameifsys=='nt':hostname=os.getenv('computername')returnhostnameelifsys=='posix':host=os.popen('echo$HOSTNAME')try:hostname=host.read()returnhostnamefinally:host.close()else:return'Unkwonhostnam
阅读全文
posted @ 2011-12-20 16:13
iTech
阅读(1806)
推荐(0)
摘要:
1) Executor_Number的作用?executor number控制jenkins在此slave上并行执行的最大数量 。 一般设置为此slave上cpu的核数。 也可以将master的值设置为0来阻止在master机器上做build。2) Manage Jenkins -> config System - > System Message ?用来告诉用户此jenkins所服务的部门或相关的链接信息。例如:3) 开源产品对jenkins使用的实例?https://builds.apache.org/是apache software foundation使用Jenkins来自
阅读全文
posted @ 2011-12-19 18:19
iTech
阅读(4125)
推荐(0)
摘要:
正则表达式 实例1) 不能是某些字符中之一[]用来表示匹配多个字符之一。[^]与[]相反,表示匹配与多个字符中的任一个都不匹配。:下图中,H是第一个与abcd都不匹配的字符。2) 匹配多个字符串中的2个或者一个匹配2次(|||) 用来表示多个字符串中的一个。(|||){n}用来表示多个字符串中的n个。:下图中,匹配的2个字符可以是同一字符串,也可以不是,例如abab,或efcd都匹配(ab|cd|ef){2}。3)匹配多个字符串中的一个字符串2次\number用来表示前面的()对应的group的匹配的结果。:下图中只能是svsv,abab或cdcd才匹配(sv|ab|cd)\1{1}, sva
阅读全文
posted @ 2011-12-19 17:34
iTech
阅读(1733)
推荐(0)
摘要:
一 Open Build Service(OBS)主页:http://openbuildservice.org/Open Build Service(OBS)是开放的完整的软件发布开发平台。他提供了基础架构来创建软件发布包,它支持广泛的操作系统和硬件架构,同时也支持插件(add-ons),应用镜像(appliance images)或整个Linux的发布包。 OBS提供了工具集来协作地工作,支持访问权限,合并请求和审查功能。用户可以通过web接口来方便地访问OBS,同时OBS也支持命令行或API访问。 OBS不是使用不同硬件的compiler farms来为不同架构或多种Linux(Fedor
阅读全文
posted @ 2011-12-14 17:35
iTech
阅读(2881)
推荐(1)
摘要:
平时用的不多的或者确实本身就有点模糊的,非常感谢面试官的解释,这里记录下:文件权限 4755的涵义 = 文件权限中s/S的意义?chmod是Linux下设置文件权限的命令,后面的数字表示不同用户或用户组的权限。一般是三个数字:第一个数字表示文件所有者的权限第二个数字表示与文件所有者同属一个用户组的其他用户的权限第三个数字表示其它用户组的权限权限分为三种:读(r=4),写(w=2),执行(x=1)。综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。所以,chmod 755 设置用户的权限为:1.文件所有者可读可写可执行 2.与文件
阅读全文
posted @ 2011-11-28 11:18
iTech
阅读(5557)
推荐(1)
摘要:
主页:http://jetty.codehaus.org/jetty/参考自:http://blog.csdn.net/zhaozheng7758/article/details/6101346http://www.cnblogs.com/lexus/archive/2011/08/23/2150191.htmlhttp://www.cnblogs.com/yangchao/archive/2011/03/26/2044393.htmlhttp://www.ibm.com/developerworks/cn/web/wa-lo-jetty/一 Jetty是什么?Jetty是一个用Java实现的
阅读全文
posted @ 2011-11-27 18:51
iTech
阅读(9082)
推荐(0)
摘要:
Jenkins入门系列的文章,快速地了解和使用Jenkins。
阅读全文
posted @ 2011-11-23 12:38
iTech
阅读(216562)
推荐(31)
摘要:
Jenkins整体的插件: Rebuild PluginSlave Setup PluginBackup PluginDependency Graph View Plugin 其他的有用的:Cppcheck PluginStatic Code Analysis Plug-insDoxygen PluginNUnit Plugin xUnit PluginJIRA PluginBugzilla Plugin Trac Plugin等等
阅读全文
posted @ 2011-11-23 11:23
iTech
阅读(10865)
推荐(0)
摘要:
一 dashboard插件 Dashboard View用来自定义自己的主页,例如对下列的jenkins的主页自定义dashboard来只显示自己感兴趣的job:二 Wall display 用来将jobs的状态更加直观地显示在大屏幕上。 例如将view MyDashboard显示在大屏幕上如下:+在MyDashboard状态下点击wall display进入完!
阅读全文
posted @ 2011-11-22 16:56
iTech
阅读(8169)
推荐(0)
摘要:
deploy插件: Deploy Plugindeploy插件支持将War/Jar部署到远程的应用服务器上,例如Tomcat,JBoss,Glassfish。正在寻找或开发.NET web 应用的自动发布插件。如何回滚或重新部署先前的build:0) 需要被deploy的job的结果要存档,例如JavaHelloWorld的设置如下:1) 安装Copy Artifact Plugin;2) 创建一个job,在需要的时候手动启动,new job -> build a free-style software project,例如创建DeployJavaHelloWorld来deploy Ja
阅读全文
posted @ 2011-11-21 17:37
iTech
阅读(20525)
推荐(2)
摘要:
Publish系列插件用来将build的结果发布到Windows,Linux,FTP共享。 Publish Over CIFS Plugin Publish Over FTP Plugin Publish Over S...
阅读全文
posted @ 2011-11-21 17:05
iTech
阅读(16315)
推荐(0)
摘要:
如果我们使用VShpere 来管理所有的build机器,则使用VSphere Cloud 插件使得虚拟机的管理更加简单,且能够更好地利用VSphere的资源。VShphere Cloud插件使得Jenkins可以控制VMWare VShpere中的虚拟机。可以配置Jenkins的slave为虚拟机,且可以指定snapshot的名字。Jenkins将自动地恢复到设置的snapshot,然后启动虚拟机作为slave来开始build。在build结束后Jenkins将自动地关闭slave,且恢复到指定的snapshot。1)首先需要配置VShpere server,在Jenkins的Configur
阅读全文
posted @ 2011-11-21 12:17
iTech
阅读(3921)
推荐(0)
摘要:
Workspace Cleanup Plugin Copy To Slave Plugin一 workspace cleanup 插件用来在build开始前或build完成后清理workspace。还可以Post-build actions中设置delete workspace when build done。二 Copy to slave 插件用来将文件自动地从master上拷贝到slave,或从slave拷贝回master。使用情况:1)在build前自动地将build需要的文件从m...
阅读全文
posted @ 2011-11-21 11:39
iTech
阅读(10550)
推荐(0)
摘要:
一 Master/Slave的Node Properties用来定义slave特定的变量,例如很多的命令所在的路径。 二 job中的build parameter设置后在build启动的时候提示修改也可以使用默认值。例如启动改build的时候决定是build release还是debug。启动build时提示如下:三 EnvInject插件需要手动安装此插件,用来对job定义环境变量,还可以定义的ob的step来在build的过程中修改环境变量,例如为job定义公共的post location:在job的step中修改变量,例如修改buildplatform的值:四 运行结果如下:参考:Env
阅读全文
posted @ 2011-11-18 15:33
iTech
阅读(22430)
推荐(0)
摘要:
一 Jenkins内置的buildtoolsJenkins已经内置了Ant|Maven|Windows batch|Shell(Perl,Python)的支持。二 其他的buildtools cmakebuilder Plugin : 支持cmake的构建; Copy Artifact Plugin : 拷贝依赖的组件; Job Exporter Plugin : 将当前的运行参数导出到属性文件, 可以供以后的步骤调用;MSBuild Plugin: 使用MSBuild来构建.NET工程;NAnt...
阅读全文
posted @ 2011-11-17 17:01
iTech
阅读(14260)
推荐(0)
摘要:
一 Jenkins内置的trigger插件1) build after other projects are built 可以设置多个依赖的jobs,当任意一个依赖的jobs成功后启动此build。 多个依赖的jobs间使用,隔开。2) Trigger builds remotely (e.g., from scripts)在Authentication Token中指定TOKEN_NAME,然后可以通过连接JENKINS_URL/job/JOBNAME/build?token=TOKEN_NAME来启动build。3) build periodically在schedule中设置,语法类似于
阅读全文
posted @ 2011-11-17 14:27
iTech
阅读(15837)
推荐(0)
摘要:
Perforce Plugin,在Jenkins的管理页面的插件管理下面安装Perforce插件,然后重启Jenkins。一 使用perforce插件来build 对job的设置如下图:job执行后的log如下:可以看到Jenkins在执行的过程中创建了新的clientspec,新的clientspec是拷贝自上面参数workspace设置的clientspec,且修改了新的clientroot目录,其中的view是来自上面参数view->mapping中的设置。如下:二 使用perforce插件的poll功能来触发build配置如下:查看如下: 三 使用perforce插件在Jenki
阅读全文
posted @ 2011-11-15 15:42
iTech
阅读(9920)
推荐(0)
摘要:
一 Jenkins的授权和访问控制默认地Jenkins不包含任何的安全检查,任何人可以修改Jenkins设置,job和启动build等。显然地在大规模的公司需要多个部门一起协调工作的时候,没有任何安全检查会带来很多的问题。 我们可以通过以下2方面来增强Jenkins的安全:1) Security Realm,用来决定用户名和密码,且指定用户属于哪个组;2) Authorization Strategy,用来决定用户对那些资源有访问权限;在Manage Jenkins -> Configure System -> Enable Security 下可以看到可以使用多种方式来增强Jen
阅读全文
posted @ 2011-11-15 10:57
iTech
阅读(48109)
推荐(0)
摘要:
Jenkins的job->build 支持Ant,maven,windows batch和Shell, 但是我们知道python,perl,ruby等脚本其实也是shell脚本,所以这里的Shell可以扩展为python,perl,ruby等。例如: 下面执行windows batch 和python执行后的输入如下:可以看到windows batch和shell脚本被保存到slave上的临时目录下,然后再执行。完!
阅读全文
posted @ 2011-11-14 15:49
iTech
阅读(21327)
推荐(0)
摘要:
Jenkins最佳实践,其实大部分对于其他的CI工具同样的适用: * Jenkins的安全。对Jenkins的用户使用授权和访问控制。默认地Jenkins不执行任何的安全检查,这意味着任何人都可以访问Jenkins来配置Jenkins,修改job,和执行build。这对于在企业内部使用也许可以接受,但是存在很高的安全风险,例如其他人错误滴删除了job,错误地配置你的job在每分钟运行,启动太多的builds等。所以一般使用plugin来对Jenkins增加授权和访问控制。* 有规律地对Jenkins的home目录的备份。* 使用file fingerprinting来管理依赖关系。当在Jen.
阅读全文
posted @ 2011-11-14 15:24
iTech
阅读(32533)
推荐(2)
摘要:
一 Jenkins Master/Slave架构 Master/Slave相当于Server和agent的概念。Master提供web接口让用户来管理job和slave,job可以运行在master本机或者被分配到slave上运行。一个master可以关联多个slave用来为不同的job或相同的job的不同配置来服务。 当job被分配到slave上运行的时候,此时master和slave其实是建立的双向字节流的连接,其中连接方法主要有如下几种: 1)master通过ssh来启动slaveJenkins内置有ssh客户端实现,可以用来与远程的sshd通信,从而启动slave agent。这是对*
阅读全文
posted @ 2011-11-11 16:30
iTech
阅读(56534)
推荐(2)
摘要:
作为slave的Linux机器为centos系统。1) Linux 的 Slave机器设置 创建jenkins用户sudo /usr/sbin/useradd -m jenkins -d /home/jenkins;查看jenkins用户及组的信息id jenkins : uid=506(jenkins) gid=506(jenkins) groups=506(jenkins) ;使用sudo /usr/bin/passwd jenkins来设置用户jenkins的密码为0;切换到用户jenkins环境下su - jenkins;确保java安装正确:java --version;确保ss..
阅读全文
posted @ 2011-11-10 17:07
iTech
阅读(31610)
推荐(0)
摘要:
参考:https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines一 创建新的Slave注意Jenkins中slave称为note。 所以下面文章中的slave和node指的是一回事。1)在Manage Jenkins-->Manage Nodes -->New Node下:输入Node Name,且选择Dumb Slave作为Slave的类型,然后OK。 2)在Slave的配置页面,输入如下:*executors的数量,1或多个;*输入Slave
阅读全文
posted @ 2011-11-09 16:10
iTech
阅读(34389)
推荐(0)
摘要:
1 修改jenkins的根目录,默认地在C:\Documents and Settings\AAA\.jenkins 。.jenkins ├─jobs│ └─JavaHelloWorld│ ├─builds│ │ ├─2011-11-03_16-48-17│ │ ├─2011-11-03_16-49-05│ │ ├─2011-11-03_16-49-29│ │ ├─2011-11-03_17-01-49│ │ └─2011-11-03_17-11-42│ └─workspace│ ├─build│ │ ├─classes│ │ │ └─oata│ │ └─jar│ └─src│ └─oata├
阅读全文
posted @ 2011-11-04 14:46
iTech
阅读(97005)
推荐(2)
摘要:
转自:http://www.cnblogs.com/stephen-liu74/archive/2011/11/01/2202027.htmlhttp://www.cnblogs.com/stephen-liu74/archive/2011/11/04/2228133.html零、shell中的内部变量: 1. $?: 表示shell命令的返回值.2. $$: 表示当前shell的pid.3. $!: 最后一个放入后台作业的PID值.4. $0: 表示脚本的名字.5. $1--$9,${10}: 表示脚本的第一到九个参数,和第十个参数.6. $#: 表示参数的个数.7. $*,$@: 表示所有
阅读全文
posted @ 2011-11-04 10:07
iTech
阅读(5218)
推荐(1)
摘要:
注意:我们知道Jenkins通过master/slave来支持分布式的job运行,这里的JavaHelloworld运行在master,即Jenkins所在的机器。一 Java的HelloWorld程序 Ant构建脚本:c:\JavaHelloWorld\build.xml <projectname="HelloWorld"basedir="."default="main"><propertyname="src.dir"value="src"/><propertyn
阅读全文
posted @ 2011-11-03 16:06
iTech
阅读(48154)
推荐(1)
摘要:
1 JenkinsJenkins由以前的hudson更名而来。Jenkins的主要功能是监视重复工作的执行,例如软件工程的构建或在cron下设置的jobs。具体地:*软件的持续构建和测试,此时Jenkins与CruiseControl或DamageControl相似。本质上提供了一个易于使用的持续集成系统,使得开发人员更容易地将改变集成到工程中,使得用户更容易获得一个新的build。自动化,持续的构建提高了软件开发的效率。*监视外部运行的job的执行,例如cron jobs或procmail jobs,即使这些jobs是运行在远程的机器上。例如,对于cron,你将会收到email包含job的o
阅读全文
posted @ 2011-11-02 17:19
iTech
阅读(58955)
推荐(3)
摘要:
转自:http://blogs.thescallop.com/zhouxiuhu/?p=238使用Synergy多台电脑共享键盘鼠标 Synergy可以算作一款远程控制软件。一般的远程控制软件都是将服务器的画面提供给客户端使用, 而Synergy的创意很独特,它将客户端的键盘和鼠标提供给服务器使用。 这样如果你有多台电脑并且每台电脑都有自己的显示器,你可以通过 Synergy 用一组键盘和鼠标控制所有电脑, 而且每台电脑的屏幕可以连接起来,就像在同一台电脑上使用多个显示器一样。 假设我们有三台电脑,分别为 computerA、computerB、compute...
阅读全文
posted @ 2011-11-01 18:21
iTech
阅读(7839)
推荐(0)