Skip to content

Commit ac45a1b

Browse files
author
OpenShift Bot
authored
Merge pull request openshift#557 from spadgett/rs-is-race
Merged by openshift-bot
2 parents b770865 + 5b97c7c commit ac45a1b

File tree

4 files changed

+105
-111
lines changed

4 files changed

+105
-111
lines changed

app/scripts/controllers/deployment.js

+7-7
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ angular.module('openshiftConsole')
1919
Navigate,
2020
ProjectsService,
2121
keyValueEditorUtils) {
22+
var imageStreamImageRefByDockerReference = {}; // lets us determine if a particular container's docker image reference belongs to an imageStream
23+
2224
$scope.projectName = $routeParams.project;
2325
$scope.name = $routeParams.deployment;
2426
$scope.forms = {};
2527
$scope.alerts = {};
26-
$scope.imageStreams = {};
2728
$scope.imagesByDockerReference = {};
28-
$scope.imageStreamImageRefByDockerReference = {}; // lets us determine if a particular container's docker image reference belongs to an imageStream
2929
$scope.breadcrumbs = [
3030
{
3131
title: "Deployments",
@@ -91,7 +91,6 @@ angular.module('openshiftConsole')
9191
$scope.loaded = true;
9292
$scope.deployment = deployment;
9393
updateHPAWarnings();
94-
ImageStreamResolver.fetchReferencedImageStreamImages([deployment.spec.template], $scope.imagesByDockerReference, $scope.imageStreamImageRefByDockerReference, context);
9594

9695
$scope.saveEnvVars = function() {
9796
_.each($scope.updatedDeployment.spec.template.spec.containers, function(container) {
@@ -156,6 +155,7 @@ angular.module('openshiftConsole')
156155
}
157156

158157
updateHPAWarnings();
158+
ImageStreamResolver.fetchReferencedImageStreamImages([deployment.spec.template], $scope.imagesByDockerReference, imageStreamImageRefByDockerReference, context);
159159
}));
160160

161161
// Watch replica sets for this deployment
@@ -194,12 +194,12 @@ angular.module('openshiftConsole')
194194
updateHPAWarnings();
195195
});
196196

