| #!/usr/bin/env sh |
| |
| # ============LICENSE_START======================================================= |
| # ONAP |
| # ================================================================================ |
| # Copyright (C) 2017-2021 AT&T Intellectual Property. All rights reserved. |
| # ================================================================================ |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # ============LICENSE_END========================================================= |
| |
| source ${POLICY_HOME}/etc/profile.d/env.sh |
| |
| REST_TOOL="http-prompt" |
| TELEMETRY_SPEC="${POLICY_HOME}/config/telemetry-spec.json" |
| |
| if ! type -p "${REST_TOOL}" >/dev/null 2>&1; then |
| echo "error: prerequisite software not found: http-prompt" |
| exit 1 |
| fi |
| |
| if ! "${POLICY_HOME}"/bin/policy-management-controller status >/dev/null 2>&1; then |
| echo "error: pdp-d is not running" |
| exit 2 |
| fi |
| |
| CREDENTIALS= |
| if [ -n "${TELEMETRY_USER}" ]; then |
| CREDENTIALS="--auth ${TELEMETRY_USER}:${TELEMETRY_PASSWORD}" |
| fi |
| |
| PROTOCOL="http" |
| |
| # use environment flag if set |
| if [ $HTTP_SERVER_HTTPS == "true" ]; then |
| PROTOCOL="https" |
| fi |
| |
| # it takes precedence to have https explicitly set over the environment variable |
| if egrep "^http\.server\.services\..*CONFIG\.https.*=.*true" ${POLICY_HOME}/config/engine.properties; then |
| PROTOCOL="https" |
| fi |
| |
| if [ ! -r "${TELEMETRY_SPEC}" ]; then |
| echo "generating new spec .." |
| if ! http --verify=no ${CREDENTIALS} "${PROTOCOL}"://localhost:9696/swagger.json >${TELEMETRY_SPEC} 2>/dev/null; then |
| echo "error: cannot generate telemetry spec" |
| rm -f ${TELEMETRY_SPEC} 2>/dev/null |
| exit 3 |
| fi |
| fi |
| |
| exec http-prompt "${PROTOCOL}"://localhost:9696/policy/pdp/engine --verify=no ${CREDENTIALS} --spec ${TELEMETRY_SPEC} |
| |