dewrich closed pull request #1879: [Issue-1051] - adds configurable ds charts
button to ds page
URL: https://github.com/apache/incubator-trafficcontrol/pull/1879
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git
a/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
b/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
index 3319bc74c0..75bb7ad462 100644
---
a/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
+++
b/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
@@ -17,7 +17,7 @@
* under the License.
*/
-var FormDeliveryServiceController = function(deliveryService, type, types,
$scope, $location, $uibModal, formUtils, locationUtils, tenantUtils,
cdnService, profileService, tenantService) {
+var FormDeliveryServiceController = function(deliveryService, type, types,
$scope, $location, $uibModal, $window, formUtils, locationUtils, tenantUtils,
cdnService, profileService, tenantService, propertiesModel) {
var getCDNs = function() {
cdnService.getCDNs()
@@ -45,6 +45,8 @@ var FormDeliveryServiceController = function(deliveryService,
type, types, $scop
$scope.deliveryService = deliveryService;
+ $scope.showChartsButton =
propertiesModel.properties.deliveryServices.charts.show;
+
$scope.manageKeys = {
sslKeys: deliveryService.protocol > 0,
urlSigKeys: deliveryService.signingAlgorithm == 'url_sig',
@@ -180,6 +182,13 @@ var FormDeliveryServiceController =
function(deliveryService, type, types, $scop
return '-'.repeat(tenant.level) + ' ' + tenant.name;
};
+ $scope.openCharts = function(ds) {
+ $window.open(
+ propertiesModel.properties.deliveryServices.charts.baseUrl +
ds.xmlId,
+ '_blank'
+ );
+ };
+
$scope.clone = function(ds) {
var params = {
title: 'Clone Delivery Service: ' + ds.xmlId,
@@ -259,5 +268,5 @@ var FormDeliveryServiceController =
function(deliveryService, type, types, $scop
};
-FormDeliveryServiceController.$inject = ['deliveryService', 'type', 'types',
'$scope', '$location', '$uibModal', 'formUtils', 'locationUtils',
'tenantUtils', 'cdnService', 'profileService', 'tenantService'];
+FormDeliveryServiceController.$inject = ['deliveryService', 'type', 'types',
'$scope', '$location', '$uibModal', '$window', 'formUtils', 'locationUtils',
'tenantUtils', 'cdnService', 'profileService', 'tenantService',
'propertiesModel'];
module.exports = FormDeliveryServiceController;
diff --git
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.DNS.tpl.html
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.DNS.tpl.html
index 29fa9f6306..afdbfb2998 100644
---
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.DNS.tpl.html
+++
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.DNS.tpl.html
@@ -24,17 +24,7 @@
<li class="active">{{deliveryServiceName}}</li>
</ol>
<div class="pull-right" role="group" ng-show="!settings.isNew">
- <div class="btn-group" role="group" uib-dropdown
is-open="keys.isopen">
- <button ng-if="manageKeys.sslKeys || manageKeys.urlSigKeys ||
manageKeys.uriSigningKeys" type="button" class="btn btn-primary
dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
- <i class="fa fa-key"></i>
- <span class="caret"></span>
- </button>
- <ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
- <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
- </ul>
- </div>
+ <button type="button" class="btn btn-primary" title="Delivery
Service Charts" ng-if="showChartsButton"
ng-click="openCharts(deliveryService)"><i class="fa fa-bar-chart
fa-fw"></i></button>
<div class="btn-group" role="group" uib-dropdown
is-open="more.isopen">
<button type="button" class="btn btn-default dropdown-toggle"
uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
More
@@ -43,6 +33,10 @@
<ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
<li role="menuitem"><a
ng-click="clone(deliveryService)">Clone Delivery Service</a></li>
<li class="divider"></li>
+ <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
+ <li class="divider" ng-if="manageKeys.sslKeys ||
manageKeys.urlSigKeys || manageKeys.uriSigningKeys"></li>
<li role="menuitem"><a ng-click="viewServers()">View
Servers</a></li>
<li role="menuitem"><a ng-click="viewRegexes()">View
Regexes</a></li>
<li role="menuitem"><a ng-click="viewJobs()">View
Invalidate Content Jobs</a></li>
diff --git
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.HTTP.tpl.html
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.HTTP.tpl.html
index 5f6d415e7a..5f9763c4ca 100644
---
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.HTTP.tpl.html
+++
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.HTTP.tpl.html
@@ -24,17 +24,7 @@
<li class="active">{{deliveryServiceName}}</li>
</ol>
<div class="pull-right" role="group" ng-show="!settings.isNew">
- <div class="btn-group" role="group" uib-dropdown
is-open="keys.isopen">
- <button ng-if="manageKeys.sslKeys || manageKeys.urlSigKeys ||
manageKeys.uriSigningKeys" type="button" class="btn btn-primary
dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
- <i class="fa fa-key"></i>
- <span class="caret"></span>
- </button>
- <ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
- <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
- </ul>
- </div>
+ <button type="button" class="btn btn-primary" title="Delivery
Service Charts" ng-if="showChartsButton"
ng-click="openCharts(deliveryService)"><i class="fa fa-bar-chart
fa-fw"></i></button>
<div class="btn-group" role="group" uib-dropdown
is-open="more.isopen">
<button type="button" class="btn btn-default dropdown-toggle"
uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
More
@@ -43,6 +33,10 @@
<ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
<li role="menuitem"><a
ng-click="clone(deliveryService)">Clone Delivery Service</a></li>
<li class="divider"></li>
+ <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
+ <li class="divider" ng-if="manageKeys.sslKeys ||
manageKeys.urlSigKeys || manageKeys.uriSigningKeys"></li>
<li role="menuitem"><a ng-click="viewServers()">View
Servers</a></li>
<li role="menuitem"><a ng-click="viewRegexes()">View
Regexes</a></li>
<li role="menuitem"><a ng-click="viewJobs()">View
Invalidate Content Jobs</a></li>
diff --git
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.Steering.tpl.html
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.Steering.tpl.html
index 4c7a4d6967..19cdf0fcba 100644
---
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.Steering.tpl.html
+++
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.Steering.tpl.html
@@ -24,17 +24,7 @@
<li class="active">{{deliveryServiceName}}</li>
</ol>
<div class="pull-right" role="group" ng-show="!settings.isNew">
- <div class="btn-group" role="group" uib-dropdown
is-open="keys.isopen">
- <button ng-if="manageKeys.sslKeys || manageKeys.urlSigKeys ||
manageKeys.uriSigningKeys" type="button" class="btn btn-primary
dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
- <i class="fa fa-key"></i>
- <span class="caret"></span>
- </button>
- <ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
- <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
- </ul>
- </div>
+ <button type="button" class="btn btn-primary" title="Delivery
Service Charts" ng-if="showChartsButton"
ng-click="openCharts(deliveryService)"><i class="fa fa-bar-chart
fa-fw"></i></button>
<div class="btn-group" role="group" uib-dropdown
is-open="more.isopen">
<button type="button" class="btn btn-default dropdown-toggle"
uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
More
@@ -43,6 +33,10 @@
<ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
<li role="menuitem"><a
ng-click="clone(deliveryService)">Clone Delivery Service</a></li>
<li class="divider"></li>
+ <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
+ <li class="divider" ng-if="manageKeys.sslKeys ||
manageKeys.urlSigKeys || manageKeys.uriSigningKeys"></li>
<li role="menuitem"><a ng-click="viewTargets()">View
Targets</a></li>
<li role="menuitem"><a ng-click="viewRegexes()">View
Regexes</a></li>
<li role="menuitem"><a ng-click="viewJobs()">View
Invalidate Content Jobs</a></li>
diff --git
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.anyMap.tpl.html
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.anyMap.tpl.html
index 4dde1945c7..c792ea128c 100644
---
a/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.anyMap.tpl.html
+++
b/traffic_portal/app/src/common/modules/form/deliveryService/form.deliveryService.anyMap.tpl.html
@@ -24,17 +24,7 @@
<li class="active">{{deliveryServiceName}}</li>
</ol>
<div class="pull-right" role="group" ng-show="!settings.isNew">
- <div class="btn-group" role="group" uib-dropdown
is-open="keys.isopen">
- <button ng-if="manageKeys.sslKeys || manageKeys.urlSigKeys ||
manageKeys.uriSigningKeys" type="button" class="btn btn-primary
dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
- <i class="fa fa-key"></i>
- <span class="caret"></span>
- </button>
- <ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
- <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
- <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
- </ul>
- </div>
+ <button type="button" class="btn btn-primary" title="Delivery
Service Charts" ng-if="showChartsButton"
ng-click="openCharts(deliveryService)"><i class="fa fa-bar-chart
fa-fw"></i></button>
<div class="btn-group" role="group" uib-dropdown
is-open="more.isopen">
<button type="button" class="btn btn-default dropdown-toggle"
uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
More
@@ -43,6 +33,10 @@
<ul class="dropdown-menu-right dropdown-menu"
uib-dropdown-menu>
<li role="menuitem"><a
ng-click="clone(deliveryService)">Clone Delivery Service</a></li>
<li class="divider"></li>
+ <li role="menuitem"><a ng-if="manageKeys.sslKeys"
ng-click="manageSslKeys()">Manage SSL Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.urlSigKeys"
ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
+ <li role="menuitem"><a ng-if="manageKeys.uriSigningKeys"
ng-click="manageUriSigningKeys()">Manage URI Signing Keys</a></li>
+ <li class="divider" ng-if="manageKeys.sslKeys ||
manageKeys.urlSigKeys || manageKeys.uriSigningKeys"></li>
<li role="menuitem"><a ng-click="viewServers()">View
Servers</a></li>
<li role="menuitem"><a ng-click="viewRegexes()">View
Regexes</a></li>
<li role="menuitem"><a ng-click="viewJobs()">View
Invalidate Content Jobs</a></li>
diff --git a/traffic_portal/app/src/traffic_portal_properties.json
b/traffic_portal/app/src/traffic_portal_properties.json
index 2935001299..c4624cfd97 100644
--- a/traffic_portal/app/src/traffic_portal_properties.json
+++ b/traffic_portal/app/src/traffic_portal_properties.json
@@ -54,6 +54,14 @@
"UPD": "Configuration file updates have been applied or are pending
for the EDGE or MID"
}
},
+ "deliveryServices": {
+ "_comment": "Delivery service settings",
+ "charts": {
+ "_comment": "Do you want to show a charts button for each ds? If so,
where can the charts be found? xml id will be appended to the provided url.",
+ "show": false,
+ "baseUrl":
"https://trafficstats.domain.com/dashboard/script/traffic_ops_deliveryservice.js?which="
+ }
+ },
"defaults": {
"_comments": "These are default values used when creating resources",
"deliveryservices": {
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services