Skip to content

Commit 0bb20d6

Browse files
feat: Flag to pass build platform globally (#3625)
* default target platform support * useBuildx flag * check for nil buildconfig
1 parent d8f9ab6 commit 0bb20d6

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

pkg/pipeline/CiConfig.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,8 @@ type CiConfig struct {
8585
UseBlobStorageConfigInCiWorkflow bool `env:"USE_BLOB_STORAGE_CONFIG_IN_CI_WORKFLOW" envDefault:"true"`
8686
BaseLogLocationPath string `env:"BASE_LOG_LOCATION_PATH" envDefault:"/home/devtron/"`
8787
InAppLoggingEnabled bool `env:"IN_APP_LOGGING_ENABLED" envDefault:"false"`
88+
DefaultTargetPlatform string `env:"DEFAULT_TARGET_PLATFORM" envDefault:""`
89+
UseBuildx bool `env:"USE_BUILDX" envDefault:"false"`
8890
ClusterConfig *rest.Config
8991
NodeLabel map[string]string
9092
EnableBuildContext bool `env:"ENABLE_BUILD_CONTEXT" envDefault:"false"`

pkg/pipeline/CiService.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,6 +461,15 @@ func (impl *CiServiceImpl) buildWfRequestForCiPipeline(pipeline *pipelineConfig.
461461
buildPackConfig := ciBuildConfigBean.BuildPackConfig
462462
checkoutPath = filepath.Join(checkoutPath, buildPackConfig.ProjectPath)
463463
}
464+
465+
defaultTargetPlatform := impl.ciConfig.DefaultTargetPlatform
466+
useBuildx := impl.ciConfig.UseBuildx
467+
468+
if ciBuildConfigBean.DockerBuildConfig != nil && ciBuildConfigBean.DockerBuildConfig.TargetPlatform == "" && useBuildx {
469+
ciBuildConfigBean.DockerBuildConfig.TargetPlatform = defaultTargetPlatform
470+
ciBuildConfigBean.DockerBuildConfig.UseBuildx = useBuildx
471+
}
472+
464473
workflowRequest := &WorkflowRequest{
465474
WorkflowNamePrefix: strconv.Itoa(savedWf.Id) + "-" + savedWf.Name,
466475
PipelineName: pipeline.Name,

pkg/pipeline/bean/CiBuildConfig.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ type DockerBuildConfig struct {
3535
LanguageFramework string `json:"languageFramework,omitempty"`
3636
DockerBuildOptions map[string]string `json:"dockerBuildOptions,omitempty"`
3737
BuildContext string `json:"buildContext,omitempty"`
38+
UseBuildx bool `json:"useBuildx"`
3839
}
3940

4041
type BuildPackConfig struct {

0 commit comments

Comments
 (0)