Skip to content

Commit

Permalink
fix(hatchery): give the ability to override default env variables (#3243
Browse files Browse the repository at this point in the history
)

close #3240
Signed-off-by: Benjamin Coenen <benjamin.coenen@corp.ovh.com>
  • Loading branch information
bnjjj committed Aug 22, 2018
1 parent 34edf19 commit 6f27de2
Show file tree
Hide file tree
Showing 6 changed files with 47 additions and 21 deletions.
16 changes: 10 additions & 6 deletions engine/hatchery/kubernetes/kubernetes.go
Original file line number Diff line number Diff line change
Expand Up @@ -303,12 +303,7 @@ func (h *HatcheryKubernetes) SpawnWorker(ctx context.Context, spawnArgs hatchery
if spawnArgs.Model.ModelDocker.Envs == nil {
spawnArgs.Model.ModelDocker.Envs = map[string]string{}
}

envsWm, errEnv := sdk.TemplateEnvs(udataParam, spawnArgs.Model.ModelDocker.Envs)
if errEnv != nil {
return "", errEnv
}

envsWm := map[string]string{}
envsWm["CDS_FORCE_EXIT"] = "1"
envsWm["CDS_API"] = udataParam.API
envsWm["CDS_TOKEN"] = udataParam.Token
Expand All @@ -332,6 +327,15 @@ func (h *HatcheryKubernetes) SpawnWorker(ctx context.Context, spawnArgs hatchery
envsWm["CDS_GRPC_INSECURE"] = fmt.Sprintf("%v", udataParam.GrpcInsecure)
}

envTemplated, errEnv := sdk.TemplateEnvs(udataParam, spawnArgs.Model.ModelDocker.Envs)
if errEnv != nil {
return "", errEnv
}

for envName, envValue := range envTemplated {
envsWm[envName] = envValue
}

envs := make([]apiv1.EnvVar, len(envsWm))
i := 0
for envName, envValue := range envsWm {
Expand Down
15 changes: 10 additions & 5 deletions engine/hatchery/marathon/marathon.go
Original file line number Diff line number Diff line change
Expand Up @@ -303,11 +303,7 @@ func (h *HatcheryMarathon) SpawnWorker(ctx context.Context, spawnArgs hatchery.S
spawnArgs.Model.ModelDocker.Envs = map[string]string{}
}

envsWm, errEnv := sdk.TemplateEnvs(udataParam, spawnArgs.Model.ModelDocker.Envs)
if errEnv != nil {
return "", errEnv
}

envsWm := map[string]string{}
envsWm["CDS_FORCE_EXIT"] = "0"
envsWm["CDS_API"] = udataParam.API
envsWm["CDS_TOKEN"] = udataParam.Token
Expand All @@ -331,6 +327,15 @@ func (h *HatcheryMarathon) SpawnWorker(ctx context.Context, spawnArgs hatchery.S
envsWm["CDS_GRPC_INSECURE"] = fmt.Sprintf("%v", udataParam.GrpcInsecure)
}

envTemplated, errEnv := sdk.TemplateEnvs(udataParam, spawnArgs.Model.ModelDocker.Envs)
if errEnv != nil {
return "", errEnv
}

for envName, envValue := range envTemplated {
envsWm[envName] = envValue
}

application := &marathon.Application{
ID: fmt.Sprintf("%s/%s", h.Config.MarathonIDPrefix, workerName),
Cmd: &cmd,
Expand Down
15 changes: 10 additions & 5 deletions engine/hatchery/swarm/swarm.go
Original file line number Diff line number Diff line change
Expand Up @@ -346,11 +346,7 @@ func (h *HatcherySwarm) SpawnWorker(ctx context.Context, spawnArgs hatchery.Spaw
modelEnvs[k] = v
}

envsWm, errEnv := sdk.TemplateEnvs(udataParam, modelEnvs)
if errEnv != nil {
return "", errEnv
}

envsWm := map[string]string{}
envsWm["CDS_FORCE_EXIT"] = "1"
envsWm["CDS_API"] = udataParam.API
envsWm["CDS_TOKEN"] = udataParam.Token
Expand All @@ -374,6 +370,15 @@ func (h *HatcherySwarm) SpawnWorker(ctx context.Context, spawnArgs hatchery.Spaw
envsWm["CDS_GRPC_INSECURE"] = fmt.Sprintf("%v", udataParam.GrpcInsecure)
}

envTemplated, errEnv := sdk.TemplateEnvs(udataParam, modelEnvs)
if errEnv != nil {
return "", errEnv
}

for envName, envValue := range envTemplated {
envsWm[envName] = envValue
}

envs := make([]string, len(envsWm))
i := 0
for envName, envValue := range envsWm {
Expand Down
6 changes: 4 additions & 2 deletions ui/src/app/shared/breadcrumb/breadcrumb.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,12 @@ export class BreadcrumbComponent {

getProjectQueryParams(): {} {
let queryParams = {};
if (!this.application && this.pipeline) {
if (this.pipeline) {
queryParams['tab'] = 'pipelines';
} else {
} else if (this.application) {
queryParams['tab'] = 'applications';
} else if (this.workflow) {
queryParams['tab'] = 'workflows';
}

return queryParams;
Expand Down
7 changes: 6 additions & 1 deletion ui/src/app/shared/breadcrumb/breadcrumb.html
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
<div class="ui large breadcrumb">
<!-- PROJECT -->
<i class="browser icon"></i>
<a class="section" [class.active]="!application && !pipeline && !action"
<a class="section"
*ngIf="application || pipeline || action || workflow"
[routerLink]="['/project', project.key]"
[queryParams]="getProjectQueryParams()">
{{ project?.name}}
</a>
<span class="section active"
*ngIf="!application && !pipeline && !action && !workflow">
{{ project?.name}}
</span>

<!-- APPLICATION -->
<ng-container *ngIf="application">
Expand Down
9 changes: 7 additions & 2 deletions ui/src/app/views/project/show/project.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,13 @@
<ng-template #projectPart>
<div id="ProjectShow">
<div class="CDSbreadcrumb">
<app-breadcrumb [project]="project" [workflow]="workflowName" [workflowRun]="workflowNum" [workflowRunNode]="workflowNodeRun"
[wPipeline]="workflowPipeline"></app-breadcrumb>
<app-breadcrumb
[project]="project"
[workflow]="workflowName"
[workflowRun]="workflowNum"
[workflowRunNode]="workflowNodeRun"
[wPipeline]="workflowPipeline">
</app-breadcrumb>
<div class="right floated" [title]="'favorite_add_btn' | translate">
<div class="ui active small inline loader" *ngIf="loadingFav"></div>
<i class="pointing star icon" *ngIf="!loadingFav" [class.favorite]="project.favorite" [class.unfavorite]="!project.favorite" (click)="updateFav()"></i>
Expand Down

0 comments on commit 6f27de2

Please sign in to comment.