SVNからのビルド、デプロイの自動化方法について記載。
0.事前環境
■Linuxサーバーに必要なツール
・JDK
・SVN
・Jenkins(※/var/lib/jenkins/workspaceにジョブに関する内容が作成される)
・ANT
> wget http://www.apache.org/dist/ant/binaries/apache-ant-<version>-bin.tar.gz > tar zxvf apache-ant-<version>-bin.tar.gz > mv apache-ant-<version> /usr/share/ant > ln -s /usr/share/ant/bin/ant /usr/bin/ant > vi ~/.bash_profile
1.build.xml
build.xml
・tmp内にwarを配置
ビルド→デプロイを行う。
<?xml version="1.0" encoding="UTF-8"?> <project name="build" basedir="." default="build-war"> <!-- クリーン --> <target name="clean"> <delete dir="./bin" /> </target> <!-- 設定 --> <property name="web-app.name" value="Test" /><!--war名--> <property name="target" value="1.8" /> <property name="source" value="1.8" /> <property name="debuglevel" value="source,lines,vars" /> <!--tomcatデプロイURL--> <property name="domain" value="[http://[tomcat:ユーザID]:[tomcat:PW]@tomcatのURL:ポート番号]" /> <tstamp> <format property="copy.time" pattern="yyyyMMddHHmmss" /> </tstamp> <!--warファイル名 tmp配下に配置を想定--> <property name="war.file" value="/tmp/bk/${web-app.name}${copy.time}.war" /> <!-- コンパイル --> <target depends="clean" name="build-project"> <javac debug="true" debuglevel="${debuglevel}" srcdir="./src/main" destdir="build/classes" source="${source}" target="${target}" includeantruntime="false"> <classpath> <pathelement location="war/build/classes" /> <!--libパスの設定--> <fileset dir="WebContent/WEB-INF/lib" /> </classpath> </javac> </target> <!-- warファイル作成 --> <target depends="build-project" name="build-war"> <war destfile="${war.file}" needxmlfile='false'> <fileset dir="WebContent"> <include name="**/*" /> </fileset> <classes dir="build/classes" /> </war> </target> <!-- tomcatデプロイ curlコマンド実行--> <target depends="build-war" name="war-deploy"> <exec executable="curl"> <arg value="${domain}/manager/text/deploy?war=file:${war.file} &path=/${web-app.name}&update=true" /> </exec> </target> </project>
2.必要な権限設定
tomcat Manager(tomcatのURL/manager/html)
・tomcatディレクトリ/conf/tomcat-user.xml
<tomcat-users> <role rolename="manager-gui"/> <user username="[ユーザ名]" password="[パスワード]" roles="manager-gui, manager-script"/> </tomcat-users>
・tomcatディレクトリ[/usr/local/tomcat]/conf/server.xml
<Resource name="UserDatabase" auth="Container" type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" pathname="conf/tomcat-users.xml" />
3.Jenkinsの設定
1.左メニューの[Jenkinsの管理]を選択後、Global Tool 設定を選択
4.SVNリポジトリの設定およびANTの設定
※設定後、保存を押下
4.Jenkins補足(再設定およびコンソール確認方法)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。