【AS/400メモ】wsadminコマンドでWASにアプリケーションをデプロイする

Jenkinsを使って、ボタンを押すだけで最新のwarをWASにデプロイしたくなったのでやり方を調べてみたメモ。

これまで

これまでのやり方としては、管理コンソールからぽちぽち型。

WASのLibertyではなく、traditionalタイプなAPサーバーはいろんな設定をしながら管理コンソールで簡単デプロイができる。

ただ、毎回ぽちぽちが面倒だし、けっこう処理も時間がかかる。

わたしはこれまでIBMの管理コンソールで動作が軽いものに出会ったことがない。

wsadminコマンド?

では、管理コンソールで今までやっていたものをどうやってJenkinsからデプロイするのかというと、wsadminコマンドというものを使う。

ただ、コマンドを作るのがけっこう面倒くさい。

最終的にはwsadminコマンドを使って実現したけど、楽にやりたかったので、プラグイン使ってみようと思った。

Jenkinsのプラグイン

プラグインは確かに存在していて、できそうな気もしたけど、DB設定などをどうしたらいいのかよくわからず、行き詰まって無理だなーとなった。

WebSphere Deployer
Deploys your web artifacts automatically to IBM WebSphere Application Server and IBM WebSphere Liberty Profile

更新も最近されてないし、これを使うのもなあ。。。

で、いろいろ調べてみたら、以下のサイトでかなり有力な情報を得られた。

どんな情報かというと、wsadminコマンドは管理コンソールから取得できるということ!

これで、さくさくとコマンドを収集し、pythonファイルを作って、無事にデプロイに成功した。

コマンドを管理コンソールから取得できるのを知らなかったら、めちゃくちゃ時間かかっただろうなーと思う。

ただ、pythonファイルに設定を直書きしているので、環境ごとに使い分けるとかは今のところ難しそうで、環境ごとにファイルを用意しとかないといけないかなあ。

結局どうなった?

結局、デプロイ用のpythonファイルを作って、Jenkinsでwsadminコマンドを発行してできるようになりました。