現在、jenkinsを使用して、意図したリリース条件下でアプリケーションをデプロイしています。デプロイされたシステムでrootユーザーとしてJUnitテストを実行する必要があります(アプリケーションには、rootのみがアクセスできる特定のファイルがあるため)。
「invokeant」ビルドステップを使用してテストを実行する代わりに、「executeshell」ビルドステップのsudoを使用してantを実行しています。
sudo ant -file build.xml -D.... test
jenkinsユーザーはこれを行うために必要なroot権限を持っていますが、上記のファイルにアクセスすることはできません。
これを行うと、ワークスペースに間違ったアクセス許可を持ついくつかのフォルダーが作成されることに気付きましたが、「シェルの実行」の後でこれを修正します。
すべてがうまくいったように見えますが、それは少し回避策のように感じます。
それでは、私の質問は、ビルドステップ「antを呼び出す」と比較して、この方法でantを実行することの不利な点はありますか?...または誰かがこれを行うためのより良い方法を見ることができますか?