From 7ed1fea8bfb3920fbdf525600eb4393b0fa97910 Mon Sep 17 00:00:00 2001 From: Jessica Forrester Date: Mon, 21 Nov 2016 17:00:18 -0500 Subject: [PATCH] Allow the help base url to be configured to update docs links more easily Fixes https://github.com/openshift/origin-web-console/issues/896 --- app/scripts/constants.js | 61 ++++++++++++++++++----------------- app/scripts/filters/util.js | 6 +++- dist/scripts/scripts.js | 64 +++++++++++++++++++------------------ 3 files changed, 69 insertions(+), 62 deletions(-) diff --git a/app/scripts/constants.js b/app/scripts/constants.js index a36e391131..5ff48487cb 100644 --- a/app/scripts/constants.js +++ b/app/scripts/constants.js @@ -8,38 +8,39 @@ window.OPENSHIFT_CONSTANTS = { // Maps links to specific topics in external documentation. + HELP_BASE_URL: "https://docs.openshift.org/latest/", HELP: { - "cli": "https://docs.openshift.org/latest/cli_reference/overview.html", - "get_started_cli": "https://docs.openshift.org/latest/cli_reference/get_started_cli.html", - "basic_cli_operations": "https://docs.openshift.org/latest/cli_reference/basic_cli_operations.html", - "build-triggers": "https://docs.openshift.org/latest/dev_guide/builds.html#build-triggers", - "webhooks": "https://docs.openshift.org/latest/dev_guide/builds.html#webhook-triggers", - "new_app": "https://docs.openshift.org/latest/dev_guide/new_app.html", - "start-build": "https://docs.openshift.org/latest/dev_guide/builds.html#starting-a-build", - "deployment-operations": "https://docs.openshift.org/latest/cli_reference/basic_cli_operations.html#build-and-deployment-cli-operations", - "route-types": "https://docs.openshift.org/latest/architecture/core_concepts/routes.html#route-types", - "persistent_volumes": "https://docs.openshift.org/latest/dev_guide/persistent_volumes.html", - "compute_resources": "https://docs.openshift.org/latest/dev_guide/compute_resources.html", - "pod_autoscaling": "https://docs.openshift.org/latest/dev_guide/pod_autoscaling.html", - "application_health": "https://docs.openshift.org/latest/dev_guide/application_health.html", - "source_secrets": "https://docs.openshift.org/latest/dev_guide/builds.html#using-secrets", - "git_secret": "https://docs.openshift.org/latest/dev_guide/builds.html#using-private-repositories-for-builds", - "pull_secret": "https://docs.openshift.org/latest/dev_guide/managing_images.html#using-image-pull-secrets", - "managing_secrets": "https://docs.openshift.org/latest/dev_guide/service_accounts.html#managing-allowed-secrets", - "creating_secrets": "https://docs.openshift.org/latest/dev_guide/secrets.html#creating-and-using-secrets", - "storage_classes": "https://docs.openshift.org/latest/install_config/persistent_storage/dynamically_provisioning_pvs.html", - "selector_label": "https://docs.openshift.org/latest/install_config/persistent_storage/selector_label_binding.html", - "rolling_strategy": "https://docs.openshift.org/latest/dev_guide/deployments.html#rolling-strategy", - "recreate_strategy": "https://docs.openshift.org/latest/dev_guide/deployments.html#recreate-strategy", - "custom_strategy": "https://docs.openshift.org/latest/dev_guide/deployments.html#custom-strategy", - "lifecycle_hooks": "https://docs.openshift.org/latest/dev_guide/deployments.html#lifecycle-hooks", - "new_pod_exec": "https://docs.openshift.org/latest/dev_guide/deployments.html#pod-based-lifecycle-hook", - "authorization": "https://docs.openshift.org/latest/architecture/additional_concepts/authorization.html", - "roles": "https://docs.openshift.org/latest/architecture/additional_concepts/authorization.html#roles", - "service_accounts": "https://docs.openshift.org/latest/dev_guide/service_accounts.html", - "users_and_groups": "https://docs.openshift.org/latest/architecture/additional_concepts/authentication.html#users-and-groups", + "cli": "cli_reference/overview.html", + "get_started_cli": "cli_reference/get_started_cli.html", + "basic_cli_operations": "cli_reference/basic_cli_operations.html", + "build-triggers": "dev_guide/builds.html#build-triggers", + "webhooks": "dev_guide/builds.html#webhook-triggers", + "new_app": "dev_guide/new_app.html", + "start-build": "dev_guide/builds.html#starting-a-build", + "deployment-operations": "cli_reference/basic_cli_operations.html#build-and-deployment-cli-operations", + "route-types": "architecture/core_concepts/routes.html#route-types", + "persistent_volumes": "dev_guide/persistent_volumes.html", + "compute_resources": "dev_guide/compute_resources.html", + "pod_autoscaling": "dev_guide/pod_autoscaling.html", + "application_health": "dev_guide/application_health.html", + "source_secrets": "dev_guide/builds.html#using-secrets", + "git_secret": "dev_guide/builds.html#using-private-repositories-for-builds", + "pull_secret": "dev_guide/managing_images.html#using-image-pull-secrets", + "managing_secrets": "dev_guide/service_accounts.html#managing-allowed-secrets", + "creating_secrets": "dev_guide/secrets.html#creating-and-using-secrets", + "storage_classes": "install_config/persistent_storage/dynamically_provisioning_pvs.html", + "selector_label": "install_config/persistent_storage/selector_label_binding.html", + "rolling_strategy": "dev_guide/deployments.html#rolling-strategy", + "recreate_strategy": "dev_guide/deployments.html#recreate-strategy", + "custom_strategy": "dev_guide/deployments.html#custom-strategy", + "lifecycle_hooks": "dev_guide/deployments.html#lifecycle-hooks", + "new_pod_exec": "dev_guide/deployments.html#pod-based-lifecycle-hook", + "authorization": "architecture/additional_concepts/authorization.html", + "roles": "architecture/additional_concepts/authorization.html#roles", + "service_accounts": "dev_guide/service_accounts.html", + "users_and_groups": "architecture/additional_concepts/authentication.html#users-and-groups", // default should remain last, add new links above - "default": "https://docs.openshift.org/latest/welcome/index.html" + "default": "welcome/index.html" }, // Maps links names to URL's where the CLI tools can be downloaded, may point directly to files or to external pages in a CDN, for example. CLI: { diff --git a/app/scripts/filters/util.js b/app/scripts/filters/util.js index 1528e65a71..24f13a367c 100644 --- a/app/scripts/filters/util.js +++ b/app/scripts/filters/util.js @@ -192,7 +192,11 @@ angular.module('openshiftConsole') }) .filter('helpLink', function(Constants) { return function(type) { - return Constants.HELP[type] || Constants.HELP["default"]; + var helpLink = Constants.HELP[type] || Constants.HELP["default"]; + if (!URI(helpLink).is('absolute')) { + helpLink = Constants.HELP_BASE_URL + helpLink; + } + return helpLink; }; }) .filter('taskTitle', function() { diff --git a/dist/scripts/scripts.js b/dist/scripts/scripts.js index 1aab447a08..61ad74f82c 100644 --- a/dist/scripts/scripts.js +++ b/dist/scripts/scripts.js @@ -5,37 +5,38 @@ return this.resource = a, this.group = b, this.version = c, this; } window.OPENSHIFT_CONSTANTS = { +HELP_BASE_URL:"https://docs.openshift.org/latest/", HELP:{ -cli:"https://docs.openshift.org/latest/cli_reference/overview.html", -get_started_cli:"https://docs.openshift.org/latest/cli_reference/get_started_cli.html", -basic_cli_operations:"https://docs.openshift.org/latest/cli_reference/basic_cli_operations.html", -"build-triggers":"https://docs.openshift.org/latest/dev_guide/builds.html#build-triggers", -webhooks:"https://docs.openshift.org/latest/dev_guide/builds.html#webhook-triggers", -new_app:"https://docs.openshift.org/latest/dev_guide/new_app.html", -"start-build":"https://docs.openshift.org/latest/dev_guide/builds.html#starting-a-build", -"deployment-operations":"https://docs.openshift.org/latest/cli_reference/basic_cli_operations.html#build-and-deployment-cli-operations", -"route-types":"https://docs.openshift.org/latest/architecture/core_concepts/routes.html#route-types", -persistent_volumes:"https://docs.openshift.org/latest/dev_guide/persistent_volumes.html", -compute_resources:"https://docs.openshift.org/latest/dev_guide/compute_resources.html", -pod_autoscaling:"https://docs.openshift.org/latest/dev_guide/pod_autoscaling.html", -application_health:"https://docs.openshift.org/latest/dev_guide/application_health.html", -source_secrets:"https://docs.openshift.org/latest/dev_guide/builds.html#using-secrets", -git_secret:"https://docs.openshift.org/latest/dev_guide/builds.html#using-private-repositories-for-builds", -pull_secret:"https://docs.openshift.org/latest/dev_guide/managing_images.html#using-image-pull-secrets", -managing_secrets:"https://docs.openshift.org/latest/dev_guide/service_accounts.html#managing-allowed-secrets", -creating_secrets:"https://docs.openshift.org/latest/dev_guide/secrets.html#creating-and-using-secrets", -storage_classes:"https://docs.openshift.org/latest/install_config/persistent_storage/dynamically_provisioning_pvs.html", -selector_label:"https://docs.openshift.org/latest/install_config/persistent_storage/selector_label_binding.html", -rolling_strategy:"https://docs.openshift.org/latest/dev_guide/deployments.html#rolling-strategy", -recreate_strategy:"https://docs.openshift.org/latest/dev_guide/deployments.html#recreate-strategy", -custom_strategy:"https://docs.openshift.org/latest/dev_guide/deployments.html#custom-strategy", -lifecycle_hooks:"https://docs.openshift.org/latest/dev_guide/deployments.html#lifecycle-hooks", -new_pod_exec:"https://docs.openshift.org/latest/dev_guide/deployments.html#pod-based-lifecycle-hook", -authorization:"https://docs.openshift.org/latest/architecture/additional_concepts/authorization.html", -roles:"https://docs.openshift.org/latest/architecture/additional_concepts/authorization.html#roles", -service_accounts:"https://docs.openshift.org/latest/dev_guide/service_accounts.html", -users_and_groups:"https://docs.openshift.org/latest/architecture/additional_concepts/authentication.html#users-and-groups", -"default":"https://docs.openshift.org/latest/welcome/index.html" +cli:"cli_reference/overview.html", +get_started_cli:"cli_reference/get_started_cli.html", +basic_cli_operations:"cli_reference/basic_cli_operations.html", +"build-triggers":"dev_guide/builds.html#build-triggers", +webhooks:"dev_guide/builds.html#webhook-triggers", +new_app:"dev_guide/new_app.html", +"start-build":"dev_guide/builds.html#starting-a-build", +"deployment-operations":"cli_reference/basic_cli_operations.html#build-and-deployment-cli-operations", +"route-types":"architecture/core_concepts/routes.html#route-types", +persistent_volumes:"dev_guide/persistent_volumes.html", +compute_resources:"dev_guide/compute_resources.html", +pod_autoscaling:"dev_guide/pod_autoscaling.html", +application_health:"dev_guide/application_health.html", +source_secrets:"dev_guide/builds.html#using-secrets", +git_secret:"dev_guide/builds.html#using-private-repositories-for-builds", +pull_secret:"dev_guide/managing_images.html#using-image-pull-secrets", +managing_secrets:"dev_guide/service_accounts.html#managing-allowed-secrets", +creating_secrets:"dev_guide/secrets.html#creating-and-using-secrets", +storage_classes:"install_config/persistent_storage/dynamically_provisioning_pvs.html", +selector_label:"install_config/persistent_storage/selector_label_binding.html", +rolling_strategy:"dev_guide/deployments.html#rolling-strategy", +recreate_strategy:"dev_guide/deployments.html#recreate-strategy", +custom_strategy:"dev_guide/deployments.html#custom-strategy", +lifecycle_hooks:"dev_guide/deployments.html#lifecycle-hooks", +new_pod_exec:"dev_guide/deployments.html#pod-based-lifecycle-hook", +authorization:"architecture/additional_concepts/authorization.html", +roles:"architecture/additional_concepts/authorization.html#roles", +service_accounts:"dev_guide/service_accounts.html", +users_and_groups:"architecture/additional_concepts/authentication.html#users-and-groups", +"default":"welcome/index.html" }, CLI:{ "Latest Release":"https://github.com/openshift/origin/releases/latest" @@ -13585,7 +13586,8 @@ return a; }; }).filter("helpLink", [ "Constants", function(a) { return function(b) { -return a.HELP[b] || a.HELP["default"]; +var c = a.HELP[b] || a.HELP["default"]; +return URI(c).is("absolute") || (c = a.HELP_BASE_URL + c), c; }; } ]).filter("taskTitle", function() { return function(a) {