@@ -596,7 +596,7 @@ func (handler PipelineConfigRestHandlerImpl) TriggerCiPipeline(w http.ResponseWr
596596 resp , err := handler .ciHandler .HandleCIManual (ciTriggerRequest )
597597 if errors .Is (err , bean1 .ErrImagePathInUse ) {
598598 handler .Logger .Errorw ("service err duplicate image tag, TriggerCiPipeline" , "err" , err , "payload" , ciTriggerRequest )
599- common .WriteJsonResp (w , err , response , http .StatusConflict )
599+ common .WriteJsonResp (w , err , err , http .StatusConflict )
600600 return
601601 }
602602 if err != nil {
@@ -1976,27 +1976,49 @@ func (handler PipelineConfigRestHandlerImpl) extractCipipelineMetaForImageTags(a
19761976 externalCi = false
19771977 ciPipelineId = 0
19781978 appId = 0
1979-
1980- ciPipeline , err := handler .ciPipelineRepository .GetCiPipelineByArtifactId (artifactId )
1981- var externalCiPipeline * pipelineConfig.ExternalCiPipeline
1979+ ciArtifact , err := handler .ciArtifactRepository .Get (artifactId )
19821980 if err != nil {
1983- if err == pg .ErrNoRows {
1984- handler .Logger .Infow ("no ciPipeline found by artifact Id, fetching external ci-pipeline " , "artifactId" , artifactId )
1985- externalCiPipeline , err = handler .ciPipelineRepository .GetExternalCiPipelineByArtifactId (artifactId )
1986- }
1981+ handler .Logger .Errorw ("Error in fetching ci artifact by ci artifact id" , "err" , err )
1982+ return externalCi , ciPipelineId , appId , err
1983+ }
1984+ if ciArtifact .DataSource == repository .POST_CI {
1985+ ciPipelineId = ciArtifact .ComponentId
1986+ ciPipeline , err := handler .pipelineBuilder .GetCiPipelineById (ciPipelineId )
19871987 if err != nil {
1988- handler .Logger .Errorw ("error occurred in fetching ciPipeline/externalCiPipeline by artifact Id " , "err" , err , "artifactId" , artifactId )
1988+ handler .Logger .Errorw ("no ci pipeline found for given artifact" , "err" , err , "artifactId" , artifactId , "ciPipelineId" , ciPipelineId )
19891989 return externalCi , ciPipelineId , appId , err
19901990 }
1991- }
1992-
1993- if ciPipeline .Id != 0 {
1994- ciPipelineId = ciPipeline .Id
19951991 appId = ciPipeline .AppId
1992+ } else if ciArtifact .DataSource == repository .PRE_CD || ciArtifact .DataSource == repository .POST_CD {
1993+ cdPipelineId := ciArtifact .ComponentId
1994+ cdPipeline , err := handler .pipelineBuilder .GetCdPipelineById (cdPipelineId )
1995+ if err != nil {
1996+ handler .Logger .Errorw ("no cd pipeline found for given artifact" , "err" , err , "artifactId" , artifactId , "cdPipelineId" , cdPipelineId )
1997+ return externalCi , ciPipelineId , appId , err
1998+ }
1999+ ciPipelineId = cdPipeline .CiPipelineId
2000+ appId = cdPipeline .AppId
19962001 } else {
1997- externalCi = true
1998- ciPipelineId = externalCiPipeline .Id
1999- appId = externalCiPipeline .AppId
2002+ ciPipeline , err := handler .ciPipelineRepository .GetCiPipelineByArtifactId (artifactId )
2003+ var externalCiPipeline * pipelineConfig.ExternalCiPipeline
2004+ if err != nil {
2005+ if err == pg .ErrNoRows {
2006+ handler .Logger .Infow ("no ciPipeline found by artifact Id, fetching external ci-pipeline " , "artifactId" , artifactId )
2007+ externalCiPipeline , err = handler .ciPipelineRepository .GetExternalCiPipelineByArtifactId (artifactId )
2008+ }
2009+ if err != nil {
2010+ handler .Logger .Errorw ("error occurred in fetching ciPipeline/externalCiPipeline by artifact Id " , "err" , err , "artifactId" , artifactId )
2011+ return externalCi , ciPipelineId , appId , err
2012+ }
2013+ }
2014+ if ciPipeline .Id != 0 {
2015+ ciPipelineId = ciPipeline .Id
2016+ appId = ciPipeline .AppId
2017+ } else {
2018+ externalCi = true
2019+ ciPipelineId = externalCiPipeline .Id
2020+ appId = externalCiPipeline .AppId
2021+ }
20002022 }
20012023 return externalCi , ciPipelineId , appId , nil
20022024}
0 commit comments