From fd9f1cb7e4d75ba021cc0e755ecea81535553bba Mon Sep 17 00:00:00 2001 From: zhangshuai Date: Mon, 18 Nov 2024 16:46:28 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20ASW-176=20job=20=E6=94=AF=E6=8C=81=20pla?= =?UTF-8?q?ybook=20param=20=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/runner/job/JobPlaybookExecutor.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/geedge/asw/module/runner/job/JobPlaybookExecutor.java b/src/main/java/net/geedge/asw/module/runner/job/JobPlaybookExecutor.java index 10c2bf4..e827977 100644 --- a/src/main/java/net/geedge/asw/module/runner/job/JobPlaybookExecutor.java +++ b/src/main/java/net/geedge/asw/module/runner/job/JobPlaybookExecutor.java @@ -140,6 +140,10 @@ public class JobPlaybookExecutor extends QuartzJobBean { .set(JobEntity::getEndTimestamp, System.currentTimeMillis()) .eq(JobEntity::getId, job.getId())); } + + // remove session + environmentService.removeSession(session.getId()); + log.info("[playbookExecutor] [request env exec playbook error] [job id: {}]", job.getId()); } }); } @@ -154,7 +158,15 @@ public class JobPlaybookExecutor extends QuartzJobBean { PackageEntity packageEntity = packageService.getById(packageId); File packageFile = T.FileUtil.file(packageEntity.getPath()); String packageName = packageEntity.getIdentifier(); - + String playbookParam = job.getPlaybookParam(); + Map params = T.MapUtil.newHashMap(); + if (T.StrUtil.isNotEmpty(playbookParam)) { + params = T.JSONUtil.toBean(playbookParam, Map.class); + }else { + params.put("reInstall", true); + params.put("clearCache", true); + params.put("unInstall", true); + } PlaybookEntity playbook = playbookService.getById(playbookId); File playbookFile = T.FileUtil.file(playbook.getPath()); @@ -170,7 +182,9 @@ public class JobPlaybookExecutor extends QuartzJobBean { request.form("id", job.getId()); request.form("packageName", packageName); request.header("Authorization", token); - + for (Map.Entry param : params.entrySet()) { + request.form(param.getKey(), param.getValue()); + } HttpResponse response = request.execute(); return response; } finally {