197-
watches.push(DataService.watch("imagestreams", context, function(imageStreams) {
198-
$scope.imageStreams = imageStreams.by("metadata.name");
199-
ImageStreamResolver.buildDockerRefMapForImageStreams($scope.imageStreams, $scope.imageStreamImageRefByDockerReference);
197+
watches.push(DataService.watch("imagestreams", context, function(imageStreamData) {
198+
var imageStreams = imageStreamData.by("metadata.name");
199+
ImageStreamResolver.buildDockerRefMapForImageStreams(imageStreams, imageStreamImageRefByDockerReference);
200200
// If the deployment has been loaded already
201201
if ($scope.deployment) {
202-
ImageStreamResolver.fetchReferencedImageStreamImages([$scope.deployment.spec.template], $scope.imagesByDockerReference, $scope.imageStreamImageRefByDockerReference, context);
202+
ImageStreamResolver.fetchReferencedImageStreamImages([$scope.deployment.spec.template], $scope.imagesByDockerReference, imageStreamImageRefByDockerReference, context);
203203
}
204204
Logger.log("imagestreams (subscribe)", $scope.imageStreams);
205205
}));

app/scripts/controllers/deploymentConfig.js

+7-25
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,17 @@ angular.module('openshiftConsole')
2222
LabelFilter,
2323
labelNameFilter,
2424
keyValueEditorUtils) {
25+
var imageStreamImageRefByDockerReference = {}; // lets us determine if a particular container's docker image reference belongs to an imageStream
26+
2527
$scope.projectName = $routeParams.project;
2628
$scope.deploymentConfigName = $routeParams.deploymentconfig;
2729
$scope.deploymentConfig = null;
2830
$scope.deployments = {};
2931
$scope.unfilteredDeployments = {};
30-
$scope.imageStreams = {};
3132
$scope.imagesByDockerReference = {};
32-
$scope.imageStreamImageRefByDockerReference = {}; // lets us determine if a particular container's docker image reference belongs to an imageStream
3333
$scope.builds = {};
3434
$scope.labelSuggestions = {};
3535
$scope.forms = {};
36-
// TODO we should add this back in and show the pod template on this page
37-
//$scope.podTemplates = {};
38-
//$scope.imageStreams = {};
39-
//$scope.imagesByDockerReference = {};
40-
//$scope.imageStreamImageRefByDockerReference = {}; // lets us determine if a particular container's docker image reference belongs to an imageStream
41-
//$scope.builds = {};
4236
$scope.alerts = {};
4337
$scope.breadcrumbs = BreadcrumbsService.getBreadcrumbs({
4438
name: $routeParams.deploymentconfig,
@@ -97,7 +91,6 @@ angular.module('openshiftConsole')
9791
$scope.loaded = true;
9892
$scope.deploymentConfig = deploymentConfig;
9993
updateHPAWarnings();
100-
ImageStreamResolver.fetchReferencedImageStreamImages([deploymentConfig.spec.template], $scope.imagesByDockerReference, $scope.imageStreamImageRefByDockerReference, context);
10194
copyDeploymentConfigAndEnsureEnv(deploymentConfig);
10295
$scope.saveEnvVars = function() {
10396
_.each($scope.updatedDeploymentConfig.spec.template.spec.containers, function(container) {
@@ -156,7 +149,7 @@ angular.module('openshiftConsole')
156149
}
157150

158151
updateHPAWarnings();
159-
ImageStreamResolver.fetchReferencedImageStreamImages([deploymentConfig.spec.template], $scope.imagesByDockerReference, $scope.imageStreamImageRefByDockerReference, context);
152+
ImageStreamResolver.fetchReferencedImageStreamImages([deploymentConfig.spec.template], $scope.imagesByDockerReference, imageStreamImageRefByDockerReference, context);
160153
}));
161154
},
162155
// failure
@@ -170,19 +163,8 @@ angular.module('openshiftConsole')
170163
}
171164
);
172165

173-
// TODO we should add this back in and show the pod template on this page
174-
// function extractPodTemplates() {
175-
// angular.forEach($scope.deployments, function(deployment, deploymentId){
176-
// $scope.podTemplates[deploymentId] = deployment.spec.template;
177-
// });
178-
// }
179-
180166
watches.push(DataService.watch("replicationcontrollers", context, function(deployments, action, deployment) {
181167
var deploymentConfigName = $routeParams.deploymentconfig;
182-
183-
// TODO we should add this back in and show the pod template on this page
184-
// extractPodTemplates();
185-
// ImageStreamResolver.fetchReferencedImageStreamImages($scope.podTemplates, $scope.imagesByDockerReference, $scope.imageStreamImageRefByDockerReference, $scope);
186168
$scope.emptyMessage = "No deployments to show";
187169
if (!action) {
188170
var deploymentsByDeploymentConfig = DeploymentsService.associateDeploymentsToDeploymentConfig(deployments.by("metadata.name"));
@@ -241,12 +223,12 @@ angular.module('openshiftConsole')
241223
updateHPAWarnings();
242224
});
243225

244-
watches.push(DataService.watch("imagestreams", context, function(imageStreams) {
245-
$scope.imageStreams = imageStreams.by("metadata.name");
246-
ImageStreamResolver.buildDockerRefMapForImageStreams($scope.imageStreams, $scope.imageStreamImageRefByDockerReference);
226+
watches.push(DataService.watch("imagestreams", context, function(imageStreamData) {
227+
var imageStreams = imageStreamData.by("metadata.name");
228+
ImageStreamResolver.buildDockerRefMapForImageStreams(imageStreams, imageStreamImageRefByDockerReference);
247229
// If the dep config has been loaded already
248230
if ($scope.deploymentConfig) {
249-
ImageStreamResolver.fetchReferencedImageStreamImages([$scope.deploymentConfig.spec.template], $scope.imagesByDockerReference, $scope.imageStreamImageRefByDockerReference, context);
231+
ImageStreamResolver.fetchReferencedImageStreamImages([$scope.deploymentConfig.spec.template], $scope.imagesByDockerReference, imageStreamImageRefByDockerReference, context);
250232
}
251233
Logger.log("imagestreams (subscribe)", $scope.imageStreams);
252234
}));

app/scripts/controllers/replicaSet.js

+12-8
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ angular.module('openshiftConsole')
4343
break;
4444
}
4545

46+
// lets us determine if a particular container's docker image reference belongs to an imageStream
47+
var imageStreamImageRefByDockerReference = {};
48+
4649
$scope.projectName = $routeParams.project;
4750
$scope.kind = kind;
4851
// Either a ReplicaSet or a ReplicaSetController
@@ -51,9 +54,7 @@ angular.module('openshiftConsole')
5154
$scope.deploymentConfig = null;
5255
$scope.deploymentConfigMissing = false;
5356
$scope.deployments = {};
54-
$scope.imageStreams = {};
5557
$scope.imagesByDockerReference = {};
56-
$scope.imageStreamImageRefByDockerReference = {}; // lets us determine if a particular container's docker image reference belongs to an imageStream
5758
$scope.builds = {};
5859
$scope.alerts = {};
5960
$scope.renderOptions = $scope.renderOptions || {};
@@ -226,14 +227,18 @@ angular.module('openshiftConsole')
226227
// Get the image stream image for the replica set or replication
227228
// controller we're showing to fill out the pod template details.
228229
var getImageStreamImage = function() {
230+
if (_.isEmpty(imageStreamImageRefByDockerReference)) {
231+
return;
232+
}
233+
229234
var podTemplate = _.get($scope, 'deployment.spec.template');
230235
if (!podTemplate) {
231236
return;
232237
}
233238

234239
ImageStreamResolver.fetchReferencedImageStreamImages([ podTemplate ],
235240
$scope.imagesByDockerReference,
236-
$scope.imageStreamImageRefByDockerReference,
241+
imageStreamImageRefByDockerReference,
237242
context);
238243
};
239244

@@ -245,7 +250,6 @@ angular.module('openshiftConsole')
245250
setLogVars(deployment);
246251
updateDC(deployment);
247252
updateHPAWarnings();
248-
getImageStreamImage();
249253

250254
$scope.breadcrumbs = BreadcrumbsService.getBreadcrumbs({ object: deployment });
251255

@@ -354,11 +358,11 @@ angular.module('openshiftConsole')
354358
}));
355359

356360
// Sets up subscription for imageStreams
357-
watches.push(DataService.watch("imagestreams", context, function(imageStreams) {
358-
$scope.imageStreams = imageStreams.by("metadata.name");
359-
ImageStreamResolver.buildDockerRefMapForImageStreams($scope.imageStreams, $scope.imageStreamImageRefByDockerReference);
361+
watches.push(DataService.watch("imagestreams", context, function(imageStreamData) {
362+
var imageStreams = imageStreamData.by('metadata.name');
363+
ImageStreamResolver.buildDockerRefMapForImageStreams(imageStreams, imageStreamImageRefByDockerReference);
360364
getImageStreamImage();
361-
Logger.log("imagestreams (subscribe)", $scope.imageStreams);
365+
Logger.log("imagestreams (subscribe)", imageStreams);
362366
}));
363367

364368
watches.push(DataService.watch("builds", context, function(builds) {

0 commit comments

Comments
 (0)