アーティファクトをアーティファクトにデプロイするアーティファクトジェンキンスプラグインからフォークされたプラグインがあります。数日前に奇妙な問題に遭遇したとき、しばらくの間は正常に機能していました。アーティファクトをレイアウトにデプロイすると、プラグインは正常にデプロイされますが、アーティファクトをデプロイする代わりにレイアウトのリーフレベルで空になりますフォルダ。
ログに移動すると、次のように表示されます。
(o.a.e.UploadServiceImpl:273) - MKDir request to 'yum-snapshot-local:rhel5/i386/packages//-1.12.13-d.34.i386.rpm'
2015-06-04 00:00:10,219 [http-bio-8081-exec-1339] [INFO ] (o.a.e.UploadServiceImpl:279) - Directory 'yum-snapshot-local:rhel5/i386/packages//-1.12.13-d.34.i386.rpm' was created successfully.
2015-06-04 00:00:11,326 [http-bio-8081-exec-1366] [INFO ] (o.a.r.r.c.BuildResource:286) - Adding build 'test #34'
2015-06-04 00:00:11,550 [http-bio-8081-exec-1366] [INFO ] (o.a.r.r.c.BuildResource:303) - Added build 'test #34'
ご覧のとおり、何らかの理由でプラグインがデプロイではなく mkdir リクエストを作成しているため、空のディレクトリが作成されますが、これは 2.2.7 アーティファクト jenkins プラグインからの単なるフォークです。
古いバージョンのプラグインを使用していますが、正常にデプロイされているようです。ログには次のように表示されます。
2015-06-03 23:48:00,458 [http-bio-8081-exec-1339] [INFO ] (o.a.e.UploadServiceImpl:479) - Deploy to 'libs-snapshot-
local:djin/platforn/cande/FreeBSD/i386/packages/something/something-1.12.13-d.20.i386.rpm' Content-Length: 51
突然 mkdir rquest を作成する理由はありますか? また、この「oaeUploadServiceImpl」ファイルはどこにありますか?
編集 1.0
どうもありがとう、問題はここにあるようです:
private void adjustResponseAndUpload(ArtifactoryRequest request, ArtifactoryResponse response,
LocalRepo targetRepository) throws IOException {
if (processOriginatedExternally(response)) {
response = new DelayedHttpResponse((HttpArtifactoryResponse) response);
}
try {
if (request.isDirectoryRequest()) {
createDirectory(request, response);
} else if (request.isChecksum()) {
validateAndUploadChecksum(request, response, targetRepository);
} else if (NamingUtils.isMetadata(request.getPath())) {
response.sendError(SC_CONFLICT, "Old metadata notation is not supported anymore: " +
request.getRepoPath(), log);
} else {
uploadArtifact(request, response, targetRepository);
}
if (request.isDirectoryRequest()) が何らかの理由で true を返すため、フォルダーとして処理しますが、正当な理由は何ですか?