diff --git a/app/views/directives/from-file.html b/app/views/directives/from-file.html
index e1ccf85f51..ca4a22d6e6 100644
--- a/app/views/directives/from-file.html
+++ b/app/views/directives/from-file.html
@@ -1,28 +1,30 @@
- Create or replace resources from their YAML or JSON definitions. If adding a template, you'll have
- the option to process the template.
-
-
-
+
+
+ Create or replace resources from their YAML or JSON definitions. If adding a template, you'll have
+ the option to process the template.
+
+
+
-
+
diff --git a/app/views/directives/process-template.html b/app/views/directives/process-template.html
index 8812b140ba..296208905e 100644
--- a/app/views/directives/process-template.html
+++ b/app/views/directives/process-template.html
@@ -1,17 +1,19 @@
diff --git a/dist/scripts/scripts.js b/dist/scripts/scripts.js
index 4b5cc99a97..f1cbe2e512 100644
--- a/dist/scripts/scripts.js
+++ b/dist/scripts/scripts.js
@@ -1,9 +1,9 @@
"use strict";
-function OverviewController(e, t, n, a, r, o, i, s, c, l, u, d, m, p, f, g, v, h, y, b, S, C, w, k, P, j) {
+function OverviewController(e, t, n, a, r, o, i, s, c, l, u, d, m, p, f, g, v, h, y, b, C, S, w, k, j, P) {
var R = this, I = t("isIE")();
e.projectName = n.project, R.catalogLandingPageEnabled = !l.DISABLE_SERVICE_CATALOG_LANDING_PAGE;
-var E, T, N = t("annotation"), D = t("canI"), A = t("buildConfigForBuild"), B = t("deploymentIsInProgress"), L = t("imageObjectRef"), U = t("isJenkinsPipelineStrategy"), O = t("isNewerResource"), F = t("label"), x = t("podTemplate"), V = r.getPreferredVersion("servicebindings"), M = r.getPreferredVersion("clusterserviceclasses"), q = r.getPreferredVersion("serviceinstances"), z = r.getPreferredVersion("clusterserviceplans"), H = {}, G = {}, K = {}, W = R.state = {
+var E, N, T = t("annotation"), D = t("canI"), A = t("buildConfigForBuild"), B = t("deploymentIsInProgress"), L = t("imageObjectRef"), U = t("isJenkinsPipelineStrategy"), O = t("isNewerResource"), F = t("label"), x = t("podTemplate"), V = r.getPreferredVersion("servicebindings"), M = r.getPreferredVersion("clusterserviceclasses"), q = r.getPreferredVersion("serviceinstances"), z = r.getPreferredVersion("clusterserviceplans"), H = {}, G = {}, K = {}, W = R.state = {
alerts: {},
builds: {},
clusterQuotas: {},
@@ -66,7 +66,7 @@ return o.groupByApp(e, "metadata.name");
}, ne = function(e) {
var t = null;
return _.each(e, function(e) {
-t = t ? P.getPreferredDisplayRoute(t, e) : e;
+t = t ? j.getPreferredDisplayRoute(t, e) : e;
}), t;
}, ae = _.debounce(function() {
e.$evalAsync(function() {
@@ -164,21 +164,21 @@ ve(e, a);
}
}, be = function(e) {
_.each(e, ye);
-}, Se = function(e) {
+}, Ce = function(e) {
var t = J(e);
return t ? K[t] : null;
-}, Ce = function(e) {
+}, Se = function(e) {
var t = J(e);
return t ? _.get(R, [ "replicationControllersByDeploymentConfig", t ]) : [];
};
R.getPreviousReplicationController = function(e) {
-var t = Ce(e);
+var t = Se(e);
return _.size(t) < 2 ? null : t[1];
};
var _e = function(e) {
-var t = {}, n = Se(e);
+var t = {}, n = Ce(e);
_.assign(t, k.getDeploymentStatusAlerts(e, n), k.getPausedDeploymentAlerts(e));
-var a = Ce(e);
+var a = Se(e);
_.each(a, function(e) {
var n = he(e);
_.assign(t, n);
@@ -188,32 +188,32 @@ _.each(R.deploymentConfigs, _e);
}, ke = function(e) {
var t = Y(e);
return t ? _.get(R, [ "replicaSetsByDeploymentUID", t ]) : {};
-}, Pe = function(e) {
+}, je = function(e) {
var t = k.getPausedDeploymentAlerts(e), n = ke(e);
_.each(n, function(e) {
var n = he(e);
_.assign(t, n);
}), ve(e, t);
-}, je = function() {
-_.each(R.deployments, Pe);
+}, Pe = function() {
+_.each(R.deployments, je);
}, Re = function() {
be(R.replicationControllers), be(R.replicaSets), be(R.statefulSets), be(R.monopods);
}, Ie = _.debounce(function() {
e.$evalAsync(function() {
-Re(), we(), je();
+Re(), we(), Pe();
});
}, 500), Ee = function(e) {
_.isEmpty(e) || (v.addLabelSuggestionsFromResources(e, H), "pipeline" !== R.viewBy && v.setLabelSuggestions(H));
-}, Te = function(e) {
-_.isEmpty(e) || (v.addLabelSuggestionsFromResources(e, G), "pipeline" === R.viewBy && v.setLabelSuggestions(G));
}, Ne = function(e) {
-return "Succeeded" !== e.status.phase && "Failed" !== e.status.phase && (!F(e, "openshift.io/deployer-pod-for.name") && (!N(e, "openshift.io/build.name") && "slave" !== F(e, "jenkins")));
+_.isEmpty(e) || (v.addLabelSuggestionsFromResources(e, G), "pipeline" === R.viewBy && v.setLabelSuggestions(G));
+}, Te = function(e) {
+return "Succeeded" !== e.status.phase && "Failed" !== e.status.phase && (!F(e, "openshift.io/deployer-pod-for.name") && (!T(e, "openshift.io/build.name") && "slave" !== F(e, "jenkins")));
}, De = function() {
-W.podsByOwnerUID = C.groupByOwnerUID(R.pods), R.monopods = _.filter(W.podsByOwnerUID[""], Ne);
+W.podsByOwnerUID = S.groupByOwnerUID(R.pods), R.monopods = _.filter(W.podsByOwnerUID[""], Te);
}, Ae = function(e) {
-return !!_.get(e, "status.replicas") || (!N(e, "deploymentConfig") || B(e));
+return !!_.get(e, "status.replicas") || (!T(e, "deploymentConfig") || B(e));
}, $e = function(e) {
-return N(e, "deploymentConfig");
+return T(e, "deploymentConfig");
}, Be = function() {
if (R.deploymentConfigs && R.replicationControllers) {
var e = [];
@@ -225,7 +225,7 @@ var r = $e(a) || "";
var o = K[r];
o && !O(a, o) || (K[r] = a);
var i;
-"Complete" === N(a, "deploymentStatus") && ((i = t[r]) && !O(a, i) || (t[r] = a)), Ae(a) && _.set(n, [ r, a.metadata.name ], a);
+"Complete" === T(a, "deploymentStatus") && ((i = t[r]) && !O(a, i) || (t[r] = a)), Ae(a) && _.set(n, [ r, a.metadata.name ], a);
}), _.each(t, function(e, t) {
_.set(n, [ t, e.metadata.name ], e);
}), _.each(n, function(e, t) {
@@ -238,14 +238,14 @@ if (_.get(e, "status.replicas")) return !0;
var n = d.getRevision(e);
return !n || !!t && d.getRevision(t) === n;
}, Ue = function() {
-R.replicaSets && E && (R.replicaSetsByDeploymentUID = S.groupByControllerUID(R.replicaSets), R.currentByDeploymentUID = {}, _.each(R.replicaSetsByDeploymentUID, function(e, t) {
+R.replicaSets && E && (R.replicaSetsByDeploymentUID = C.groupByControllerUID(R.replicaSets), R.currentByDeploymentUID = {}, _.each(R.replicaSetsByDeploymentUID, function(e, t) {
if (t) {
var n = E[t], a = _.filter(e, function(e) {
return Le(e, n);
}), r = d.sortByRevision(a);
R.replicaSetsByDeploymentUID[t] = r, R.currentByDeploymentUID[t] = _.head(r);
}
-}), R.vanillaReplicaSets = _.sortBy(R.replicaSetsByDeploymentUID[""], "metadata.name"), je());
+}), R.vanillaReplicaSets = _.sortBy(R.replicaSetsByDeploymentUID[""], "metadata.name"), Pe());
}, Oe = {}, Fe = function(e) {
e && W.allServices && _.each(e, function(e) {
var t = [], n = Y(e), a = x(e);
@@ -262,8 +262,8 @@ var e = [ R.deploymentConfigs, R.vanillaReplicationControllers, R.deployments, R
_.each(e, Fe), ae();
}
}, Ve = function() {
-var e = P.groupByService(R.routes, !0);
-W.routesByService = _.mapValues(e, P.sortRoutesByScore), ae();
+var e = j.groupByService(R.routes, !0);
+W.routesByService = _.mapValues(e, j.sortRoutesByScore), ae();
}, Me = function() {
W.hpaByResource = m.groupHPAs(R.horizontalPodAutoscalers);
}, qe = function(e) {
@@ -301,7 +301,7 @@ _.set(R, [ "deploymentConfigsByPipeline", a ], n), _.each(n, function(e) {
W.pipelinesByDeploymentConfig[e] = W.pipelinesByDeploymentConfig[e] || [], W.pipelinesByDeploymentConfig[e].push(t);
});
}
-}), R.pipelineBuildConfigs = _.sortBy(e, "metadata.name"), oe(), Te(R.pipelineBuildConfigs), ie();
+}), R.pipelineBuildConfigs = _.sortBy(e, "metadata.name"), oe(), Ne(R.pipelineBuildConfigs), ie();
}, Je = function() {
W.buildConfigsByObjectUID = {}, _.each(R.deploymentConfigs, function(e) {
var t = [], n = _.get(e, "spec.triggers");
@@ -385,7 +385,7 @@ R.pods = e.by("metadata.name"), De(), a(), Ie(), Fe(R.monopods), be(R.monopods),
})), at.push(u.watch("replicationcontrollers", n, function(e) {
R.replicationControllers = e.by("metadata.name"), Be(), Fe(R.vanillaReplicationControllers), Fe(R.monopods), be(R.vanillaReplicationControllers), Ee(R.vanillaReplicationControllers), tt(), me(), h.log("replicationcontrollers (subscribe)", R.replicationControllers);
})), at.push(u.watch("deploymentconfigs", n, function(e) {
-R.deploymentConfigs = e.by("metadata.name"), Be(), Fe(R.deploymentConfigs), Fe(R.vanillaReplicationControllers), Ee(R.deploymentConfigs), je(), Ye(), Ze(), tt(), me(), h.log("deploymentconfigs (subscribe)", R.deploymentConfigs);
+R.deploymentConfigs = e.by("metadata.name"), Be(), Fe(R.deploymentConfigs), Fe(R.vanillaReplicationControllers), Ee(R.deploymentConfigs), Pe(), Ye(), Ze(), tt(), me(), h.log("deploymentconfigs (subscribe)", R.deploymentConfigs);
})), at.push(u.watch({
group: "extensions",
resource: "replicasets"
@@ -431,7 +431,7 @@ R.horizontalPodAutoscalers = e.by("metadata.name"), Me(), h.log("autoscalers (su
poll: I,
pollInterval: 6e4
})), at.push(u.watch("imagestreams", n, function(e) {
-T = e.by("metadata.name"), f.buildDockerRefMapForImageStreams(T, W.imageStreamImageRefByDockerReference), a(), h.log("imagestreams (subscribe)", T);
+N = e.by("metadata.name"), f.buildDockerRefMapForImageStreams(N, W.imageStreamImageRefByDockerReference), a(), h.log("imagestreams (subscribe)", N);
}, {
poll: I,
pollInterval: 6e4
@@ -448,14 +448,14 @@ pollInterval: 6e4
}));
var r, o, i = {}, s = {};
c.SERVICE_CATALOG_ENABLED && D(q, "watch") && (r = function(e) {
-var t = j.getServiceClassNameForInstance(e);
+var t = P.getServiceClassNameForInstance(e);
_.has(W, [ "serviceClasses", t ]) || i[t] || (i[t] = u.get(M, t, {}).then(function(e) {
W.serviceClasses[t] = e;
}).finally(function() {
delete s[t];
}));
}, o = function(e) {
-var t = j.getServicePlanNameForInstance(e);
+var t = P.getServicePlanNameForInstance(e);
_.has(W, [ "servicePlans", t ]) || s[t] || (s[t] = u.get(z, t, {}).then(function(e) {
W.servicePlans[t] = e;
}).finally(function() {
@@ -3533,11 +3533,11 @@ return !0;
});
}, y = function(e, t) {
return e ? "Pod" === e.kind ? h(e, t) : _.has(e, "spec.template") ? h(e.spec.template, t) : t : t;
-}, b = t("humanizeQuotaResource"), S = t("humanizeKind"), C = function(e, t, n) {
+}, b = t("humanizeQuotaResource"), C = t("humanizeKind"), S = function(e, t, n) {
var a = e.status.total || e.status;
if (m(a.hard[n]) <= m(a.used[n])) {
var r, o;
-return r = "Pod" === t.kind ? "You will not be able to create the " + S(t.kind) + " '" + t.metadata.name + "'." : "You can still create " + S(t.kind) + " '" + t.metadata.name + "' but no pods will be created until resources are freed.", o = "pods" === n ? "You are at your quota for pods." : "You are at your quota for " + b(n) + " on pods.", {
+return r = "Pod" === t.kind ? "You will not be able to create the " + C(t.kind) + " '" + t.metadata.name + "'." : "You can still create " + C(t.kind) + " '" + t.metadata.name + "' but no pods will be created until resources are freed.", o = "pods" === n ? "You are at your quota for pods." : "You are at your quota for " + b(n) + " on pods.", {
type: "Pod" === t.kind ? "error" : "warning",
message: o,
details: r,
@@ -3565,7 +3565,7 @@ var t = _.get(e, o);
t && (i += m(t));
}), m(r.hard[a]) < m(r.used[a]) + i) {
var s;
-return s = "Pod" === t.kind ? "You may not be able to create the " + S(t.kind) + " '" + t.metadata.name + "'." : "You can still create " + S(t.kind) + " '" + t.metadata.name + "' but you may not have pods created until resources are freed.", {
+return s = "Pod" === t.kind ? "You may not be able to create the " + C(t.kind) + " '" + t.metadata.name + "'." : "You can still create " + C(t.kind) + " '" + t.metadata.name + "' but you may not have pods created until resources are freed.", {
type: "warning",
message: "You are close to your quota for " + b(a) + " on pods.",
details: s,
@@ -3576,24 +3576,24 @@ target: "_blank"
} ]
};
}
-}, P = function(e, t) {
+}, j = function(e, t) {
var n = [], a = "Pod" === e.kind ? e : _.get(e, "spec.template");
return a ? (_.each([ "cpu", "memory", "requests.cpu", "requests.memory", "limits.cpu", "limits.memory", "pods" ], function(r) {
var o = t.status.total || t.status;
if (("Pod" !== e.kind || "pods" !== r) && _.has(o, [ "hard", r ]) && _.has(o, [ "used", r ])) {
-var i = C(t, e, r);
+var i = S(t, e, r);
if (i) n.push(i); else if ("pods" !== r) {
var s = k(t, e, a, r);
s && n.push(s);
}
}
}), n) : n;
-}, j = function(t, n, a) {
+}, P = function(t, n, a) {
var r = [];
return t && n ? (_.each(t, function(t) {
var o = y(t, n), i = y(t, a), s = e.objectToResourceGroupVersion(t);
if (s) {
-var c = e.kindToResource(t.kind, !0), l = S(t.kind), u = "";
+var c = e.kindToResource(t.kind, !0), l = C(t.kind), u = "";
s.group && (u = s.group + "/"), u += s.resource;
var p = function(e) {
var n = e.status.total || e.status;
@@ -3606,7 +3606,7 @@ href: "project/" + e.metadata.namespace + "/quota",
label: "View Quota",
target: "_blank"
} ]
-}), r = r.concat(P(t, e));
+}), r = r.concat(j(t, e));
};
_.each(o, p), _.each(i, p);
}
@@ -3632,8 +3632,8 @@ return {
filterQuotasForResource: y,
isBestEffortPod: g,
isTerminatingPod: v,
-getResourceLimitAlerts: P,
-getQuotaAlerts: j,
+getResourceLimitAlerts: j,
+getQuotaAlerts: P,
getLatestQuotaAlerts: function(e, t) {
var n, a, r = [];
return r.push(s.list("resourcequotas", t).then(function(e) {
@@ -3642,7 +3642,7 @@ n = e.by("metadata.name"), l.log("quotas", n);
a = e.by("metadata.name"), l.log("cluster quotas", a);
})), o.all(r).then(function() {
return {
-quotaAlerts: j(e, n, a)
+quotaAlerts: P(e, n, a)
};
});
},
@@ -4472,15 +4472,15 @@ return !u.isWindowBelowBreakpoint(u.WINDOW_SIZE_SM) && (l.startTour(h.steps), !0
var b = function() {
var t = _.get(e, "template.metadata.uid");
t && c.addItem(t);
-}, S = function(e) {
-return "PartialObjectMetadata" === e.kind;
}, C = function(e) {
-return S(e) ? o.get("templates", e.metadata.name, {
+return "PartialObjectMetadata" === e.kind;
+}, S = function(e) {
+return C(e) ? o.get("templates", e.metadata.name, {
namespace: e.metadata.namespace
}) : m.when(e);
};
e.templateSelected = function(t) {
-C(t).then(function(t) {
+S(t).then(function(t) {
_.set(e, "ordering.panelName", "template"), e.template = t;
});
}, e.closeOrderingPanel = function() {
@@ -4534,7 +4534,7 @@ text: ""
}, e.limitListTo = 250;
var v, h = [ "metadata.name", 'metadata.annotations["openshift.io/display-name"]', 'metadata.annotations["openshift.io/description"]', 'metadata.annotations["openshift.io/requester"]' ], y = function() {
e.projects = s.filterForKeywords(m, h, f);
-}, b = t("displayName"), S = function() {
+}, b = t("displayName"), C = function() {
var t = _.get(e, "sortConfig.currentField.id");
v !== t && (e.sortConfig.isAscending = "metadata.creationTimestamp" !== t);
var n = function(e) {
@@ -4553,8 +4553,8 @@ default:
m = _.orderBy(d, [ t ], [ a ]);
}
v = t;
-}, C = function() {
-S(), y();
+}, S = function() {
+C(), y();
};
e.sortConfig = {
fields: [ {
@@ -4575,10 +4575,10 @@ title: "Creation Date",
sortType: "alpha"
} ],
isAscending: !0,
-onSortChange: C
+onSortChange: S
};
var w = function(t) {
-d = _.toArray(t.by("metadata.name")), e.loading = !1, e.showGetStarted = _.isEmpty(d) && !e.isProjectListIncomplete, C();
+d = _.toArray(t.by("metadata.name")), e.loading = !1, e.showGetStarted = _.isEmpty(d) && !e.isProjectListIncomplete, S();
}, k = function() {
g || u.list().then(w);
};
@@ -4603,7 +4603,7 @@ e.keywords = f = s.generateKeywords(t), e.$applyAsync(y);
u.list().then(function(t) {
e.isProjectListIncomplete = u.isProjectListIncomplete(), w(t), !e.isProjectListIncomplete && _.size(d) <= 250 && (p.push(u.watch(e, w)), g = !0);
}, function() {
-e.isProjectListIncomplete = !0, e.loading = !1, d = [], C();
+e.isProjectListIncomplete = !0, e.loading = !1, d = [], S();
});
}), u.canCreate().then(function() {
e.canCreate = !0;
@@ -4708,7 +4708,7 @@ e.isVisible = !1;
var b = function(e) {
var t = _.get(e, "state", {});
return _.head(_.keys(t));
-}, S = function() {
+}, C = function() {
var t = [];
_.each(e.pod.spec.containers, function(n) {
var a = _.find(e.pod.status.containerStatuses, {
@@ -4723,7 +4723,7 @@ containerState: r
});
var n = _.head(t);
return n.isVisible = !0, n.isUsed = !0, e.selectedTerminalContainer = n, t;
-}, C = function(t) {
+}, S = function(t) {
e.noContainersYet && (e.noContainersYet = 0 === e.containersRunning(t.status.containerStatuses));
}, w = function(t) {
_.each(t, function(t) {
@@ -4732,7 +4732,7 @@ name: t.containerName
}), a = b(n);
t.containerState = a;
});
-}, k = t("annotation"), P = function(t, n) {
+}, k = t("annotation"), j = function(t, n) {
if (e.loaded = !0, e.pod = t, e.dcName = k(t, "deploymentConfig"), e.rcName = k(t, "deployment"), e.deploymentVersion = k(t, "deploymentVersion"), e.logCanRun = !_.includes([ "New", "Pending", "Unknown" ], t.status.phase), g(), delete e.controllerRef, !e.dcName) {
var a = u.getControllerReferences(t);
e.controllerRef = _.find(a, function(e) {
@@ -4748,10 +4748,10 @@ m.get(n.project).then(_.spread(function(a, l) {
f = l, e.project = a, e.projectContext = l, i.get("pods", n.pod, l, {
errorNotification: !1
}).then(function(t) {
-P(t);
+j(t);
var a = {};
-a[t.metadata.name] = t, e.logOptions.container = n.container || t.spec.containers[0].name, e.containerTerminals = S(), C(t), c.fetchReferencedImageStreamImages(a, e.imagesByDockerReference, e.imageStreamImageRefByDockerReference, f), p.push(i.watchObject("pods", n.pod, l, function(t, n) {
-P(t, n), w(e.containerTerminals), C(t);
+a[t.metadata.name] = t, e.logOptions.container = n.container || t.spec.containers[0].name, e.containerTerminals = C(), S(t), c.fetchReferencedImageStreamImages(a, e.imagesByDockerReference, e.imageStreamImageRefByDockerReference, f), p.push(i.watchObject("pods", n.pod, l, function(t, n) {
+j(t, n), w(e.containerTerminals), S(t);
}));
}, function(n) {
e.loaded = !0, e.alerts.load = {
@@ -4923,13 +4923,13 @@ n.filters = {
hideOlderResources: v(e.hideOlderResources) || "true" === e.hideOlderResources,
text: ""
};
-var h, y, b, S;
+var h, y, b, C;
l.isAvailable().then(function(e) {
n.metricsAvailable = e;
});
-var C = a("orderObjectsByDate"), w = [ "metadata.name" ], k = [], P = function() {
-n.filteredPods = s.filterForKeywords(S, w, k), n.filteredReplicationControllers = s.filterForKeywords(y, w, k), n.filteredReplicaSets = s.filterForKeywords(b, w, k), n.filteredBuilds = s.filterForKeywords(h, w, k), n.filteredStatefulSets = s.filterForKeywords(_.values(n.statefulSets), w, k);
-}, j = function(e) {
+var S = a("orderObjectsByDate"), w = [ "metadata.name" ], k = [], j = function() {
+n.filteredPods = s.filterForKeywords(C, w, k), n.filteredReplicationControllers = s.filterForKeywords(y, w, k), n.filteredReplicaSets = s.filterForKeywords(b, w, k), n.filteredBuilds = s.filterForKeywords(h, w, k), n.filteredStatefulSets = s.filterForKeywords(_.values(n.statefulSets), w, k);
+}, P = function(e) {
n.logOptions.pods[e.metadata.name] = {
container: e.spec.containers[0].name
}, n.logCanRun.pods[e.metadata.name] = !_.includes([ "New", "Pending", "Unknown" ], e.status.phase);
@@ -4941,15 +4941,15 @@ t && (n.logOptions.replicationControllers[e.metadata.name].version = t), n.logCa
n.logOptions.builds[e.metadata.name] = {}, n.logCanRun.builds[e.metadata.name] = !_.includes([ "New", "Pending", "Error" ], e.status.phase);
}, E = function() {
n.filteredStatefulSets = s.filterForKeywords(_.values(n.statefulSets), w, k);
-}, T = function() {
-S = _.filter(n.pods, function(e) {
+}, N = function() {
+C = _.filter(n.pods, function(e) {
return !n.filters.hideOlderResources || "Succeeded" !== e.status.phase && "Failed" !== e.status.phase;
-}), n.filteredPods = s.filterForKeywords(S, w, k);
-}, N = a("isIncompleteBuild"), D = a("buildConfigForBuild"), A = a("isRecentBuild"), B = function() {
+}), n.filteredPods = s.filterForKeywords(C, w, k);
+}, T = a("isIncompleteBuild"), D = a("buildConfigForBuild"), A = a("isRecentBuild"), B = function() {
moment().subtract(5, "m");
h = _.filter(n.builds, function(e) {
if (!n.filters.hideOlderResources) return !0;
-if (N(e)) return !0;
+if (T(e)) return !0;
var t = D(e);
return t ? n.latestBuildByConfig[t].metadata.name === e.metadata.name : A(e);
}), n.filteredBuilds = s.filterForKeywords(h, w, k);
@@ -5005,7 +5005,7 @@ var t = _.get(n, [ "podsByOwnerUID", e.metadata.uid ], []);
_.isEmpty(t) || u.toPodsForDeployment(e, t);
}, m.get(e.project).then(_.spread(function(e, a) {
n.project = e, n.projectContext = a, g.push(o.watch("pods", a, function(e) {
-n.podsByName = e.by("metadata.name"), n.pods = C(n.podsByName, !0), n.podsByOwnerUID = d.groupByOwnerUID(n.pods), n.podsLoaded = !0, _.each(n.pods, j), T(), c.log("pods", n.pods);
+n.podsByName = e.by("metadata.name"), n.pods = S(n.podsByName, !0), n.podsByOwnerUID = d.groupByOwnerUID(n.pods), n.podsLoaded = !0, _.each(n.pods, P), N(), c.log("pods", n.pods);
})), g.push(o.watch({
resource: "statefulsets",
group: "apps",
@@ -5016,28 +5016,28 @@ n.statefulSets = e.by("metadata.name"), n.statefulSetsLoaded = !0, E(), c.log("s
poll: f,
pollInterval: 6e4
})), g.push(o.watch("replicationcontrollers", a, function(e) {
-n.replicationControllers = C(e.by("metadata.name"), !0), n.replicationControllersLoaded = !0, _.each(n.replicationControllers, R), O(), c.log("replicationcontrollers", n.replicationControllers);
+n.replicationControllers = S(e.by("metadata.name"), !0), n.replicationControllersLoaded = !0, _.each(n.replicationControllers, R), O(), c.log("replicationcontrollers", n.replicationControllers);
})), g.push(o.watch("builds", a, function(e) {
-n.builds = C(e.by("metadata.name"), !0), n.latestBuildByConfig = r.latestBuildByConfig(n.builds), n.buildsLoaded = !0, _.each(n.builds, I), B(), c.log("builds", n.builds);
+n.builds = S(e.by("metadata.name"), !0), n.latestBuildByConfig = r.latestBuildByConfig(n.builds), n.buildsLoaded = !0, _.each(n.builds, I), B(), c.log("builds", n.builds);
})), g.push(o.watch({
group: "extensions",
resource: "replicasets"
}, a, function(e) {
-n.replicaSets = C(e.by("metadata.name"), !0), n.replicaSetsLoaded = !0, F(), c.log("replicasets", n.replicaSets);
+n.replicaSets = S(e.by("metadata.name"), !0), n.replicaSetsLoaded = !0, F(), c.log("replicasets", n.replicaSets);
}, {
poll: f,
pollInterval: 6e4
})), n.$on("$destroy", function() {
o.unwatchAll(g);
}), n.$watch("filters.hideOlderResources", function() {
-T(), B(), O(), F(), E();
+N(), B(), O(), F(), E();
var e = t.search();
e.hideOlderResources = n.filters.hideOlderResources ? "true" : "false", t.replace().search(e);
}), n.$watch("kindSelector.selected.kind", function() {
var e = t.search();
e.kind = n.kindSelector.selected.kind, t.replace().search(e);
}), n.$watch("filters.text", _.debounce(function() {
-n.filterKeywords = k = s.generateKeywords(n.filters.text), n.$apply(P);
+n.filterKeywords = k = s.generateKeywords(n.filters.text), n.$apply(j);
}, 50, {
maxWait: 250
})), n.$watch("renderOptions.collapseEventsSidebar", function(e, t) {
@@ -5045,7 +5045,7 @@ e !== t && (localStorage.setItem("monitoring.eventsidebar.collapsed", n.renderOp
});
}));
} ]), angular.module("openshiftConsole").controller("MembershipController", [ "$filter", "$location", "$routeParams", "$scope", "$timeout", "$uibModal", "AuthService", "AuthorizationService", "DataService", "ProjectsService", "MembershipService", "NotificationsService", "RoleBindingsService", "RolesService", function(e, t, n, a, r, o, i, s, c, l, u, d, m, p) {
-var f, g = n.project, v = e("humanizeKind"), h = e("annotation"), y = e("canI"), b = [], S = {
+var f, g = n.project, v = e("humanizeKind"), h = e("annotation"), y = e("canI"), b = [], C = {
notice: {
yourLastRole: _.template('Removing the role "<%= roleName %>" may completely remove your ability to see this project.')
},
@@ -5070,7 +5070,7 @@ exists: _.template('The role "<%= roleName %>" has already been granted to "<%=
}
},
errorReason: _.template('Reason: "<%= httpErr %>"')
-}, C = function(e, t, n) {
+}, S = function(e, t, n) {
d.addNotification({
type: e,
message: t,
@@ -5088,7 +5088,7 @@ e && !_.includes(a.serviceAccounts, e) ? a.serviceAccounts = [ e ].concat(t) : a
}
});
});
-}, P = function(e) {
+}, j = function(e) {
c.list("rolebindings", f, null, {
errorNotification: !1
}).then(function(e) {
@@ -5100,31 +5100,31 @@ subjectKindsForUI: u.mapRolebindingsForUI(e.by("metadata.name"), b)
}, function() {
e && (a.roleBindings[e.metadata.name] = e, a.subjectKindsForUI = u.mapRolebindingsForUI(a.roleBindings, b)), w();
});
-}, j = function(t, n) {
+}, P = function(t, n) {
a.disableAddForm = !0, m.create(t, n, g, f).then(function() {
-P(), C("success", S.update.subject.success({
+j(), S("success", C.update.subject.success({
roleName: t.metadata.name,
subjectName: n.name
}));
}, function(a) {
-w(), P(), C("error", S.update.subject.error({
+w(), j(), S("error", C.update.subject.error({
roleName: t.metadata.name,
subjectName: n.name
-}), S.errorReason({
+}), C.errorReason({
httpErr: e("getErrorDetails")(a)
}));
});
}, R = function(t, n, r) {
a.disableAddForm = !0, m.addSubject(t, n, r, f).then(function() {
-P(), C("success", S.update.subject.success({
+j(), S("success", C.update.subject.success({
roleName: t.roleRef.name,
subjectName: n.name
}));
}, function(a) {
-w(), P(), C("error", S.update.subject.error({
+w(), j(), S("error", C.update.subject.error({
roleName: t.roleRef.name,
subjectName: n.name
-}), S.errorReason({
+}), C.errorReason({
httpErr: e("getErrorDetails")(a)
}));
});
@@ -5168,10 +5168,10 @@ return e ? a + (h(e, "description") || "") : "";
}
}
});
-var T = function(e, t, n, r) {
+var N = function(e, t, n, r) {
var o = {
alerts: {},
-detailsMarkup: S.remove.areYouSure.html.subject({
+detailsMarkup: C.remove.areYouSure.html.subject({
roleName: n,
kindName: v(t),
subjectName: e
@@ -5180,17 +5180,17 @@ okButtonText: "Remove",
okButtonClass: "btn-danger",
cancelButtonText: "Cancel"
};
-return _.isEqual(e, r) && (o.detailsMarkup = S.remove.areYouSure.html.self({
+return _.isEqual(e, r) && (o.detailsMarkup = C.remove.areYouSure.html.self({
roleName: n,
subjectName: e
}), u.isLastRole(a.user.metadata.name, a.roleBindings) && (o.alerts.currentUserLabelRole = {
type: "error",
-message: S.notice.yourLastRole({
+message: C.notice.yourLastRole({
roleName: n
})
})), _.isEqual(t, "ServiceAccount") && _.startsWith(n, "system:") && (o.alerts.editingServiceAccountRole = {
type: "error",
-message: S.warning.serviceAccount()
+message: C.warning.serviceAccount()
}), o;
};
i.withUser().then(function(e) {
@@ -5209,12 +5209,12 @@ e && !_.includes(a.projects, e) ? a.projects = [ e ].concat(t) : a.projects = t;
}
});
}), l.get(n.project).then(_.spread(function(n, r) {
-f = r, P(), k(f), angular.extend(a, {
+f = r, j(), k(f), angular.extend(a, {
project: n,
subjectKinds: E,
canUpdateRolebindings: y("rolebindings", "update", g),
confirmRemove: function(n, r, i) {
-var c = null, l = T(n, r, i, a.user.metadata.name);
+var c = null, l = N(n, r, i, a.user.metadata.name);
_.isEqual(n, a.user.metadata.name) && u.isLastRole(a.user.metadata.name, a.roleBindings) && (c = !0), o.open({
animation: !0,
templateUrl: "views/modals/confirm.html",
@@ -5227,7 +5227,7 @@ return l;
}).result.then(function() {
m.removeSubject(n, i, a.roleBindings, f).then(function(e) {
c ? t.url("./") : (s.getProjectRules(g, !0).then(function() {
-P(e[0]);
+j(e[0]);
var t = y("rolebindings", "update", g);
angular.extend(a, {
canUpdateRolebindings: t,
@@ -5235,15 +5235,15 @@ mode: {
edit: !!a.mode.edit && t
}
});
-}), C("success", S.remove.success({
+}), S("success", C.remove.success({
roleName: i,
subjectName: n
})));
}, function(t) {
-C("error", S.remove.error({
+S("error", C.remove.error({
roleName: i,
subjectName: n
-}), S.errorReason({
+}), C.errorReason({
httpErr: e("getErrorDetails")(t)
}));
});
@@ -5260,10 +5260,10 @@ roleRef: {
name: n.metadata.name
}
});
-i && _.some(i.subjects, o) ? C("error", S.update.subject.exists({
+i && _.some(i.subjects, o) ? S("error", C.update.subject.exists({
roleName: n.metadata.name,
subjectName: e
-})) : i ? R(i, o, r) : j(n, o);
+})) : i ? R(i, o, r) : P(n, o);
}
}), p.listAllRoles(f, {
errorNotification: !1
@@ -5276,7 +5276,7 @@ name: e
}
});
};
-P(), angular.extend(a, {
+j(), angular.extend(a, {
toggle: {
roles: !1
},
@@ -5728,7 +5728,7 @@ title: n.deployment
} ];
var v = a.getPreferredVersion("builds"), h = a.getPreferredVersion("replicasets"), y = a.getPreferredVersion("limitranges"), b = a.getPreferredVersion("imagestreams");
e.deploymentsVersion = a.getPreferredVersion("deployments"), e.eventsVersion = a.getPreferredVersion("events"), e.horizontalPodAutoscalersVersion = a.getPreferredVersion("horizontalpodautoscalers"), e.healthCheckURL = d.healthCheckURL(n.project, "Deployment", n.deployment, e.deploymentsVersion.group);
-var S = [];
+var C = [];
p.get(n.project).then(_.spread(function(a, d) {
function p() {
c.getLabelSelector().isEmpty() || !_.isEmpty(e.replicaSetsForDeployment) || _.isEmpty(e.unfilteredReplicaSetsForDeployment) ? delete e.alerts["filter-hiding-all"] : e.alerts["filter-hiding-all"] = {
@@ -5737,20 +5737,20 @@ details: "The active filters are hiding all rollout history."
};
}
e.project = a, e.projectContext = d;
-var C = {}, w = function() {
-i.getHPAWarnings(e.deployment, e.autoscalers, C, a).then(function(t) {
+var S = {}, w = function() {
+i.getHPAWarnings(e.deployment, e.autoscalers, S, a).then(function(t) {
e.hpaWarnings = t;
});
};
r.get(e.deploymentsVersion, n.deployment, d, {
errorNotification: !1
}).then(function(t) {
-e.loaded = !0, e.deployment = t, w(), S.push(r.watchObject(e.deploymentsVersion, n.deployment, d, function(t, n) {
+e.loaded = !0, e.deployment = t, w(), C.push(r.watchObject(e.deploymentsVersion, n.deployment, d, function(t, n) {
"DELETED" === n && (e.alerts.deleted = {
type: "warning",
message: "This deployment has been deleted."
}), e.deployment = t, e.updatingPausedState = !1, w(), s.fetchReferencedImageStreamImages([ t.spec.template ], e.imagesByDockerReference, g, d);
-})), S.push(r.watch(h, d, function(n) {
+})), C.push(r.watch(h, d, function(n) {
e.emptyMessage = "No deployments to show";
var a = n.by("metadata.name");
a = m.filterForController(a, t), e.inProgressDeployment = _.chain(a).filter("status.replicas").length > 1, e.unfilteredReplicaSetsForDeployment = o.sortByRevision(a), e.replicaSetsForDeployment = c.getLabelSelector().select(e.unfilteredReplicaSetsForDeployment), p(), c.addLabelSuggestionsFromResources(e.unfilteredReplicaSetsForDeployment, e.labelSuggestions), c.setLabelSuggestions(e.labelSuggestions);
@@ -5762,13 +5762,13 @@ message: 404 === n.status ? "This deployment can not be found, it may have been
details: t("getErrorDetails")(n)
};
}), r.list(y, d).then(function(e) {
-C = e.by("metadata.name"), w();
-}), S.push(r.watch(b, d, function(t) {
+S = e.by("metadata.name"), w();
+}), C.push(r.watch(b, d, function(t) {
var n = t.by("metadata.name");
s.buildDockerRefMapForImageStreams(n, g), e.deployment && s.fetchReferencedImageStreamImages([ e.deployment.spec.template ], e.imagesByDockerReference, g, d), l.log("imagestreams (subscribe)", e.imageStreams);
-})), S.push(r.watch(e.horizontalPodAutoscalersVersion, d, function(t) {
+})), C.push(r.watch(e.horizontalPodAutoscalersVersion, d, function(t) {
e.autoscalers = i.filterHPA(t.by("metadata.name"), "Deployment", n.deployment), w();
-})), S.push(r.watch(v, d, function(t) {
+})), C.push(r.watch(v, d, function(t) {
e.builds = t.by("metadata.name"), l.log("builds (subscribe)", e.builds);
})), c.onActiveFiltersChanged(function(t) {
e.$evalAsync(function() {
@@ -5803,7 +5803,7 @@ cancelButtonText: "Cancel"
f.removeVolume(e.deployment, t, d);
});
}, e.$on("$destroy", function() {
-r.unwatchAll(S);
+r.unwatchAll(C);
});
}));
} ]), angular.module("openshiftConsole").controller("DeploymentConfigController", [ "$scope", "$filter", "$routeParams", "APIService", "BreadcrumbsService", "DataService", "DeploymentsService", "HPAService", "ImageStreamResolver", "ModalsService", "Navigate", "NotificationsService", "Logger", "ProjectsService", "StorageService", "LabelFilter", "labelNameFilter", function(e, t, n, a, r, o, i, s, c, l, u, d, m, p, f, g, v) {
@@ -5813,9 +5813,9 @@ name: n.deploymentconfig,
kind: "DeploymentConfig",
namespace: n.project
}), e.emptyMessage = "Loading...", e.deploymentConfigsInstantiateVersion = a.getPreferredVersion("deploymentconfigs/instantiate"), e.deploymentConfigsVersion = a.getPreferredVersion("deploymentconfigs"), e.eventsVersion = a.getPreferredVersion("events"), e.horizontalPodAutoscalersVersion = a.getPreferredVersion("horizontalpodautoscalers");
-var y = a.getPreferredVersion("builds"), b = a.getPreferredVersion("imagestreams"), S = a.getPreferredVersion("limitranges"), C = a.getPreferredVersion("replicationcontrollers");
+var y = a.getPreferredVersion("builds"), b = a.getPreferredVersion("imagestreams"), C = a.getPreferredVersion("limitranges"), S = a.getPreferredVersion("replicationcontrollers");
e.healthCheckURL = u.healthCheckURL(n.project, "DeploymentConfig", n.deploymentconfig, e.deploymentConfigsVersion.group);
-var w = t("mostRecent"), k = t("orderObjectsByDate"), P = [];
+var w = t("mostRecent"), k = t("orderObjectsByDate"), j = [];
p.get(n.project).then(_.spread(function(a, r) {
function u() {
g.getLabelSelector().isEmpty() || !$.isEmptyObject(e.deployments) || $.isEmptyObject(e.unfilteredDeployments) ? delete e.alerts.deployments : e.alerts.deployments = {
@@ -5832,7 +5832,7 @@ e.hpaWarnings = t;
o.get(e.deploymentConfigsVersion, n.deploymentconfig, r, {
errorNotification: !1
}).then(function(a) {
-e.loaded = !0, e.deploymentConfig = a, e.strategyParams = t("deploymentStrategyParams")(a), p(), P.push(o.watchObject(e.deploymentConfigsVersion, n.deploymentconfig, r, function(t, n) {
+e.loaded = !0, e.deploymentConfig = a, e.strategyParams = t("deploymentStrategyParams")(a), p(), j.push(o.watchObject(e.deploymentConfigsVersion, n.deploymentconfig, r, function(t, n) {
"DELETED" === n && (e.alerts.deleted = {
type: "warning",
message: "This deployment configuration has been deleted."
@@ -5844,7 +5844,7 @@ type: "error",
message: 404 === n.status ? "This deployment configuration can not be found, it may have been deleted." : "The deployment configuration details could not be loaded.",
details: 404 === n.status ? "Any remaining deployment history for this deployment will be shown." : t("getErrorDetails")(n)
};
-}), P.push(o.watch(C, r, function(a, r, o) {
+}), j.push(o.watch(S, r, function(a, r, o) {
var s = n.deploymentconfig;
if (e.emptyMessage = "No deployments to show", r) {
if (i.deploymentBelongsToConfig(o, n.deploymentconfig)) {
@@ -5872,14 +5872,14 @@ params: {
labelSelector: v("deploymentConfig") + "=" + e.deploymentConfigName
}
}
-})), o.list(S, r).then(function(e) {
+})), o.list(C, r).then(function(e) {
d = e.by("metadata.name"), p();
-}), P.push(o.watch(b, r, function(t) {
+}), j.push(o.watch(b, r, function(t) {
var n = t.by("metadata.name");
c.buildDockerRefMapForImageStreams(n, h), e.deploymentConfig && c.fetchReferencedImageStreamImages([ e.deploymentConfig.spec.template ], e.imagesByDockerReference, h, r), m.log("imagestreams (subscribe)", e.imageStreams);
-})), P.push(o.watch(y, r, function(t) {
+})), j.push(o.watch(y, r, function(t) {
e.builds = t.by("metadata.name"), m.log("builds (subscribe)", e.builds);
-})), P.push(o.watch(e.horizontalPodAutoscalersVersion, r, function(t) {
+})), j.push(o.watch(e.horizontalPodAutoscalersVersion, r, function(t) {
e.autoscalers = s.filterHPA(t.by("metadata.name"), "DeploymentConfig", n.deploymentconfig), p();
})), g.onActiveFiltersChanged(function(t) {
e.$apply(function() {
@@ -5906,7 +5906,7 @@ details: t("getErrorDetails")(a)
};
});
};
-var j = function() {
+var P = function() {
if (_.get(e, "deploymentConfig.spec.paused")) return !1;
var t = _.get(e, "deploymentConfig.spec.triggers", []);
return _.some(t, {
@@ -5915,7 +5915,7 @@ type: "ConfigChange"
};
e.removeVolume = function(t) {
var n;
-n = j() ? "This will remove the volume from the deployment config and trigger a new deployment." : "This will remove the volume from the deployment config.", t.persistentVolumeClaim ? n += " It will not delete the persistent volume claim." : t.secret ? n += " It will not delete the secret." : t.configMap && (n += " It will not delete the config map.");
+n = P() ? "This will remove the volume from the deployment config and trigger a new deployment." : "This will remove the volume from the deployment config.", t.persistentVolumeClaim ? n += " It will not delete the persistent volume claim." : t.secret ? n += " It will not delete the secret." : t.configMap && (n += " It will not delete the config map.");
l.confirm({
message: "Remove volume " + t.name + "?",
details: n,
@@ -5926,11 +5926,11 @@ cancelButtonText: "Cancel"
f.removeVolume(e.deploymentConfig, t, r);
});
}, e.$on("$destroy", function() {
-o.unwatchAll(P);
+o.unwatchAll(j);
});
}));
} ]), angular.module("openshiftConsole").controller("ReplicaSetController", [ "$scope", "$filter", "$routeParams", "AuthorizationService", "BreadcrumbsService", "DataService", "DeploymentsService", "HPAService", "ImageStreamResolver", "Logger", "MetricsService", "ModalsService", "Navigate", "OwnerReferencesService", "PodsService", "ProjectsService", "StorageService", "keyValueEditorUtils", "kind", function(e, t, n, a, r, o, i, s, c, l, u, d, m, p, f, g, v, h, y) {
-var b = !1, S = t("annotation"), C = t("humanizeKind")(y), w = t("hasDeployment");
+var b = !1, C = t("annotation"), S = t("humanizeKind")(y), w = t("hasDeployment");
switch (y) {
case "ReplicaSet":
e.resource = {
@@ -5944,12 +5944,12 @@ e.resource = "replicationcontrollers", e.healthCheckURL = m.healthCheckURL(n.pro
}
var k = {};
e.projectName = n.project, e.kind = y, e.replicaSet = null, e.deploymentConfig = null, e.deploymentConfigMissing = !1, e.imagesByDockerReference = {}, e.builds = {}, e.alerts = {}, e.renderOptions = e.renderOptions || {}, e.renderOptions.hideFilterWidget = !0, e.forms = {}, e.logOptions = {};
-var P = [];
+var j = [];
u.isAvailable().then(function(t) {
e.metricsAvailable = t;
});
-var j = t("deploymentStatus"), R = function(t) {
-e.logCanRun = !_.includes([ "New", "Pending" ], j(t));
+var P = t("deploymentStatus"), R = function(t) {
+e.logCanRun = !_.includes([ "New", "Pending" ], P(t));
}, I = t("isIE")();
g.get(n.project).then(_.spread(function(u, g) {
e.project = u, e.projectContext = g;
@@ -5961,22 +5961,22 @@ e.autoscalers = e.hpaForRS.concat(t);
var a = s.filterHPA(h, "Deployment", e.deployment.metadata.name);
e.autoscalers = e.hpaForRS.concat(a);
} else e.autoscalers = e.hpaForRS;
-}, T = function() {
-P.push(o.watch(e.resource, g, function(t) {
+}, N = function() {
+j.push(o.watch(e.resource, g, function(t) {
var n, a = [];
angular.forEach(t.by("metadata.name"), function(t) {
-(S(t, "deploymentConfig") || "") === e.deploymentConfigName && a.push(t);
+(C(t, "deploymentConfig") || "") === e.deploymentConfigName && a.push(t);
}), n = i.getActiveDeployment(a), e.isActive = n && n.metadata.uid === e.replicaSet.metadata.uid, E();
}));
-}, N = function() {
+}, T = function() {
s.getHPAWarnings(e.replicaSet, e.autoscalers, e.limitRanges, u).then(function(t) {
e.hpaWarnings = t;
});
}, D = function(a) {
-var r = S(a, "deploymentConfig");
+var r = C(a, "deploymentConfig");
if (r) {
b = !0, e.deploymentConfigName = r;
-var i = S(a, "deploymentVersion");
+var i = C(a, "deploymentVersion");
i && (e.logOptions.version = i), e.healthCheckURL = m.healthCheckURL(n.project, "DeploymentConfig", r), o.get("deploymentconfigs", r, g, {
errorNotification: !1
}).then(function(t) {
@@ -6008,7 +6008,7 @@ a && o.get({
group: "apps",
resource: "deployments"
}, a.name, g).then(function(t) {
-e.deployment = t, e.healthCheckURL = m.healthCheckURL(n.project, "Deployment", t.metadata.name, "apps"), P.push(o.watchObject({
+e.deployment = t, e.healthCheckURL = m.healthCheckURL(n.project, "Deployment", t.metadata.name, "apps"), j.push(o.watchObject({
group: "apps",
resource: "deployments"
}, t.metadata.name, g, function(t, a) {
@@ -6025,7 +6025,7 @@ link: m.resourceURL(e.deployment)
},
humanizedKind: "Deployments"
}), A(), E();
-})), P.push(o.watch({
+})), j.push(o.watch({
group: "extensions",
resource: "replicasets"
}, g, function(e) {
@@ -6050,56 +6050,56 @@ break;
case "ReplicaSet":
L();
}
-N(), e.breadcrumbs = r.getBreadcrumbs({
+T(), e.breadcrumbs = r.getBreadcrumbs({
object: t
-}), P.push(o.watchObject(e.resource, n.replicaSet, g, function(t, n) {
+}), j.push(o.watchObject(e.resource, n.replicaSet, g, function(t, n) {
"DELETED" === n && (e.alerts.deleted = {
type: "warning",
-message: "This " + C + " has been deleted."
-}), e.replicaSet = t, R(t), N(), U(), e.deployment && A();
-})), e.deploymentConfigName && T(), P.push(o.watch("pods", g, function(t) {
+message: "This " + S + " has been deleted."
+}), e.replicaSet = t, R(t), T(), U(), e.deployment && A();
+})), e.deploymentConfigName && N(), j.push(o.watch("pods", g, function(t) {
var n = t.by("metadata.name");
e.podsForDeployment = f.filterForOwner(n, e.replicaSet);
}));
}, function(a) {
e.loaded = !0, e.alerts.load = {
type: "error",
-message: "The " + C + " details could not be loaded.",
+message: "The " + S + " details could not be loaded.",
details: t("getErrorDetails")(a)
}, e.breadcrumbs = r.getBreadcrumbs({
name: n.replicaSet,
kind: y,
namespace: n.project
});
-}), P.push(o.watch(e.resource, g, function(n, a, r) {
+}), j.push(o.watch(e.resource, g, function(n, a, r) {
e.replicaSets = n.by("metadata.name"), "ReplicationController" === y && (e.deploymentsByDeploymentConfig = i.associateDeploymentsToDeploymentConfig(e.replicaSets));
var o, s;
-r && (o = S(r, "deploymentConfig"), s = r.metadata.name), e.deploymentConfigDeploymentsInProgress = e.deploymentConfigDeploymentsInProgress || {}, a ? "ADDED" === a || "MODIFIED" === a && t("deploymentIsInProgress")(r) ? (e.deploymentConfigDeploymentsInProgress[o] = e.deploymentConfigDeploymentsInProgress[o] || {}, e.deploymentConfigDeploymentsInProgress[o][s] = r) : "MODIFIED" === a && e.deploymentConfigDeploymentsInProgress[o] && delete e.deploymentConfigDeploymentsInProgress[o][s] : e.deploymentConfigDeploymentsInProgress = i.associateRunningDeploymentToDeploymentConfig(e.deploymentsByDeploymentConfig), r ? "DELETED" !== a && (r.causes = t("deploymentCauses")(r)) : angular.forEach(e.replicaSets, function(e) {
+r && (o = C(r, "deploymentConfig"), s = r.metadata.name), e.deploymentConfigDeploymentsInProgress = e.deploymentConfigDeploymentsInProgress || {}, a ? "ADDED" === a || "MODIFIED" === a && t("deploymentIsInProgress")(r) ? (e.deploymentConfigDeploymentsInProgress[o] = e.deploymentConfigDeploymentsInProgress[o] || {}, e.deploymentConfigDeploymentsInProgress[o][s] = r) : "MODIFIED" === a && e.deploymentConfigDeploymentsInProgress[o] && delete e.deploymentConfigDeploymentsInProgress[o][s] : e.deploymentConfigDeploymentsInProgress = i.associateRunningDeploymentToDeploymentConfig(e.deploymentsByDeploymentConfig), r ? "DELETED" !== a && (r.causes = t("deploymentCauses")(r)) : angular.forEach(e.replicaSets, function(e) {
e.causes = t("deploymentCauses")(e);
});
-})), P.push(o.watch("imagestreams", g, function(e) {
+})), j.push(o.watch("imagestreams", g, function(e) {
var t = e.by("metadata.name");
c.buildDockerRefMapForImageStreams(t, k), U(), l.log("imagestreams (subscribe)", t);
-})), P.push(o.watch("builds", g, function(t) {
+})), j.push(o.watch("builds", g, function(t) {
e.builds = t.by("metadata.name"), l.log("builds (subscribe)", e.builds);
-})), P.push(o.watch({
+})), j.push(o.watch({
group: "autoscaling",
resource: "horizontalpodautoscalers",
version: "v1"
}, g, function(e) {
-h = e.by("metadata.name"), E(), N();
+h = e.by("metadata.name"), E(), T();
}, {
poll: I,
pollInterval: 6e4
})), o.list("limitranges", g).then(function(t) {
-e.limitRanges = t.by("metadata.name"), N();
+e.limitRanges = t.by("metadata.name"), T();
});
-P.push(o.watch("resourcequotas", g, function(t) {
+j.push(o.watch("resourcequotas", g, function(t) {
e.quotas = t.by("metadata.name");
}, {
poll: !0,
pollInterval: 6e4
-})), P.push(o.watch("appliedclusterresourcequotas", g, function(t) {
+})), j.push(o.watch("appliedclusterresourcequotas", g, function(t) {
e.clusterQuotas = t.by("metadata.name");
}, {
poll: !0,
@@ -6107,7 +6107,7 @@ pollInterval: 6e4
}));
var O = t("deploymentIsLatest");
e.showRollbackAction = function() {
-return "Complete" === j(e.replicaSet) && !O(e.replicaSet, e.deploymentConfig) && !e.replicaSet.metadata.deletionTimestamp && a.canI("deploymentconfigrollbacks", "create");
+return "Complete" === P(e.replicaSet) && !O(e.replicaSet, e.deploymentConfig) && !e.replicaSet.metadata.deletionTimestamp && a.canI("deploymentconfigrollbacks", "create");
}, e.retryFailedDeployment = function(t) {
i.retryFailedDeployment(t, g, e);
}, e.rollbackToDeployment = function(t, n, a, r) {
@@ -6140,7 +6140,7 @@ cancelButtonText: "Cancel"
v.removeVolume(e.replicaSet, n, g);
});
}, e.$on("$destroy", function() {
-o.unwatchAll(P);
+o.unwatchAll(j);
});
}));
} ]), angular.module("openshiftConsole").controller("StatefulSetsController", [ "$scope", "$routeParams", "DataService", "ProjectsService", "LabelFilter", "PodsService", function(e, t, n, a, r, o) {
@@ -6378,12 +6378,12 @@ c.warn("Unable to load parameters from secret " + _.get(t, "secretKeyRef.name"),
}));
});
}
-}, S = function() {
+}, C = function() {
if (e.plan && e.serviceClass && e.serviceInstance) {
var t = _.get(e.plan, "spec.instanceUpdateParameterSchema"), n = _.size(_.get(t, "properties")) > 0 || _.get(e.serviceClass, "spec.planUpdatable") && _.size(e.servicePlans) > 1;
e.editAvailable = n && v(e.serviceInstance) && !_.get(e.serviceInstance, "metadata.deletionTimestamp");
}
-}, C = function() {
+}, S = function() {
e.parameterFormDefinition = angular.copy(_.get(e.plan, "spec.externalMetadata.schemas.service_instance.update.openshift_form_definition")), e.parameterSchema = _.get(e.plan, "spec.instanceCreateParameterSchema"), b();
}, w = function() {
!e.serviceInstance || e.serviceClass || m || (m = d.fetchServiceClassForInstance(e.serviceInstance).then(function(t) {
@@ -6392,14 +6392,14 @@ t = t.by("metadata.name");
var n = _.get(e.serviceInstance, "spec.clusterServicePlanRef.name");
e.servicePlans = _.reject(t, function(e) {
return _.get(e, "status.removedFromBrokerCatalog") && e.metadata.name !== n;
-}), e.plan = t[n], C(), S();
+}), e.plan = t[n], S(), C();
});
}));
}, k = function(t, n) {
e.loaded = !0, e.serviceInstance = t, "DELETED" === n && (e.alerts.deleted = {
type: "warning",
message: "This provisioned service has been deleted."
-}), w(), b(), S();
+}), w(), b(), C();
};
l.get(n.project).then(_.spread(function(a, o) {
e.project = a, e.projectContext = o, s.get(e.serviceInstancesVersion, n.instance, o, {
@@ -6978,13 +6978,13 @@ e.$on("$destroy", b), u.get(a.project).then(_.spread(function(n, r) {
e.project = n, e.context = r, i.canI("buildconfigs", "update", a.project) ? s.get("buildconfigs", a.buildconfig, r, {
errorNotification: !1
}).then(function(t) {
-e.buildConfig = t, f(), e.updatedBuildConfig = angular.copy(e.buildConfig), e.buildStrategy = h(e.updatedBuildConfig), e.strategyType = e.buildConfig.spec.strategy.type, e.envVars = e.buildStrategy.env || [], e.triggers = S(e.triggers, e.buildConfig.spec.triggers), e.sources = I(e.sources, e.buildConfig.spec.source), _.has(t, "spec.strategy.jenkinsPipelineStrategy.jenkinsfile") && (e.jenkinsfileOptions.type = "inline"), s.list("secrets", r).then(function(t) {
+e.buildConfig = t, f(), e.updatedBuildConfig = angular.copy(e.buildConfig), e.buildStrategy = h(e.updatedBuildConfig), e.strategyType = e.buildConfig.spec.strategy.type, e.envVars = e.buildStrategy.env || [], e.triggers = C(e.triggers, e.buildConfig.spec.triggers), e.sources = I(e.sources, e.buildConfig.spec.source), _.has(t, "spec.strategy.jenkinsPipelineStrategy.jenkinsfile") && (e.jenkinsfileOptions.type = "inline"), s.list("secrets", r).then(function(t) {
var n = m.groupSecretsByType(t), a = _.mapValues(n, function(e) {
return _.map(e, "metadata.name");
});
e.secrets.secretsByType = _.each(a, function(e) {
e.unshift("");
-}), P();
+}), j();
});
var n = function(e, n) {
e.type = n && n.kind ? n.kind : "None";
@@ -7029,7 +7029,7 @@ details: "Reason: " + t("getErrorDetails")(n)
};
}) : c.toErrorPage("You do not have authority to update build config " + a.buildconfig + ".", "access_denied");
}));
-var S = function(n, a) {
+var C = function(n, a) {
function r(n, a) {
return t("imageObjectRef")(n, e.projectName) === t("imageObjectRef")(a, e.projectName);
}
@@ -7097,7 +7097,7 @@ e.aceLoaded = function(e) {
var t = e.getSession();
t.setOption("tabSize", 2), t.setOption("useSoftTabs", !0), e.$blockScrolling = 1 / 0;
};
-var C = function(e) {
+var S = function(e) {
return _.map(p.compactEntries(e), function(e) {
return {
sourcePath: e.name,
@@ -7134,7 +7134,7 @@ var t = [].concat(e.triggers.githubWebhooks, e.triggers.gitlabWebhooks, e.trigge
return t = _.filter(t, function(e) {
return _.has(e, "disabled") && !e.disabled || e.present;
}), t = _.map(t, "data");
-}, P = function() {
+}, j = function() {
switch (e.secrets.picked = {
gitSecret: e.buildConfig.spec.source.sourceSecret ? [ e.buildConfig.spec.source.sourceSecret ] : [ {
name: ""
@@ -7164,7 +7164,7 @@ name: ""
mountPath: ""
} ];
}
-}, j = function(e, t, n) {
+}, P = function(e, t, n) {
t.name ? e[n] = t : delete e[n];
}, R = function(t, n) {
var a = "Custom" === e.strategyType ? "secretSource" : "secret", r = _.filter(n, function(e) {
@@ -7199,7 +7199,7 @@ break;
case "JenkinsPipeline":
"path" === e.jenkinsfileOptions.type ? delete e.updatedBuildConfig.spec.strategy.jenkinsPipelineStrategy.jenkinsfile : delete e.updatedBuildConfig.spec.strategy.jenkinsPipelineStrategy.jenkinsfilePath;
}
-switch (e.sources.images && !_.isEmpty(e.sourceImages) && (e.updatedBuildConfig.spec.source.images[0].paths = C(e.imageSourcePaths), e.updatedBuildConfig.spec.source.images[0].from = w(e.imageOptions.fromSource)), "None" === e.imageOptions.from.type ? delete h(e.updatedBuildConfig).from : h(e.updatedBuildConfig).from = w(e.imageOptions.from), "None" === e.imageOptions.to.type ? delete e.updatedBuildConfig.spec.output.to : e.updatedBuildConfig.spec.output.to = w(e.imageOptions.to), h(e.updatedBuildConfig).env = p.compactEntries(e.envVars), j(e.updatedBuildConfig.spec.source, _.head(e.secrets.picked.gitSecret), "sourceSecret"), j(h(e.updatedBuildConfig), _.head(e.secrets.picked.pullSecret), "pullSecret"), j(e.updatedBuildConfig.spec.output, _.head(e.secrets.picked.pushSecret), "pushSecret"), e.strategyType) {
+switch (e.sources.images && !_.isEmpty(e.sourceImages) && (e.updatedBuildConfig.spec.source.images[0].paths = S(e.imageSourcePaths), e.updatedBuildConfig.spec.source.images[0].from = w(e.imageOptions.fromSource)), "None" === e.imageOptions.from.type ? delete h(e.updatedBuildConfig).from : h(e.updatedBuildConfig).from = w(e.imageOptions.from), "None" === e.imageOptions.to.type ? delete e.updatedBuildConfig.spec.output.to : e.updatedBuildConfig.spec.output.to = w(e.imageOptions.to), h(e.updatedBuildConfig).env = p.compactEntries(e.envVars), P(e.updatedBuildConfig.spec.source, _.head(e.secrets.picked.gitSecret), "sourceSecret"), P(h(e.updatedBuildConfig), _.head(e.secrets.picked.pullSecret), "pullSecret"), P(e.updatedBuildConfig.spec.output, _.head(e.secrets.picked.pushSecret), "pushSecret"), e.strategyType) {
case "Source":
case "Docker":
R(e.updatedBuildConfig.spec.source, e.secrets.picked.sourceSecrets);
@@ -7287,9 +7287,9 @@ type: "error",
message: t,
details: n
};
-}, y = [], b = [], S = [];
+}, y = [], b = [], C = [];
e.valueFromObjects = [];
-var C = function(e) {
+var S = function(e) {
switch (e) {
case "Recreate":
return "recreateParams";
@@ -7351,18 +7351,18 @@ _.set(a, [ t.name, "triggerData" ], o);
pullSecrets: angular.copy(e.deploymentConfig.spec.template.spec.imagePullSecrets) || [ {
name: ""
} ]
-}, e.volumeNames = _.map(e.deploymentConfig.spec.template.spec.volumes, "name"), e.strategyData = angular.copy(e.deploymentConfig.spec.strategy), e.originalStrategy = e.strategyData.type, e.strategyParamsPropertyName = C(e.strategyData.type), e.triggers.hasConfigTrigger = _.some(e.updatedDeploymentConfig.spec.triggers, {
+}, e.volumeNames = _.map(e.deploymentConfig.spec.template.spec.volumes, "name"), e.strategyData = angular.copy(e.deploymentConfig.spec.strategy), e.originalStrategy = e.strategyData.type, e.strategyParamsPropertyName = S(e.strategyData.type), e.triggers.hasConfigTrigger = _.some(e.updatedDeploymentConfig.spec.triggers, {
type: "ConfigChange"
}), "Custom" !== e.strategyData.type || _.has(e.strategyData, "customParams.environment") || (e.strategyData.customParams.environment = []), c.list("configmaps", r, null, {
errorNotification: !1
}).then(function(t) {
-b = g(t.by("metadata.name")), e.availableConfigMaps = b, e.valueFromObjects = b.concat(S);
+b = g(t.by("metadata.name")), e.availableConfigMaps = b, e.valueFromObjects = b.concat(C);
}, function(e) {
403 !== e.status && h("Could not load config maps", v(e));
}), c.list("secrets", r, null, {
errorNotification: !1
}).then(function(t) {
-S = g(t.by("metadata.name")), e.availableSecrets = S, e.valueFromObjects = S.concat(b);
+C = g(t.by("metadata.name")), e.availableSecrets = C, e.valueFromObjects = C.concat(b);
var n = p.groupSecretsByType(t), a = _.mapValues(n, function(e) {
return _.map(e, "metadata.name");
});
@@ -7408,20 +7408,20 @@ cancelButtonText: "No"
}
}
}).result.then(function() {
-e.strategyData[t] = angular.copy(e.strategyData[C(e.originalStrategy)]);
+e.strategyData[t] = angular.copy(e.strategyData[S(e.originalStrategy)]);
}, function() {
e.strategyData[t] = {};
});
};
e.strategyChanged = function() {
-var t = C(e.strategyData.type);
+var t = S(e.strategyData.type);
w() ? k(t) : _.has(e.strategyData, t) || ("Custom" !== e.strategyData.type ? e.strategyData[t] = {} : e.strategyData[t] = {
image: "",
command: [],
environment: []
}), e.strategyParamsPropertyName = t;
};
-var P = function(e, t, n, a) {
+var j = function(e, t, n, a) {
var r = {
kind: "ImageStreamTag",
namespace: t.namespace,
@@ -7435,12 +7435,12 @@ containerNames: [ e ],
from: r
}
}, n;
-}, j = function() {
+}, P = function() {
var t = _.reject(e.updatedDeploymentConfig.spec.triggers, function(e) {
return "ImageChange" === e.type || "ConfigChange" === e.type;
});
return _.each(e.containerConfigByName, function(n, a) {
-n.hasDeploymentTrigger ? t.push(P(a, n.triggerData.istag, n.triggerData.data, n.triggerData.automatic)) : _.find(e.updatedDeploymentConfig.spec.template.spec.containers, {
+n.hasDeploymentTrigger ? t.push(j(a, n.triggerData.istag, n.triggerData.data, n.triggerData.automatic)) : _.find(e.updatedDeploymentConfig.spec.template.spec.containers, {
name: a
}).image = n.image;
}), e.triggers.hasConfigTrigger && t.push({
@@ -7454,7 +7454,7 @@ if (e.disableInputs = !0, _.each(e.containerConfigByName, function(t, n) {
_.find(e.updatedDeploymentConfig.spec.template.spec.containers, {
name: n
}).env = f.compactEntries(t.env);
-}), w() && delete e.strategyData[C(e.originalStrategy)], "Rolling" === e.strategyData.type) {
+}), w() && delete e.strategyData[S(e.originalStrategy)], "Rolling" === e.strategyData.type) {
var a = e.strategyData[e.strategyParamsPropertyName].maxSurge, r = Number(a);
"" === a ? e.strategyData[e.strategyParamsPropertyName].maxSurge = null : _.isFinite(r) && (e.strategyData[e.strategyParamsPropertyName].maxSurge = r);
var o = e.strategyData[e.strategyParamsPropertyName].maxUnavailable, i = Number(o);
@@ -7462,7 +7462,7 @@ var o = e.strategyData[e.strategyParamsPropertyName].maxUnavailable, i = Number(
}
"Custom" !== e.strategyData.type && _.each([ "pre", "mid", "post" ], function(t) {
_.has(e.strategyData, [ e.strategyParamsPropertyName, t, "execNewPod", "env" ]) && (e.strategyData[e.strategyParamsPropertyName][t].execNewPod.env = f.compactEntries(e.strategyData[e.strategyParamsPropertyName][t].execNewPod.env));
-}), _.has(e, "strategyData.customParams.environment") && (e.strategyData.customParams.environment = f.compactEntries(e.strategyData.customParams.environment)), e.updatedDeploymentConfig.spec.template.spec.imagePullSecrets = _.filter(e.secrets.pullSecrets, "name"), e.updatedDeploymentConfig.spec.strategy = e.strategyData, e.updatedDeploymentConfig.spec.triggers = j(), R(), c.update("deploymentconfigs", e.updatedDeploymentConfig.metadata.name, e.updatedDeploymentConfig, e.context).then(function() {
+}), _.has(e, "strategyData.customParams.environment") && (e.strategyData.customParams.environment = f.compactEntries(e.strategyData.customParams.environment)), e.updatedDeploymentConfig.spec.template.spec.imagePullSecrets = _.filter(e.secrets.pullSecrets, "name"), e.updatedDeploymentConfig.spec.strategy = e.strategyData, e.updatedDeploymentConfig.spec.triggers = P(), R(), c.update("deploymentconfigs", e.updatedDeploymentConfig.metadata.name, e.updatedDeploymentConfig, e.context).then(function() {
d.addNotification({
type: "success",
message: "Deployment config " + e.updatedDeploymentConfig.metadata.name + " was successfully updated."
@@ -7865,12 +7865,12 @@ e.projectTemplates = t.by("metadata.name");
}));
}))) : l.toErrorPage("Catalog category " + r.category + "/" + r.subcategory + " not found.");
} else l.toErrorPage("Catalog category " + r.category + " not found.");
-} ]), angular.module("openshiftConsole").controller("CreateFromImageController", [ "$scope", "$filter", "$parse", "$q", "$routeParams", "$uibModal", "APIService", "ApplicationGenerator", "DataService", "HPAService", "ImagesService", "LimitRangesService", "Logger", "MetricsService", "Navigate", "NotificationsService", "ProjectsService", "QuotaService", "SOURCE_URL_PATTERN", "SecretsService", "TaskList", "failureObjectNameFilter", "keyValueEditorUtils", function(e, t, n, a, r, o, i, s, c, l, u, d, m, p, f, g, v, h, y, b, S, C, w) {
-var k = t("displayName"), P = t("humanize");
+} ]), angular.module("openshiftConsole").controller("CreateFromImageController", [ "$scope", "$filter", "$parse", "$q", "$routeParams", "$uibModal", "APIService", "ApplicationGenerator", "DataService", "HPAService", "ImagesService", "LimitRangesService", "Logger", "MetricsService", "Navigate", "NotificationsService", "ProjectsService", "QuotaService", "SOURCE_URL_PATTERN", "SecretsService", "TaskList", "failureObjectNameFilter", "keyValueEditorUtils", function(e, t, n, a, r, o, i, s, c, l, u, d, m, p, f, g, v, h, y, b, C, S, w) {
+var k = t("displayName"), j = t("humanize");
e.projectName = r.project, e.sourceURLPattern = y;
-var j = r.imageStream;
-if (j) if (r.imageTag) {
-var R = r.displayName || j;
+var P = r.imageStream;
+if (P) if (r.imageTag) {
+var R = r.displayName || P;
e.displayName = r.displayName, e.advancedOptions = "true" === r.advanced, e.breadcrumbs = [ {
title: "Add to Project",
link: "project/" + e.projectName + "/create"
@@ -7883,8 +7883,8 @@ title: R
var I = {
name: "app",
value: ""
-}, E = t("orderByDisplayName"), T = t("getErrorDetails"), N = {}, D = function() {
-g.hideNotification("create-builder-list-config-maps-error"), g.hideNotification("create-builder-list-secrets-error"), _.each(N, function(e) {
+}, E = t("orderByDisplayName"), N = t("getErrorDetails"), T = {}, D = function() {
+g.hideNotification("create-builder-list-config-maps-error"), g.hideNotification("create-builder-list-secrets-error"), _.each(T, function(e) {
!e.id || "error" !== e.type && "warning" !== e.type || g.hideNotification(e.id);
});
};
@@ -7896,17 +7896,17 @@ e.hideCPU || (e.cpuProblems = d.validatePodLimits(e.limitRanges, "cpu", [ e.cont
c.list("limitranges", n).then(function(t) {
e.limitRanges = t.by("metadata.name"), _.isEmpty(e.limitRanges) || e.$watch("container", i, !0);
});
-var v, y, C = function() {
+var v, y, S = function() {
e.scaling.autoscale ? e.showCPURequestWarning = !l.hasCPURequest([ e.container ], e.limitRanges, t) : e.showCPURequestWarning = !1;
};
c.list("resourcequotas", n).then(function(e) {
v = e.by("metadata.name"), m.log("quotas", v);
}), c.list("appliedclusterresourcequotas", n).then(function(e) {
y = e.by("metadata.name"), m.log("cluster quotas", y);
-}), e.$watch("scaling.autoscale", C), e.$watch("container", C, !0), e.$watch("name", function(e, t) {
+}), e.$watch("scaling.autoscale", S), e.$watch("container", S, !0), e.$watch("name", function(e, t) {
I.value && I.value !== t || (I.value = e);
}), function(a) {
-a.name = r.name, a.imageName = j, a.imageTag = r.imageTag, a.namespace = r.namespace, a.buildConfig = {
+a.name = r.name, a.imageName = P, a.imageTag = r.imageTag, a.namespace = r.namespace, a.buildConfig = {
buildOnSourceChange: !0,
buildOnImageChange: !0,
buildOnConfigChange: !0,
@@ -7954,7 +7954,7 @@ o = E(t.by("metadata.name")), e.valueFromObjects = o.concat(i);
id: "create-builder-list-config-maps-error",
type: "error",
message: "Could not load config maps.",
-details: T(e)
+details: N(e)
});
}), c.list("secrets", n, null, {
errorNotification: !1
@@ -7971,7 +7971,7 @@ e.unshift("");
id: "create-builder-list-secrets-error",
type: "error",
message: "Could not load secrets.",
-details: T(e)
+details: N(e)
});
}), c.get("imagestreams", a.imageName, {
namespace: a.namespace || r.project
@@ -8003,7 +8003,7 @@ started: "Creating application " + e.name + " in project " + e.projectDisplayNam
success: "Created application " + e.name + " in project " + e.projectDisplayName(),
failure: "Failed to create " + e.name + " in project " + e.projectDisplayName()
}, o = {};
-S.clear(), S.add(t, o, r.project, function() {
+C.clear(), C.add(t, o, r.project, function() {
var t = a.defer();
return c.batch(A, n).then(function(n) {
var a = [], r = !1;
@@ -8013,13 +8013,13 @@ message: "All resources for application " + e.name + " were created successfully
}) : (r = !0, n.failure.forEach(function(e) {
a.push({
type: "error",
-message: "Cannot create " + P(e.object.kind).toLowerCase() + ' "' + e.object.metadata.name + '". ',
+message: "Cannot create " + j(e.object.kind).toLowerCase() + ' "' + e.object.metadata.name + '". ',
details: e.data.message
});
}), n.success.forEach(function(e) {
a.push({
type: "success",
-message: "Created " + P(e.kind).toLowerCase() + ' "' + e.metadata.name + '" successfully. '
+message: "Created " + j(e.kind).toLowerCase() + ' "' + e.metadata.name + '" successfully. '
});
})), t.resolve({
alerts: a,
@@ -8048,11 +8048,11 @@ cancelButtonText: "Cancel"
}
}).result.then($);
}, L = function(t) {
-D(), N = t.quotaAlerts || [], e.nameTaken || _.some(N, {
+D(), T = t.quotaAlerts || [], e.nameTaken || _.some(T, {
type: "error"
-}) ? (e.disableInputs = !1, _.each(N, function(e) {
+}) ? (e.disableInputs = !1, _.each(T, function(e) {
e.id = _.uniqueId("create-builder-alert-"), g.addNotification(e);
-})) : _.isEmpty(N) ? $() : (B(N), e.disableInputs = !1);
+})) : _.isEmpty(T) ? $() : (B(T), e.disableInputs = !1);
};
e.projectDisplayName = function() {
return k(this.project) || this.projectName;
@@ -8124,12 +8124,12 @@ k = [];
var t = [], n = {};
angular.forEach(e.objects, function(e) {
if ("BuildConfig" === e.kind) {
-var a = C(b(e), h);
+var a = S(b(e), h);
a && k.push({
name: a,
usesParameters: d(a)
});
-var r = C(S(e), h);
+var r = S(C(e), h);
r && (n[r] = !0);
}
"DeploymentConfig" === e.kind && (t = t.concat(p(e)));
@@ -8146,7 +8146,7 @@ return _.each(r.template.parameters, function(t) {
e[t.name] = t.value;
}), e;
}
-var v = a.template, h = a.namespace || "", y = n("spec.template.spec.containers"), b = n("spec.strategy.sourceStrategy.from || spec.strategy.dockerStrategy.from || spec.strategy.customStrategy.from"), S = n("spec.output.to"), C = e("imageObjectRef");
+var v = a.template, h = a.namespace || "", y = n("spec.template.spec.containers"), b = n("spec.strategy.sourceStrategy.from || spec.strategy.dockerStrategy.from || spec.strategy.customStrategy.from"), C = n("spec.output.to"), S = e("imageObjectRef");
if (v) {
r.breadcrumbs = [ {
title: "Add to Project",
@@ -8543,28 +8543,28 @@ subpage: "Add Storage"
var h = r.getPreferredVersion("resourcequotas"), y = r.getPreferredVersion("appliedclusterresourcequotas");
d.get(t.project).then(_.spread(function(r, d) {
if (n.project = r, o.canI(v, "update", t.project)) {
-var p = e("orderByDisplayName"), f = e("getErrorDetails"), b = e("generateName"), S = function(e, t) {
+var p = e("orderByDisplayName"), f = e("getErrorDetails"), b = e("generateName"), C = function(e, t) {
n.disableInputs = !0, u.addNotification({
id: "attach-pvc-error",
type: "error",
message: e,
details: t
});
-}, C = function() {
+}, S = function() {
u.hideNotification("attach-pvc-error");
};
-n.$on("$destroy", C);
+n.$on("$destroy", S);
var w = function() {
a.history.back();
};
n.cancel = w;
var k = function(e) {
return n.attach.allContainers || n.attach.containers[e.name];
-}, P = function() {
+}, j = function() {
var e = _.get(n, "attach.resource.spec.template");
n.existingMountPaths = m.getMountPaths(e, k);
};
-n.$watchGroup([ "attach.resource", "attach.allContainers" ], P), n.$watch("attach.containers", P, !0);
+n.$watchGroup([ "attach.resource", "attach.allContainers" ], j), n.$watch("attach.containers", j, !0);
s.get(v, t.name, d).then(function(e) {
n.attach.resource = e, n.breadcrumbs = i.getBreadcrumbs({
object: e,
@@ -8574,7 +8574,7 @@ subpage: "Add Storage"
var t = _.get(e, "spec.template");
n.existingVolumeNames = m.getVolumeNames(t);
}, function(e) {
-S(t.name + " could not be loaded.", f(e));
+C(t.name + " could not be loaded.", f(e));
}), s.list(n.pvcVersion, d).then(function(e) {
n.pvcs = p(e.by("metadata.name")), _.isEmpty(n.pvcs) || n.attach.persistentVolumeClaim || (n.attach.persistentVolumeClaim = _.head(n.pvcs));
}), s.list(h, {
@@ -8586,7 +8586,7 @@ namespace: n.projectName
}, function(e) {
n.clusterQuotas = e.by("metadata.name"), n.outOfClaims = c.isAnyStorageQuotaExceeded(n.quotas, n.clusterQuotas);
}), n.attachPVC = function() {
-if (n.disableInputs = !0, C(), n.attachPVCForm.$valid) {
+if (n.disableInputs = !0, S(), n.attachPVCForm.$valid) {
n.attach.volumeName || (n.attach.volumeName = b("volume-"));
var e = n.attach.resource, a = _.get(e, "spec.template"), r = n.attach.persistentVolumeClaim, o = n.attach.volumeName, i = n.attach.mountPath, c = n.attach.subPath, l = n.attach.readOnly;
i && angular.forEach(a.spec.containers, function(e) {
@@ -8604,7 +8604,7 @@ message: "Persistent volume claim " + r.metadata.name + " added to " + g(t.kind)
details: e
}), w();
}, function(e) {
-S("An error occurred attaching the persistent volume claim to the " + g(t.kind) + ".", f(e)), n.disableInputs = !1;
+C("An error occurred attaching the persistent volume claim to the " + g(t.kind) + ".", f(e)), n.disableInputs = !1;
});
}
};
@@ -8649,10 +8649,10 @@ type: "error",
message: e,
details: t
});
-}, S = function() {
+}, C = function() {
u.hideNotification("add-config-volume-error");
};
-a.$on("$destroy", S), a.addItem = function() {
+a.$on("$destroy", C), a.addItem = function() {
a.attach.items.push({}), h();
}, a.removeItem = function(e) {
a.attach.items.splice(e, 1), h();
@@ -8718,15 +8718,15 @@ secretName: o.metadata.name,
items: m
};
}
-i.spec.volumes = i.spec.volumes || [], i.spec.volumes.push(v), a.disableInputs = !0, S();
-var h = e("humanizeKind"), C = h(o.kind), w = h(n.kind);
+i.spec.volumes = i.spec.volumes || [], i.spec.volumes.push(v), a.disableInputs = !0, C();
+var h = e("humanizeKind"), S = h(o.kind), w = h(n.kind);
c.update(g, t.metadata.name, a.targetObject, r).then(function() {
u.addNotification({
type: "success",
-message: "Successfully added " + C + " " + o.metadata.name + " to " + w + " " + n.name + "."
+message: "Successfully added " + S + " " + o.metadata.name + " to " + w + " " + n.name + "."
}), y();
}, function(e) {
-a.disableInputs = !1, b("An error occurred attaching the " + C + " to the " + w + ".", d(e));
+a.disableInputs = !1, b("An error occurred attaching the " + S + " to the " + w + ".", d(e));
});
}
};
@@ -9493,7 +9493,7 @@ scope: p
}).result.then(function() {
l.getLatestQuotaAlerts(p.createResources, {
namespace: p.input.selectedProject.metadata.name
-}).then(N);
+}).then(T);
});
}
function y() {
@@ -9501,11 +9501,11 @@ var e = p.createResources.length, t = p.updateResources.length;
if (p.resourceKind.endsWith("List")) {
var a = [];
t > 0 && a.push(k()), e > 0 && a.push(w()), n.all(a).then(b);
-} else C();
+} else S();
}
function b() {
var e, n;
-T(), "Template" === p.resourceKind && p.templateOptions.process && !p.errorOccurred ? p.isDialog ? p.$emit("fileImportedFromYAMLOrJSON", {
+N(), "Template" === p.resourceKind && p.templateOptions.process && !p.errorOccurred ? p.isDialog ? p.$emit("fileImportedFromYAMLOrJSON", {
project: p.input.selectedProject,
template: p.resource
}) : (n = p.templateOptions.add || p.updateResources.length > 0 ? p.input.selectedProject.metadata.name : "", e = s.createFromTemplateURL(p.resource, p.input.selectedProject.metadata.name, {
@@ -9514,7 +9514,7 @@ namespace: n
project: p.input.selectedProject
}) : (e = s.projectOverviewURL(p.input.selectedProject.metadata.name), t.url(e));
}
-function S(e) {
+function C(e) {
var t = r.objectToResourceGroupVersion(e);
return t ? r.apiInfo(t) ? i.get(t, e.metadata.name, {
namespace: p.input.selectedProject.metadata.name
@@ -9531,13 +9531,13 @@ message: r.unsupportedObjectKindOrVersion(e)
message: r.invalidObjectKindOrVersion(e)
}));
}
-function C() {
+function S() {
var t;
_.isEmpty(p.createResources) ? (t = _.head(p.updateResources), i.update(r.kindToResource(t.kind), t.metadata.name, t, {
namespace: p.input.selectedProject.metadata.name
}).then(function() {
if (!p.isDialog) {
-var e = j(t.kind);
+var e = P(t.kind);
c.addNotification({
type: "success",
message: _.capitalize(e) + " " + t.metadata.name + " was successfully updated."
@@ -9548,14 +9548,14 @@ b();
c.addNotification({
id: "from-file-error",
type: "error",
-message: "Unable to update the " + j(t.kind) + " '" + t.metadata.name + "'.",
+message: "Unable to update the " + P(t.kind) + " '" + t.metadata.name + "'.",
details: e("getErrorDetails")(n)
});
})) : (t = _.head(p.createResources), i.create(r.kindToResource(t.kind), null, t, {
namespace: p.input.selectedProject.metadata.name
}).then(function() {
if (!p.isDialog) {
-var e = j(t.kind);
+var e = P(t.kind);
c.addNotification({
type: "success",
message: _.capitalize(e) + " " + t.metadata.name + " was successfully created."
@@ -9566,7 +9566,7 @@ b();
c.addNotification({
id: "from-file-error",
type: "error",
-message: "Unable to create the " + j(t.kind) + " '" + t.metadata.name + "'.",
+message: "Unable to create the " + P(t.kind) + " '" + t.metadata.name + "'.",
details: e("getErrorDetails")(n)
});
}));
@@ -9586,17 +9586,17 @@ var n = [], a = !1;
if (t.failure.length > 0) a = !0, p.errorOccurred = !0, t.failure.forEach(function(e) {
n.push({
type: "error",
-message: "Cannot create " + j(e.object.kind) + ' "' + e.object.metadata.name + '". ',
+message: "Cannot create " + P(e.object.kind) + ' "' + e.object.metadata.name + '". ',
details: e.data.message
});
}), t.success.forEach(function(e) {
n.push({
type: "success",
-message: "Created " + j(e.kind) + ' "' + e.metadata.name + '" successfully. '
+message: "Created " + P(e.kind) + ' "' + e.metadata.name + '" successfully. '
});
}); else {
var r;
-r = p.isList ? "All items in list were created successfully." : j(p.resourceKind) + " " + p.resourceName + " was successfully created.", n.push({
+r = p.isList ? "All items in list were created successfully." : P(p.resourceKind) + " " + p.resourceName + " was successfully created.", n.push({
type: "success",
message: r
});
@@ -9623,17 +9623,17 @@ var n = [], a = !1;
if (t.failure.length > 0) a = !0, p.errorOccurred = !0, t.failure.forEach(function(e) {
n.push({
type: "error",
-message: "Cannot update " + j(e.object.kind) + ' "' + e.object.metadata.name + '". ',
+message: "Cannot update " + P(e.object.kind) + ' "' + e.object.metadata.name + '". ',
details: e.data.message
});
}), t.success.forEach(function(e) {
n.push({
type: "success",
-message: "Updated " + j(e.kind) + ' "' + e.metadata.name + '" successfully. '
+message: "Updated " + P(e.kind) + ' "' + e.metadata.name + '" successfully. '
});
}); else {
var r;
-r = p.isList ? "All items in list were updated successfully." : j(p.resourceKind) + " " + p.resourceName + " was successfully updated.", n.push({
+r = p.isList ? "All items in list were updated successfully." : P(p.resourceKind) + " " + p.resourceName + " was successfully updated.", n.push({
type: "success",
message: r
});
@@ -9654,11 +9654,15 @@ alerts: n
}), e.promise;
});
}
-var P, j = e("humanizeKind"), R = e("getErrorDetails");
-d.clear(), p.input = {
+var j;
+p.noProjectsCantCreate = !1;
+var P = e("humanizeKind"), R = e("getErrorDetails");
+d.clear(), p.$on("no-projects-cannot-create", function() {
+p.noProjectsCantCreate = !0;
+}), p.input = {
selectedProject: p.project
}, p.aceLoaded = function(e) {
-(P = e.getSession()).setOption("tabSize", 2), P.setOption("useSoftTabs", !0), e.setDragDelay = 0, e.$blockScrolling = 1 / 0;
+(j = e.getSession()).setOption("tabSize", 2), j.setOption("useSoftTabs", !0), e.setDragDelay = 0, e.$blockScrolling = 1 / 0;
};
var I = function(e) {
a.open({
@@ -9677,12 +9681,12 @@ cancelButtonText: "Cancel"
}
}
}).result.then(y);
-}, E = {}, T = function() {
+}, E = {}, N = function() {
c.hideNotification("from-file-error"), _.each(E, function(e) {
!e.id || "error" !== e.type && "warning" !== e.type || c.hideNotification(e.id);
});
-}, N = function(e) {
-T(), E = u.getSecurityAlerts(p.createResources, p.input.selectedProject.metadata.name);
+}, T = function(e) {
+N(), E = u.getSecurityAlerts(p.createResources, p.input.selectedProject.metadata.name);
var t = e.quotaAlerts || [];
E = E.concat(t), _.filter(E, {
type: "error"
@@ -9703,12 +9707,12 @@ add: !1
var e = [];
p.errorOccurred = !1, _.forEach(p.resourceList, function(t) {
if (!g(t)) return p.errorOccurred = !0, !1;
-e.push(S(t));
+e.push(C(t));
}), D().then(function(t) {
p.input.selectedProject = t, n.all(e).then(function() {
p.errorOccurred || (1 === p.createResources.length && "Template" === p.resourceList[0].kind ? v() : _.isEmpty(p.updateResources) ? l.getLatestQuotaAlerts(p.createResources, {
namespace: p.input.selectedProject.metadata.name
-}).then(N) : (p.updateTemplate = 1 === p.updateResources.length && "Template" === p.updateResources[0].kind, p.updateTemplate ? v() : h()));
+}).then(T) : (p.updateTemplate = 1 === p.updateResources.length && "Template" === p.updateResources[0].kind, p.updateTemplate ? v() : h()));
});
}, function(e) {
c.addNotification({
@@ -9720,10 +9724,10 @@ details: R(e)
});
}
}, p.cancel = function() {
-T(), s.toProjectOverview(p.input.selectedProject.metadata.name);
+N(), s.toProjectOverview(p.input.selectedProject.metadata.name);
};
var A = e("displayName");
-p.$on("importFileFromYAMLOrJSON", p.create), p.$on("$destroy", T);
+p.$on("importFileFromYAMLOrJSON", p.create), p.$on("$destroy", N);
} ]
};
} ]), angular.module("openshiftConsole").directive("oscFileInput", [ "Logger", function(e) {
@@ -10574,15 +10578,15 @@ _.size(l) <= 100 ? (u = e("orderByDisplayName")(l), y = _.map(u, function(e) {
return n(e, !1);
})) : y = [ n(l[t], !0) ], h.empty(), h.append(y), h.append($('
')), h.append($('
')), h.selectpicker("refresh");
}
-}, S = function() {
+}, C = function() {
return s.list().then(function(e) {
l = e.by("metadata.name");
});
-}, C = function() {
+}, S = function() {
var e = a.project;
r.currentProjectName !== e && (r.currentProjectName = e, r.chromeless = "chromeless" === a.view, e && !r.chromeless ? (_.set(n, "view.hasProject", !0), r.canIAddToProject = !1, o.getProjectRules(e).then(function() {
r.currentProjectName === e && (r.canIAddToProject = o.canIAddToProject(e));
-}), S().then(function() {
+}), C().then(function() {
r.currentProjectName && l && (l[r.currentProjectName] || (l[r.currentProjectName] = {
metadata: {
name: r.currentProjectName
@@ -10590,7 +10594,7 @@ name: r.currentProjectName
}), r.currentProject = l[r.currentProjectName], b());
})) : _.set(n, "view.hasProject", !1));
};
-C(), r.$on("$routeChangeSuccess", C), h.selectpicker({
+S(), r.$on("$routeChangeSuccess", S), h.selectpicker({
iconBase: "fa",
tickIcon: "fa-check"
}).change(function() {
@@ -11404,12 +11408,12 @@ if (!m.pod) return null;
var t = m.options.selectedContainer;
switch (e) {
case "memory/usage":
-var n = T(t);
+var n = N(t);
if (n) return s.bytesToMiB(d(n));
break;
case "cpu/usage_rate":
-var a = N(t);
+var a = T(t);
if (a) return d(a);
}
return null;
@@ -11467,12 +11471,12 @@ pod: m.pod,
containerName: e.containerMetric ? m.options.selectedContainer.name : "pod"
}) : null;
}
-function S() {
+function C() {
A || (U = 0, _.each(m.metrics, function(e) {
g(e), f(e);
}));
}
-function C(e) {
+function S(e) {
if (!A) if (U++, m.noData) m.metricsError = {
status: _.get(e, "status", 0),
details: _.get(e, "data.errorMsg") || _.get(e, "statusText") || "Status code " + _.get(e, "status", 0)
@@ -11485,7 +11489,7 @@ links: [ {
href: "",
label: "Retry",
onClick: function() {
-delete m.alerts[t], U = 1, j();
+delete m.alerts[t], U = 1, P();
}
} ]
};
@@ -11499,12 +11503,12 @@ t.total = p(t.id), t.total && (m.hasLimits = !0);
var a = _.get(n, "usage.value");
isNaN(a) && (a = 0), e.convert && (a = e.convert(a)), t.used = d3.round(a, e.usagePrecision), t.total && (t.available = d3.round(t.total - a, e.usagePrecision)), e.totalUsed += t.used;
}
-function P(e, t) {
+function j(e, t) {
m.noData = !1;
var n = _.initial(t.data);
e.data ? e.data = _.chain(e.data).takeRight(D).concat(n).value() : e.data = n;
}
-function j() {
+function P() {
if (w()) {
var e = v(), t = [];
angular.forEach(m.metrics, function(n) {
@@ -11519,18 +11523,18 @@ k(n, r, e);
}
}), t = t.concat(a), r.all(a).then(function(e) {
A || angular.forEach(e, function(e) {
-e && P(_.find(n.datasets, {
+e && j(_.find(n.datasets, {
id: e.metricID
}), e);
});
});
-}), r.all(t).then(S, C).finally(function() {
+}), r.all(t).then(C, S).finally(function() {
m.loaded = !0;
});
}
}
m.includedMetrics = m.includedMetrics || [ "cpu", "memory", "network" ];
-var R, I = {}, E = {}, T = n("resources.limits.memory"), N = n("resources.limits.cpu"), D = 30, A = !1;
+var R, I = {}, E = {}, N = n("resources.limits.memory"), T = n("resources.limits.cpu"), D = 30, A = !1;
m.uniqueID = c.uniqueID(), m.metrics = [], _.includes(m.includedMetrics, "memory") && m.metrics.push({
label: "Memory",
units: "MiB",
@@ -11623,8 +11627,8 @@ _.each(m.metrics, function(e) {
_.each(e.datasets, function(e) {
delete e.data;
});
-}), delete m.metricsError, j();
-}, !0), R = t(j, c.getDefaultUpdateInterval(), !1);
+}), delete m.metricsError, P();
+}, !0), R = t(P, c.getDefaultUpdateInterval(), !1);
});
var O = o.$on("metrics.charts.resize", function() {
c.redraw(I), c.redraw(E);
@@ -11665,7 +11669,7 @@ count: 0
return _.each(R[e.descriptor], function(e) {
_.each(e, function(e) {
var t = s(e);
-(!P || P < e.end) && (P = e.end), n(e) || (t.total += e.value, t.count = t.count + 1);
+(!j || j < e.end) && (j = e.end), n(e) || (t.total += e.value, t.count = t.count + 1);
});
}), _.each(a, function(t, n) {
var a;
@@ -11684,7 +11688,7 @@ var a = t + "-dates";
_.set(i, [ "xs", t ], a);
var s = [ a ], c = [ t ];
o.push(s), o.push(c), _.each(R[r.descriptor][t], function(e) {
-if (s.push(e.start), (!P || P < e.end) && (P = e.end), n(e)) c.push(e.value); else {
+if (s.push(e.start), (!j || j < e.end) && (j = e.end), n(e)) c.push(e.value); else {
var t = r.convert ? r.convert(e.value) : e.value;
c.push(t);
}
@@ -11694,9 +11698,9 @@ return e[0];
}), i);
}
function u(e) {
-k || (N = 0, t.showAverage = _.size(t.pods) > 5 || w, _.each(t.metrics, function(n) {
+k || (T = 0, t.showAverage = _.size(t.pods) > 5 || w, _.each(t.metrics, function(n) {
var a, r = o(e, n), i = n.descriptor;
-w && n.compactCombineWith && (i = n.compactCombineWith, n.lastValue && (T[i].lastValue = (T[i].lastValue || 0) + n.lastValue)), S[i] ? (S[i].load(r), t.showAverage ? S[i].legend.hide() : S[i].legend.show()) : ((a = D(n)).data = r, S[i] = c3.generate(a));
+w && n.compactCombineWith && (i = n.compactCombineWith, n.lastValue && (N[i].lastValue = (N[i].lastValue || 0) + n.lastValue)), C[i] ? (C[i].load(r), t.showAverage ? C[i].legend.hide() : C[i].legend.show()) : ((a = D(n)).data = r, C[i] = c3.generate(a));
}));
}
function d() {
@@ -11706,7 +11710,7 @@ function m() {
return 60 * t.options.timeRange.value * 1e3;
}
function p() {
-return w ? "1mn" : Math.floor(m() / C) + "ms";
+return w ? "1mn" : Math.floor(m() / S) + "ms";
}
function f() {
var e = _.find(t.pods, "metadata.namespace");
@@ -11716,14 +11720,14 @@ pods: t.pods,
namespace: e.metadata.namespace,
bucketDuration: p()
};
-return w || (n.containerName = t.options.selectedContainer.name), n.start = P || d(), n;
+return w || (n.containerName = t.options.selectedContainer.name), n.start = j || d(), n;
}
}
function g(e) {
-if (!k) if (N++, t.noData) t.metricsError = {
+if (!k) if (T++, t.noData) t.metricsError = {
status: _.get(e, "status", 0),
details: _.get(e, "data.errorMsg") || _.get(e, "statusText") || "Status code " + _.get(e, "status", 0)
-}; else if (!(N < 2) && t.alerts) {
+}; else if (!(T < 2) && t.alerts) {
var n = "metrics-failed-" + t.uniqueID;
t.alerts[n] = {
type: "error",
@@ -11732,35 +11736,35 @@ links: [ {
href: "",
label: "Retry",
onClick: function() {
-delete t.alerts[n], N = 1, y();
+delete t.alerts[n], T = 1, y();
}
} ]
};
}
}
function v() {
-return _.isEmpty(t.pods) ? (t.loaded = !0, !1) : !t.metricsError && N < 2;
+return _.isEmpty(t.pods) ? (t.loaded = !0, !1) : !t.metricsError && T < 2;
}
function h(e, n, a) {
t.noData = !1;
var r = _.initial(a), o = _.get(R, [ e, n ]);
if (o) {
-var i = _.takeRight(o.concat(r), C);
+var i = _.takeRight(o.concat(r), S);
_.set(R, [ e, n ], i);
} else _.set(R, [ e, n ], r);
}
function y() {
if (!I && v()) {
-j = Date.now();
+P = Date.now();
var e = f();
c.getPodMetrics(e).then(u, g).finally(function() {
t.loaded = !0;
});
}
}
-var b, S = {}, C = 30, w = "compact" === t.profile, k = !1;
+var b, C = {}, S = 30, w = "compact" === t.profile, k = !1;
t.uniqueID = s.uniqueID();
-var P, j, R = {}, I = w, E = function(e) {
+var j, P, R = {}, I = w, E = function(e) {
return e >= 1024;
};
t.metrics = [ {
@@ -11816,11 +11820,11 @@ compactDatasetLabel: "Received",
compactType: "spline",
chartID: "network-rx-" + t.uniqueID
} ];
-var T = _.keyBy(t.metrics, "descriptor");
+var N = _.keyBy(t.metrics, "descriptor");
t.loaded = !1, t.noData = !0, t.showComputeUnitsHelp = function() {
l.showComputeUnitsHelp();
};
-var N = 0;
+var T = 0;
c.getMetricsURL().then(function(e) {
t.metricsURL = e;
}), t.options = {
@@ -11831,17 +11835,17 @@ var n = s.getDefaultSparklineConfig(e.chartID, e.units, w);
return _.set(n, "legend.show", !w && !t.showAverage), n;
};
t.$watch("options", function() {
-R = {}, P = null, delete t.metricsError, y();
+R = {}, j = null, delete t.metricsError, y();
}, !0), b = e(y, s.getDefaultUpdateInterval(), !1), t.updateInView = function(e) {
-I = !e, e && (!j || Date.now() > j + s.getDefaultUpdateInterval()) && y();
+I = !e, e && (!P || Date.now() > P + s.getDefaultUpdateInterval()) && y();
};
var A = r.$on("metrics.charts.resize", function() {
-s.redraw(S);
+s.redraw(C);
});
t.$on("$destroy", function() {
-b && (e.cancel(b), b = null), A && (A(), A = null), angular.forEach(S, function(e) {
+b && (e.cancel(b), b = null), A && (A(), A = null), angular.forEach(C, function(e) {
e.destroy();
-}), S = null, k = !0;
+}), C = null, k = !0;
});
}
};
@@ -11878,12 +11882,12 @@ t.$apply(function() {
var e = l.getBoundingClientRect();
t.fixedHeight ? t.showScrollLinks = e && e.height > t.fixedHeight : t.showScrollLinks = e && (e.top < 0 || e.bottom > g.clientHeight);
});
-}, S = !1, C = function() {
-S ? S = !1 : t.$evalAsync(function() {
+}, C = !1, S = function() {
+C ? C = !1 : t.$evalAsync(function() {
t.autoScrollActive = !1;
});
}, w = function() {
-u ? $(u).on("scroll", C) : m.on("scroll", C);
+u ? $(u).on("scroll", S) : m.on("scroll", S);
}, k = function() {
t.fixedHeight || p.affix({
target: window,
@@ -11891,10 +11895,10 @@ offset: {
top: t.followAffixTop || 0
}
});
-}, P = function() {
+}, j = function() {
return $("#" + t.logViewerID + " .log-view-output");
-}, j = function(e) {
-var n = P(), a = n.offset().top;
+}, P = function(e) {
+var n = j(), a = n.offset().top;
if (!(a < 0)) {
var r = $(".ellipsis-pulser").outerHeight(!0), o = t.fixedHeight ? t.fixedHeight : Math.floor($(window).height() - a - r);
t.chromeless || t.fixedHeight || (o -= 40), e ? n.animate({
@@ -11909,24 +11913,24 @@ t.sized = !0;
});
}, n = 0;
y = setInterval(function() {
-n > 10 ? e() : (n++, P().is(":visible") && (j(), e()));
+n > 10 ? e() : (n++, j().is(":visible") && (P(), e()));
}, 100);
}
}, I = _.debounce(function() {
-j(!0), b(), C();
+P(!0), b(), S();
}, 100);
m.on("resize", I);
-var E, T = function() {
-S = !0, d.scrollBottom(u);
-}, N = document.createDocumentFragment(), D = _.debounce(function() {
-l.appendChild(N), N = document.createDocumentFragment(), t.autoScrollActive && T(), t.showScrollLinks || b();
+var E, N = function() {
+C = !0, d.scrollBottom(u);
+}, T = document.createDocumentFragment(), D = _.debounce(function() {
+l.appendChild(T), T = document.createDocumentFragment(), t.autoScrollActive && N(), t.showScrollLinks || b();
}, 100, {
maxWait: 300
}), A = function(e) {
var t = r.defer();
return E ? (E.onClose(function() {
t.resolve();
-}), E.stop()) : t.resolve(), e || (D.cancel(), l && (l.innerHTML = ""), N = document.createDocumentFragment()), t.promise;
+}), E.stop()) : t.resolve(), e || (D.cancel(), l && (l.innerHTML = ""), T = document.createDocumentFragment()), t.promise;
}, B = function() {
A().then(function() {
t.$evalAsync(function() {
@@ -11944,7 +11948,7 @@ follow: !0,
tailLines: 5e3,
limitBytes: 10485760
}, t.options), n = 0, a = function(e) {
-n++, N.appendChild(f(n, e)), D();
+n++, T.appendChild(f(n, e)), D();
};
(E = c.createStream(v, h, t.context, e)).onMessage(function(r, o, i) {
t.$evalAsync(function() {
@@ -12006,12 +12010,12 @@ onScrollTop: function() {
t.autoScrollActive = !1, d.scrollTop(u), $("#" + t.logViewerID + "-affixedFollow").affix("checkPosition");
},
toggleAutoScroll: function() {
-t.autoScrollActive = !t.autoScrollActive, t.autoScrollActive && T();
+t.autoScrollActive = !t.autoScrollActive, t.autoScrollActive && N();
},
goChromeless: d.chromelessLink,
restartLogs: B
}), t.$on("$destroy", function() {
-A(), m.off("resize", I), m.off("scroll", C), u && $(u).off("scroll", C);
+A(), m.off("resize", I), m.off("scroll", S), u && $(u).off("scroll", S);
}), "deploymentconfigs/logs" === v && !h) return t.state = "empty", void (t.emptyStateMessage = "Logs are not available for this replication controller because it was not generated from a deployment configuration.");
t.$watchGroup([ "name", "options.container", "run" ], B);
} ],
@@ -12906,7 +12910,7 @@ onShow: function() {
u && (u(), u = void 0), d && (d(), d = void 0), p.nextTitle = "Close", p.wizardComplete = !0, p.bindService();
}
};
-var S = function() {
+var C = function() {
if (p.serviceClasses && p.servicePlans) {
var e = "ServiceInstance" === p.target.kind ? p.target : p.serviceToBind;
if (e) {
@@ -12917,15 +12921,15 @@ p.plan = p.servicePlans[n], p.parameterSchema = _.get(p.plan, "spec.serviceBindi
}
}
};
-e.$watch("ctrl.serviceToBind", S), p.$onInit = function() {
+e.$watch("ctrl.serviceToBind", C), p.$onInit = function() {
p.serviceSelection = {}, p.projectDisplayName = t("displayName")(p.project), p.podPresets = g("pod_presets"), p.parameterData = {}, p.steps = [ s, c, l ], p.hideBack = c.hidden;
var e = n.getPreferredVersion("clusterserviceclasses");
o.list(e, {}).then(function(e) {
-p.serviceClasses = e.by("metadata.name"), S(), h();
+p.serviceClasses = e.by("metadata.name"), C(), h();
});
var a = n.getPreferredVersion("clusterserviceplans");
o.list(a, {}).then(function(e) {
-p.servicePlans = e.by("metadata.name"), S();
+p.servicePlans = e.by("metadata.name"), C();
}), "ServiceInstance" === p.target.kind ? (p.bindType = "secret-only", p.appToBind = null, p.serviceToBind = p.target, p.podPresets && y()) : (p.bindType = "application", p.appToBind = p.target, b());
}, p.$onChanges = function(e) {
e.project && !e.project.isFirstChange() && (p.projectDisplayName = t("displayName")(p.project));
@@ -13033,10 +13037,12 @@ value: v.template.metadata.name
});
}
var g, v = this, h = e("displayName"), y = e("humanize");
-v.$onInit = function() {
-v.labels = [], v.template = angular.copy(v.template), v.templateDisplayName = h(v.template), v.selectedProject = v.project, f();
+v.noProjectsCantCreate = !1, v.$onInit = function() {
+v.labels = [], v.template = angular.copy(v.template), v.templateDisplayName = h(v.template), v.selectedProject = v.project, n.$on("no-projects-cannot-create", function() {
+v.noProjectsCantCreate = !0;
+}), f();
};
-var b, S = function() {
+var b, C = function() {
var e = {
started: "Creating " + v.templateDisplayName + " in project " + h(v.selectedProject),
success: "Created " + v.templateDisplayName + " in project " + h(v.selectedProject),
@@ -13069,7 +13075,7 @@ hasErrors: a
project: v.selectedProject,
template: v.template
}) : o.toNextSteps(v.templateDisplayName, v.selectedProject.metadata.name);
-}, C = function(e) {
+}, S = function(e) {
a.open({
animation: !0,
templateUrl: "views/modals/confirm.html",
@@ -13085,30 +13091,30 @@ cancelButtonText: "Cancel"
};
}
}
-}).result.then(S);
+}).result.then(C);
}, w = {}, k = function() {
i.hideNotification("process-template-error"), _.each(w, function(e) {
!e.id || "error" !== e.type && "warning" !== e.type || i.hideNotification(e.id);
});
-}, P = function(e) {
+}, j = function(e) {
k(), w = u.getSecurityAlerts(b, v.selectedProject.metadata.name);
var t = e.quotaAlerts || [];
w = w.concat(t), _.filter(w, {
type: "error"
}).length ? (v.disableInputs = !1, _.each(w, function(e) {
e.id = _.uniqueId("process-template-alert-"), i.addNotification(e);
-})) : w.length ? (C(w), v.disableInputs = !1) : S();
-}, j = function() {
+})) : w.length ? (S(w), v.disableInputs = !1) : C();
+}, P = function() {
if (_.has(v.selectedProject, "metadata.uid")) return t.when(v.selectedProject);
var n = v.selectedProject.metadata.name, a = v.selectedProject.metadata.annotations["new-display-name"], r = e("description")(v.selectedProject);
return c.create(n, a, r);
};
v.createFromTemplate = function() {
-v.disableInputs = !0, j().then(function(e) {
+v.disableInputs = !0, P().then(function(e) {
v.selectedProject = e, g = {
namespace: v.selectedProject.metadata.name
}, v.template.labels = m.mapEntries(m.compactEntries(v.labels)), r.create("processedtemplates", null, v.template, g).then(function(e) {
-s.setTemplateData(e.parameters, v.template.parameters, e.message), b = e.objects, l.getLatestQuotaAlerts(b, g).then(P);
+s.setTemplateData(e.parameters, v.template.parameters, e.message), b = e.objects, l.getLatestQuotaAlerts(b, g).then(j);
}, function(e) {
v.disableInputs = !1;
var t;
@@ -13156,7 +13162,7 @@ return -1 !== e.indexOf("icon-") ? "font-icon " + e : e;
}
function u() {
var e = _.get(b, "template.metadata.annotations.iconClass", "fa fa-clone");
-return S(e);
+return C(e);
}
function d() {
b.steps || (b.steps = [ b.selectStep, b.infoStep, b.configStep, b.resultsStep ]);
@@ -13187,7 +13193,7 @@ b.unfilteredProjects = [];
w();
});
}
-var y, b = this, S = t("imageForIconClass"), C = t("annotation");
+var y, b = this, C = t("imageForIconClass"), S = t("annotation");
b.selectStep = {
id: "projectTemplates",
label: "Selection",
@@ -13218,7 +13224,7 @@ allowed: !0,
allowClickNav: !0,
onShow: function() {
b.infoStep.selected = !1, b.selectStep.selected = !1, b.configStep.selected = !0, b.resultsStep.selected = !1, b.nextTitle = "Create", b.resultsStep.allowed = b.configStep.valid, y = e.$watch("$ctrl.form.$valid", function(e) {
-b.configStep.valid = e && b.selectedProject, b.resultsStep.allowed = e;
+b.configStep.valid = e && !b.noProjectsCantCreate && b.selectedProject, b.resultsStep.allowed = e;
});
}
}, b.resultsStep = {
@@ -13233,7 +13239,9 @@ onShow: function() {
b.infoStep.selected = !1, b.selectStep.selected = !1, b.configStep.selected = !1, b.resultsStep.selected = !0, b.nextTitle = "Close", m(), b.wizardDone = !0;
}
}, b.$onInit = function() {
-b.loginBaseUrl = r.openshiftAPIBaseUrl(), b.preSelectedProject = b.selectedProject = b.project, b.project && (b.templateProject = b.project, b.templateProjectChange()), h(), b.projectEmptyState = {
+b.loginBaseUrl = r.openshiftAPIBaseUrl(), b.preSelectedProject = b.selectedProject = b.project, b.project && (b.templateProject = b.project, b.templateProjectChange()), h(), b.noProjectsCantCreate = !1, e.$on("no-projects-cannot-create", function() {
+b.noProjectsCantCreate = !0;
+}), b.projectEmptyState = {
title: "No Project Selected",
info: "Please select a project from the dropdown to load Templates from that project."
}, b.templatesEmptyState = {
@@ -13255,7 +13263,7 @@ appliedFilters: [],
onFilterChange: g
}, n.project || (b.showProjectName = !0);
}, b.$onChanges = function(e) {
-e.template && b.template && (d(), b.iconClass = l(), b.image = u(), b.docUrl = C(b.template, "openshift.io/documentation-url"), b.supportUrl = C(b.template, "openshift.io/support-url"), b.vendor = C(b.template, "openshift.io/provider-display-name")), e.useProjectTemplate && d();
+e.template && b.template && (d(), b.iconClass = l(), b.image = u(), b.docUrl = S(b.template, "openshift.io/documentation-url"), b.supportUrl = S(b.template, "openshift.io/support-url"), b.vendor = S(b.template, "openshift.io/provider-display-name")), e.useProjectTemplate && d();
}, e.$on("templateInstantiated", function(e, t) {
b.selectedProject = t.project, b.currentStep = b.resultsStep.label;
}), b.$onDestroy = function() {
@@ -13268,7 +13276,7 @@ _.isFunction(e) && e();
}, b.onProjectSelected = function(t) {
b.selectedProject = t, b.configStep.valid = e.$ctrl.form.$valid && b.selectedProject;
}, b.templateSelected = function(e) {
-b.selectedTemplate = e, b.template = _.get(e, "resource"), b.selectStep.valid = !!e, b.iconClass = l(), b.image = u(), b.docUrl = C(b.template, "openshift.io/documentation-url"), b.supportUrl = C(b.template, "openshift.io/support-url"), b.vendor = C(b.template, "openshift.io/provider-display-name");
+b.selectedTemplate = e, b.template = _.get(e, "resource"), b.selectStep.valid = !!e, b.iconClass = l(), b.image = u(), b.docUrl = S(b.template, "openshift.io/documentation-url"), b.supportUrl = S(b.template, "openshift.io/support-url"), b.vendor = S(b.template, "openshift.io/provider-display-name");
}, b.templateProjectChange = function() {
b.templateProjectName = _.get(b.templateProject, "metadata.name"), b.catalogItems = {}, b.templateSelected(), a.getProjectCatalogItems(b.templateProjectName, !1, !0).then(_.spread(function(e, t) {
b.catalogItems = e, b.totalCount = b.catalogItems.length, g(), t && i.addNotification({
@@ -13298,7 +13306,9 @@ angular.module("openshiftConsole").component("deployImageDialog", {
controller: [ "$scope", "$routeParams", "DataService", function(e, t, n) {
var a = this;
a.$onInit = function() {
-a.loginBaseUrl = n.openshiftAPIBaseUrl(), a.currentStep = "Image", t.project || (a.showProjectName = !0);
+a.loginBaseUrl = n.openshiftAPIBaseUrl(), a.currentStep = "Image", t.project || (a.showProjectName = !0), e.$on("no-projects-cannot-create", function() {
+a.deployForm.$setValidity("required", !1), a.deployImageNewAppCreated = !1;
+});
}, a.deployImage = function() {
e.$broadcast("newAppFromDeployImage");
}, e.$on("deployImageNewAppCreated", function(e, t) {
@@ -13333,7 +13343,9 @@ return l(e);
}
var s = this, c = a("annotation"), l = a("imageForIconClass");
s.$onInit = function() {
-s.alerts = {}, s.loginBaseUrl = r.openshiftAPIBaseUrl(), n.project || (s.showProjectName = !0);
+s.alerts = {}, s.loginBaseUrl = r.openshiftAPIBaseUrl(), n.project || (s.showProjectName = !0), e.$on("no-projects-cannot-create", function() {
+s.importForm.$setValidity("required", !1);
+});
}, s.importFile = function() {
e.$broadcast("importFileFromYAMLOrJSON");
}, s.instantiateTemplate = function() {
@@ -13955,7 +13967,7 @@ isDialog: "="
},
templateUrl: "views/directives/deploy-image.html",
controller: [ "$scope", function(e) {
-e.forms = {};
+e.forms = {}, e.noProjectsCantCreate = !1;
} ],
link: function(n) {
function m() {
@@ -13976,7 +13988,9 @@ selectedProject: n.project
}, n.mode = "istag", n.istag = {}, n.app = {}, n.env = [], n.labels = [ {
name: "app",
value: ""
-} ];
+} ], n.$on("no-projects-cannot-create", function() {
+n.noProjectsCantCreate = !0;
+});
var f = e("orderByDisplayName"), g = e("getErrorDetails"), v = {}, h = function() {
c.hideNotification("deploy-image-list-config-maps-error"), c.hideNotification("deploy-image-list-secrets-error"), _.each(v, function(e) {
!e.id || "error" !== e.type && "warning" !== e.type || c.hideNotification(e.id);
@@ -13987,11 +14001,11 @@ var y = function() {
if (_.has(n.input.selectedProject, "metadata.uid")) return t.when(n.input.selectedProject);
var a = n.input.selectedProject.metadata.name, r = n.input.selectedProject.metadata.annotations["new-display-name"], o = e("description")(n.input.selectedProject);
return l.create(a, r, o);
-}, b = e("stripTag"), S = e("stripSHA"), C = e("humanizeKind"), w = function(e) {
+}, b = e("stripTag"), C = e("stripSHA"), S = e("humanizeKind"), w = function(e) {
return e.length > 24 ? e.substring(0, 24) : e;
}, k = function() {
var e = _.last(n.import.name.split("/"));
-return e = S(e), e = b(e), e = w(e);
+return e = C(e), e = b(e), e = w(e);
};
n.findImage = function() {
n.loading = !0, i.findImage(n.imageName, {
@@ -14064,28 +14078,28 @@ details: g(e)
}
} else n.mode = "istag";
});
-var P, j = e("displayName"), R = function() {
+var j, P = e("displayName"), R = function() {
var e = {
-started: "Deploying image " + n.app.name + " to project " + j(n.input.selectedProject),
-success: "Deployed image " + n.app.name + " to project " + j(n.input.selectedProject),
-failure: "Failed to deploy image " + n.app.name + " to project " + j(n.input.selectedProject)
+started: "Deploying image " + n.app.name + " to project " + P(n.input.selectedProject),
+success: "Deployed image " + n.app.name + " to project " + P(n.input.selectedProject),
+failure: "Failed to deploy image " + n.app.name + " to project " + P(n.input.selectedProject)
};
d.clear(), d.add(e, {}, n.input.selectedProject.metadata.name, function() {
var e = t.defer();
-return o.batch(P, {
+return o.batch(j, {
namespace: n.input.selectedProject.metadata.name
}).then(function(t) {
var a, r = !_.isEmpty(t.failure);
a = r ? (a = _.map(t.failure, function(e) {
return {
type: "error",
-message: "Cannot create " + C(e.object.kind).toLowerCase() + ' "' + e.object.metadata.name + '". ',
+message: "Cannot create " + S(e.object.kind).toLowerCase() + ' "' + e.object.metadata.name + '". ',
details: e.data.message
};
})).concat(_.map(t.success, function(e) {
return {
type: "success",
-message: "Created " + C(e.kind).toLowerCase() + ' "' + e.metadata.name + '" successfully. '
+message: "Created " + S(e.kind).toLowerCase() + ' "' + e.metadata.name + '" successfully. '
};
})) : [ {
type: "success",
@@ -14127,8 +14141,8 @@ e.id = _.uniqueId("deploy-image-alert-"), c.addNotification(e);
};
n.create = function() {
n.disableInputs = !0, h(), y().then(function(e) {
-n.input.selectedProject = e, P = m();
-var t = r.ifResourcesDontExist(P, n.input.selectedProject.metadata.name), a = u.getLatestQuotaAlerts(P, {
+n.input.selectedProject = e, j = m();
+var t = r.ifResourcesDontExist(j, n.input.selectedProject.metadata.name), a = u.getLatestQuotaAlerts(j, {
namespace: n.input.selectedProject.metadata.name
}), o = function(e) {
return n.nameTaken = e.nameTaken, a;
@@ -14452,18 +14466,18 @@ namespace: l.apiObject.metadata.namespace
}).then(function(e) {
d = h(e.by("metadata.name")), l.valueFromObjects = d.concat(m);
});
-}, S = function() {
+}, C = function() {
f("secrets", "list") && n.list("secrets", {
namespace: l.apiObject.metadata.namespace
}).then(function(e) {
m = h(e.by("metadata.name")), l.valueFromObjects = d.concat(m);
});
-}, C = function() {
-p || (p = !0, b(), S());
+}, S = function() {
+p || (p = !0, b(), C());
}, _ = function(e, n) {
o = v(e.kind), i = e.metadata.name, s = t.objectToResourceGroupVersion(e), l.canIUpdate = f(s, "update"), c ? c.finally(function() {
y(e, n);
-}) : y(e, n), l.containers = a.getContainers(l.updatedObject), l.disableValueFrom || l.ngReadonly || !l.canIUpdate || C();
+}) : y(e, n), l.containers = a.getContainers(l.updatedObject), l.disableValueFrom || l.ngReadonly || !l.canIUpdate || S();
};
l.$onChanges = function(e) {
e.apiObject && e.apiObject.currentValue && _(e.apiObject.currentValue, e.apiObject.previousValue);
@@ -14569,13 +14583,13 @@ var l, u, d = _.get(i, "DISABLE_GLOBAL_EVENT_WATCH"), m = e("isIE")(), p = this,
e || (p.drawerHidden = !0);
}, b = function(e, t) {
return _.get(e, "params.project") !== _.get(t, "params.project");
-}, S = function(e) {
+}, C = function(e) {
return s.get("projects", e, {}, {
errorNotification: !1
}).then(function(e) {
return h[e.metadata.name] = e, e;
});
-}, C = function(t, n) {
+}, S = function(t, n) {
return {
heading: e("displayName")(h[t]),
project: h[t],
@@ -14587,15 +14601,15 @@ return _.filter(e, "unread");
_.each(p.notificationGroups, function(e) {
e.totalUnread = w(e.notifications).length, e.hasUnread = !!e.totalUnread, o.$emit("NotificationDrawerWrapper.onUnreadNotifications", e.totalUnread);
});
-}, P = function(e) {
+}, j = function(e) {
_.each(p.notificationGroups, function(t) {
_.remove(t.notifications, {
uid: e.uid,
namespace: e.namespace
});
});
-}, j = function(e) {
-v[r.project] && delete v[r.project][e.uid], g[r.project] && delete g[r.project][e.uid], P(e);
+}, P = function(e) {
+v[r.project] && delete v[r.project][e.uid], g[r.project] && delete g[r.project][e.uid], j(e);
}, R = function() {
g[r.project] = {}, v[r.project] = {};
}, I = function(e) {
@@ -14615,14 +14629,14 @@ event: t
return _.reduce(e, function(e, t) {
return c.isImportantAPIEvent(t) && !c.isCleared(t.metadata.uid) && (e[t.metadata.uid] = t), e;
}, {});
-}, T = function(e, t) {
+}, N = function(e, t) {
var n = r.project;
return _.assign({}, e[n], t[n]);
-}, N = function(e) {
+}, T = function(e) {
return _.orderBy(e, [ "event.lastTimestamp", "event.firstTimestamp" ], [ "desc", "desc" ]);
}, D = function() {
o.$evalAsync(function() {
-p.notificationGroups = [ C(r.project, N(T(g, v))) ], k();
+p.notificationGroups = [ S(r.project, T(N(g, v))) ], k();
});
}, A = function() {
_.each(f, function(e) {
@@ -14658,7 +14672,7 @@ skipDigest: !0
}, F = _.once(function(e, t) {
B(), l = o.$on("NotificationsService.onNotificationAdded", t);
}), x = function() {
-S(r.project).then(function() {
+C(r.project).then(function() {
O(r.project, L), F(r.project, U), y(r.project), D();
});
};
@@ -14688,7 +14702,7 @@ headingInclude: "views/directives/notifications/header.html",
notificationBodyInclude: "views/directives/notifications/notification-body.html",
customScope: {
clear: function(e, t, n) {
-c.markRead(e.uid), c.markCleared(e.uid), n.notifications.splice(t, 1), j(e), D();
+c.markRead(e.uid), c.markCleared(e.uid), n.notifications.splice(t, 1), P(e), D();
},
markRead: function(e) {
e.unread = !1, c.markRead(e.uid), D();
@@ -14710,7 +14724,7 @@ p.drawerHidden = !p.drawerHidden;
})), f.push(o.$on("NotificationDrawerWrapper.hide", function() {
p.drawerHidden = !0;
})), f.push(o.$on("NotificationDrawerWrapper.clear", function(e, t) {
-c.markCleared(t.uid), j(t), p.countUnreadNotifications();
+c.markCleared(t.uid), P(t), p.countUnreadNotifications();
}));
};
p.$onInit = function() {
diff --git a/dist/scripts/templates.js b/dist/scripts/templates.js
index b20d70f03c..aa65a40a5f 100644
--- a/dist/scripts/templates.js
+++ b/dist/scripts/templates.js
@@ -6333,6 +6333,7 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
$templateCache.put('views/directives/deploy-image.html',
"
\n" +
"
\n" +
+ "
\n" +
"\n" +
"Deploy an existing image from an image stream tag or docker pull spec.\n" +
"
\n" +
@@ -6477,6 +6478,7 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
"\n" +
"Could not find any images for {{import.name | stripTag}}:{{import.tag}}.
\n" +
"\n" +
+ "\n" +
"
"
);
@@ -7202,6 +7204,7 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
$templateCache.put('views/directives/from-file.html',
"