AS/400にJenkinsを入れて
AS/400(IBM i)にGitを入れたので、さらなる幸せを手に入れるために、Jenkinsを入れた時の事を忘れないようにメモ。
- 実行環境
初回起動時にエラー
Jenkins初回起動時に出たエラーが以下。何か「chmod」絡みのライブラリがないっぽいけど、2回目以降は出てない。
export JENKINS_HOME=/usr/local/jenkins java -jar jenkins.war --httpPort=8089 --ajp13Port=-1 ---省略--- 2012/05/09 13:32:07 hudson.FilePath _chmodAnt WARNING: GNU C Library not available: Using Ant's chmod task instead.
プロジェクトの2回目以降のポーリングでエラー
だたビルドするだけならスンナリ動いた。
GitからClone後に初回のビルドではOK。でも2回目以降のポーリングでエラー。
-
- エラーも文字化け。EBCDICで吐いてるっぽい。
初めは、JenkinsをCLからQP2SHELLで起動してたんだけど、これだと駄目。QP2TERMもQSHもモチロン駄目、ssh経由だとOK。ssh経由ならQP2TERMでもOK。(Javaの環境がネイティブから走るとダメなのかな?QP2TERMだと$HOME/SystemDefault.propertiesで何か設定しないと駄目かもしれん。)
ダサい解決だけど、ssh -Tオプション使って、スクリプト書いて、それをQP2SHELLで起動すると上手くいった。
それにしても、ジョブが一杯付いていてダサい。
MemoryMonitor警告
前述の対処で、ビルド自体は全然問題ないけど、裏で警告を吐いていて気になった。
May 18, 2012 12:54:21 PM hudson.node_monitors.AbstractNodeMonitorDescriptor$Record run WARNING: Failed to monitor master for Free Swap Space Throwable occurred: java.io.IOException: No suitable implementation found: os.name=OS/400 os.arch=PowerPC sun.arch.data.model=32 at org.jvnet.hudson.MemoryMonitor.obtain(MemoryMonitor.java:86) at org.jvnet.hudson.MemoryMonitor.get(MemoryMonitor.java:57) at hudson.node_monitors.SwapSpaceMonitor$MonitorTask.call(SwapSpaceMonitor.java:103) at hudson.node_monitors.SwapSpaceMonitor$MonitorTask.call(SwapSpaceMonitor.java:99) at hudson.remoting.LocalChannel.call(LocalChannel.java:45) at hudson.node_monitors.SwapSpaceMonitor$1.monitor(SwapSpaceMonitor.java:83) at hudson.node_monitors.SwapSpaceMonitor$1.monitor(SwapSpaceMonitor.java:81) at hudson.node_monitors.AbstractNodeMonitorDescriptor$Record.run(AbstractNodeMonitorDescriptor.java:202)
追っていくと、topコマンドでモニターしている?っぽい。PASEにtopコマンドが無いんで、そんな感じ。AIXなら"top"入れられるみたいだけど...。
XMLのパースエラー
こっちはAS/400だからって訳じゃないかもだけど、cpdのxmlパースエラーなのか、dryプラグインで落っこってそう。まだ、全然追ってない。
EVERE: Parse Error at line 2 column 33: Document root element "pmd-cpd", must match DOCTYPE root "null". Throwable occurred: org.xml.sax.SAXParseException: Document root element "pmd-cpd", must match DOCTYPE root "null". ---省略--- Throwable occurred: org.xml.sax.SAXParseException: Document is invalid: no grammar found. at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) ---省略--- at org.apache.commons.digester3.Digester.parse(Digester.java:1642) at org.apache.commons.digester3.Digester.parse(Digester.java:1701) at hudson.plugins.dry.parser.cpd.CpdParser.accepts(CpdParser.java:48) at hudson.plugins.dry.parser.DuplicationParserRegistry.parse(DuplicationParserRegistry.java:70)