diff --git a/dingrogu-client/pom.xml b/dingrogu-client/pom.xml index e5ea962ccd..0bc4d09631 100644 --- a/dingrogu-client/pom.xml +++ b/dingrogu-client/pom.xml @@ -59,6 +59,10 @@ org.jboss.pnc spi + + org.jboss.pnc + auth + org.hibernate hibernate-core diff --git a/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguClient.java b/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguClient.java index 0206939b55..e6b190adab 100644 --- a/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguClient.java +++ b/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguClient.java @@ -21,7 +21,9 @@ import org.jboss.pnc.api.dto.Request; import org.jboss.pnc.api.enums.BuildCategory; import org.jboss.pnc.api.enums.BuildType; +import org.jboss.pnc.auth.KeycloakServiceClient; import org.jboss.pnc.common.json.GlobalModuleGroup; +import org.jboss.pnc.common.util.HttpUtils; import org.jboss.pnc.model.utils.ContentIdentityManager; import org.jboss.pnc.spi.coordinator.RemoteBuildTask; @@ -30,6 +32,7 @@ import java.net.URI; import java.util.List; import java.util.Map; +import java.util.Optional; @ApplicationScoped public class DingroguClient { @@ -37,7 +40,13 @@ public class DingroguClient { @Inject private GlobalModuleGroup global; - public Request startProcessInstance(RemoteBuildTask buildTask, List headers, String correlationId) { + @Inject + private KeycloakServiceClient keycloakServiceClient; + + public Request startBuildProcessInstance( + RemoteBuildTask buildTask, + List headers, + String correlationId) { DingroguBuildWorkDTO dto = createDTO(buildTask, correlationId); return new Request( Request.Method.POST, @@ -46,6 +55,14 @@ public Request startProcessInstance(RemoteBuildTask buildTask, List headers, String correlationId) { return new Request( diff --git a/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguDeliverablesAnalysisDTO.java b/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguDeliverablesAnalysisDTO.java new file mode 100644 index 0000000000..1d7d4dfefd --- /dev/null +++ b/dingrogu-client/src/main/java/org/jboss/pnc/dingroguclient/DingroguDeliverablesAnalysisDTO.java @@ -0,0 +1,41 @@ +/** + * JBoss, Home of Professional Open Source. + * Copyright 2014-2022 Red Hat, Inc., and individual contributors + * as indicated by the @author tags. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jboss.pnc.dingroguclient; + +import lombok.Builder; +import lombok.Data; +import lombok.extern.jackson.Jacksonized; +import org.jboss.pnc.api.dto.Request; + +import java.util.List; + +@Jacksonized +@Data +@Builder +public class DingroguDeliverablesAnalysisDTO { + String deliverablesAnalyzerUrl; + String orchUrl; + + List urls; + String config; + boolean scratch; + + String operationId; + // callback for operationId + Request callback; +} diff --git a/remote-build-coordinator/src/main/java/org/jboss/pnc/remotecoordinator/builder/RexFacade.java b/remote-build-coordinator/src/main/java/org/jboss/pnc/remotecoordinator/builder/RexFacade.java index cb17a870db..c0bb50767a 100644 --- a/remote-build-coordinator/src/main/java/org/jboss/pnc/remotecoordinator/builder/RexFacade.java +++ b/remote-build-coordinator/src/main/java/org/jboss/pnc/remotecoordinator/builder/RexFacade.java @@ -446,7 +446,7 @@ private CreateTaskDTO getCreateNewTaskDingroguDTO(RemoteBuildTask buildTask) { new Request.Header(HttpHeaders.ACCEPT_STRING, MediaType.APPLICATION_JSON))); String correlationId = UUID.randomUUID().toString(); - Request remoteStart = dingroguClient.startProcessInstance(buildTask, headers, correlationId); + Request remoteStart = dingroguClient.startBuildProcessInstance(buildTask, headers, correlationId); Request remoteCancel = dingroguClient.cancelProcessInstance(headers, correlationId); BuildMeta buildMetadata = mappers.toBuildMeta(buildTask);