diff options
author | Jorge Hernandez <jorge.hernandez-herrero@att.com> | 2019-02-13 13:12:37 -0600 |
---|---|---|
committer | Jorge Hernandez <jorge.hernandez-herrero@att.com> | 2019-02-14 08:31:11 -0600 |
commit | c6f2da8cb993382057c6e141b68af9334b6391d1 (patch) | |
tree | b0bf922f384c8891fcd372ef4f562aad21a14397 /packages | |
parent | 6683a08e12d119e1ba8fb1070a93660c0c3a3931 (diff) |
Decouple nexus reconfiguration from installation
This allows for nexus to be reconfigured dynamically.
Change-Id: I103707ab7525ddb29663d7785739a34dff538605
Issue-ID: POLICY-1518
Signed-off-by: Jorge Hernandez <jorge.hernandez-herrero@att.com>
Diffstat (limited to 'packages')
-rw-r--r-- | packages/base/src/files/bin/configure-maven | 32 | ||||
-rw-r--r-- | packages/base/src/files/etc/m2/settings.xml | 171 | ||||
-rw-r--r-- | packages/base/src/files/etc/m2/standalone-settings.xml | 118 | ||||
-rwxr-xr-x | packages/base/src/files/m2/settings.xml | 171 | ||||
-rwxr-xr-x | packages/base/src/files/m2/standalone-settings.xml | 118 | ||||
-rw-r--r-- | packages/docker/src/main/docker/docker-install.sh | 51 |
6 files changed, 336 insertions, 325 deletions
diff --git a/packages/base/src/files/bin/configure-maven b/packages/base/src/files/bin/configure-maven new file mode 100644 index 00000000..fc6a7f9c --- /dev/null +++ b/packages/base/src/files/bin/configure-maven @@ -0,0 +1,32 @@ +#!/usr/bin/env bash + +# ============LICENSE_START======================================================= +# ONAP +# ================================================================================ +# Copyright (C) 2019 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========================================================= + +if [[ ${DEBUG} == y ]]; then + set -x +fi + +HOME_M2="${HOME}"/.m2 +mkdir -p "${HOME_M2}" 2> /dev/null + +if [[ -z "${SNAPSHOT_REPOSITORY_URL}" && -z "${RELEASE_REPOSITORY_URL}" ]]; then + ln -s -f "${POLICY_HOME}"/etc/m2/standalone-settings.xml "${HOME_M2}"/settings.xml +else + ln -s -f "${POLICY_HOME}"/etc/m2/settings.xml "${HOME_M2}"/settings.xml +fi diff --git a/packages/base/src/files/etc/m2/settings.xml b/packages/base/src/files/etc/m2/settings.xml new file mode 100644 index 00000000..2a56fcad --- /dev/null +++ b/packages/base/src/files/etc/m2/settings.xml @@ -0,0 +1,171 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ============LICENSE_START======================================================= + Base Package + ================================================================================ + Copyright (C) 2017-2019 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========================================================= + --> + + +<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> + + <profiles> + + <profile> + <id>policy-local</id> + + <repositories> + <repository> + <id>file-repository</id> + <url>file:${user.home}/.m2/file-repository</url> + <releases> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>policy-releases</id> + + <repositories> + <repository> + <id>${env.RELEASE_REPOSITORY_ID}</id> + <url>${env.RELEASE_REPOSITORY_URL}</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>policy-snapshots</id> + + <repositories> + <repository> + <id>${env.SNAPSHOT_REPOSITORY_ID}</id> + <url>${env.SNAPSHOT_REPOSITORY_URL}</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>onap-releases</id> + + <repositories> + <repository> + <id>onap-releases</id> + <name>onap-releases</name> + <url>https://nexus.onap.org/content/repositories/releases/</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>onap-staging</id> + + <repositories> + <repository> + <id>onap-staging</id> + <name>onap-staging</name> + <url>https://nexus.onap.org/content/repositories/staging/</url> + <releases> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + + <id>onap-snapshots</id> + + <repositories> + <repository> + <id>onap-snapshots</id> + <name>onap-snapshots</name> + <url>https://nexus.onap.org/content/repositories/snapshots/</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + </repositories> + + </profile> + + </profiles> + + <activeProfiles> + <activeProfile>policy-local</activeProfile> + <activeProfile>policy-releases</activeProfile> + <activeProfile>policy-snapshots</activeProfile> + <activeProfile>onap-releases</activeProfile> + <activeProfile>onap-staging</activeProfile> + <activeProfile>onap-snapshots</activeProfile> + </activeProfiles> + + <servers> + <server> + <id>${env.SNAPSHOT_REPOSITORY_ID}</id> + <username>${env.REPOSITORY_USERNAME}</username> + <password>${env.REPOSITORY_PASSWORD}</password> + </server> + <server> + <id>${env.RELEASE_REPOSITORY_ID}</id> + <username>${env.REPOSITORY_USERNAME}</username> + <password>${env.REPOSITORY_PASSWORD}</password> + </server> + </servers> + +</settings> + diff --git a/packages/base/src/files/etc/m2/standalone-settings.xml b/packages/base/src/files/etc/m2/standalone-settings.xml new file mode 100644 index 00000000..39e7751a --- /dev/null +++ b/packages/base/src/files/etc/m2/standalone-settings.xml @@ -0,0 +1,118 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ============LICENSE_START======================================================= + Base Package + ================================================================================ + Copyright (C) 2017-2019 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========================================================= + --> + + +<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> + + <profiles> + + <profile> + <id>policy-local</id> + + <repositories> + <repository> + <id>file-repository</id> + <url>file:${user.home}/.m2/file-repository</url> + <releases> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>onap-releases</id> + + <repositories> + <repository> + <id>onap-releases</id> + <name>onap-releases</name> + <url>https://nexus.onap.org/content/repositories/releases/</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>onap-staging</id> + + <repositories> + <repository> + <id>onap-staging</id> + <name>onap-staging</name> + <url>https://nexus.onap.org/content/repositories/staging/</url> + <releases> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + + </profile> + + <profile> + <id>onap-snapshots</id> + + <repositories> + <repository> + <id>onap-snapshots</id> + <name>onap-snapshots</name> + <url>https://nexus.onap.org/content/repositories/snapshots/</url> + <releases> + <enabled>false</enabled> + </releases> + <snapshots> + <enabled>true</enabled> + <updatePolicy>always</updatePolicy> + </snapshots> + </repository> + </repositories> + + </profile> + + </profiles> + + <activeProfiles> + <activeProfile>policy-local</activeProfile> + <activeProfile>onap-releases</activeProfile> + <activeProfile>onap-staging</activeProfile> + <activeProfile>onap-snapshots</activeProfile> + </activeProfiles> + +</settings> + diff --git a/packages/base/src/files/m2/settings.xml b/packages/base/src/files/m2/settings.xml deleted file mode 100755 index 63ab214d..00000000 --- a/packages/base/src/files/m2/settings.xml +++ /dev/null @@ -1,171 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ============LICENSE_START======================================================= - Base Package - ================================================================================ - Copyright (C) 2017-2018 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========================================================= - --> - - -<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> - - <profiles> - - <profile> - <id>policy-local</id> - - <repositories> - <repository> - <id>file-repository</id> - <url>file:${user.home}/.m2/file-repository</url> - <releases> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </releases> - <snapshots> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>policy-releases</id> - - <repositories> - <repository> - <id>${env.RELEASE_REPOSITORY_ID}</id> - <url>${env.RELEASE_REPOSITORY_URL}</url> - <releases> - <enabled>true</enabled> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>policy-snapshots</id> - - <repositories> - <repository> - <id>${env.SNAPSHOT_REPOSITORY_ID}</id> - <url>${env.SNAPSHOT_REPOSITORY_URL}</url> - <releases> - <enabled>false</enabled> - </releases> - <snapshots> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>onap-releases</id> - - <repositories> - <repository> - <id>onap-releases</id> - <name>onap-releases</name> - <url>https://nexus.onap.org/content/repositories/releases/</url> - <releases> - <enabled>true</enabled> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>onap-staging</id> - - <repositories> - <repository> - <id>onap-staging</id> - <name>onap-staging</name> - <url>https://nexus.onap.org/content/repositories/staging/</url> - <releases> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - - <id>onap-snapshots</id> - - <repositories> - <repository> - <id>onap-snapshots</id> - <name>onap-snapshots</name> - <url>https://nexus.onap.org/content/repositories/snapshots/</url> - <releases> - <enabled>false</enabled> - </releases> - <snapshots> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </snapshots> - </repository> - </repositories> - - </profile> - - </profiles> - - <activeProfiles> - <activeProfile>policy-local</activeProfile> - <activeProfile>policy-releases</activeProfile> - <activeProfile>policy-snapshots</activeProfile> - <activeProfile>onap-releases</activeProfile> - <activeProfile>onap-staging</activeProfile> - <activeProfile>onap-snapshots</activeProfile> - </activeProfiles> - - <servers> - <server> - <id>${env.SNAPSHOT_REPOSITORY_ID}</id> - <username>${env.REPOSITORY_USERNAME}</username> - <password>${env.REPOSITORY_PASSWORD}</password> - </server> - <server> - <id>${env.RELEASE_REPOSITORY_ID}</id> - <username>${env.REPOSITORY_USERNAME}</username> - <password>${env.REPOSITORY_PASSWORD}</password> - </server> - </servers> - -</settings> - diff --git a/packages/base/src/files/m2/standalone-settings.xml b/packages/base/src/files/m2/standalone-settings.xml deleted file mode 100755 index 63f2f92d..00000000 --- a/packages/base/src/files/m2/standalone-settings.xml +++ /dev/null @@ -1,118 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ============LICENSE_START======================================================= - Base Package - ================================================================================ - Copyright (C) 2017-2018 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========================================================= - --> - - -<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> - - <profiles> - - <profile> - <id>policy-local</id> - - <repositories> - <repository> - <id>file-repository</id> - <url>file:${user.home}/.m2/file-repository</url> - <releases> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </releases> - <snapshots> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>onap-releases</id> - - <repositories> - <repository> - <id>onap-releases</id> - <name>onap-releases</name> - <url>https://nexus.onap.org/content/repositories/releases/</url> - <releases> - <enabled>true</enabled> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>onap-staging</id> - - <repositories> - <repository> - <id>onap-staging</id> - <name>onap-staging</name> - <url>https://nexus.onap.org/content/repositories/staging/</url> - <releases> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - </repositories> - - </profile> - - <profile> - <id>onap-snapshots</id> - - <repositories> - <repository> - <id>onap-snapshots</id> - <name>onap-snapshots</name> - <url>https://nexus.onap.org/content/repositories/snapshots/</url> - <releases> - <enabled>false</enabled> - </releases> - <snapshots> - <enabled>true</enabled> - <updatePolicy>always</updatePolicy> - </snapshots> - </repository> - </repositories> - - </profile> - - </profiles> - - <activeProfiles> - <activeProfile>policy-local</activeProfile> - <activeProfile>onap-releases</activeProfile> - <activeProfile>onap-staging</activeProfile> - <activeProfile>onap-snapshots</activeProfile> - </activeProfiles> - -</settings> - diff --git a/packages/docker/src/main/docker/docker-install.sh b/packages/docker/src/main/docker/docker-install.sh index 76f8fb27..13a366af 100644 --- a/packages/docker/src/main/docker/docker-install.sh +++ b/packages/docker/src/main/docker/docker-install.sh @@ -4,7 +4,7 @@ # ============LICENSE_START======================================================= # Installation Package # ================================================================================ -# Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved. +# Copyright (C) 2017-2019 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. @@ -209,35 +209,18 @@ function configure_settings() { # if both SNAPSHOT_REPOSITORY_URL and RELEASE_REPOSITORY_URL are null, # use standalone-settings.xml that just defines the file-based repo. # if only one of them is specified, use file-based repo for the other. - if [[ -z "${SNAPSHOT_REPOSITORY_URL}" && -z "${RELEASE_REPOSITORY_URL}" ]]; then - echo "SNAPSHOT_REPOSITORY_URL and RELEASE_REPOSITORY_URL properties not set, configuring settings.xml for standalone operation" - mv ${HOME_M2}/standalone-settings.xml ${HOME_M2}/settings.xml - else - rm $HOME_M2/standalone-settings.xml - if [[ -n "${SNAPSHOT_REPOSITORY_URL}" ]] ; then - snapshotRepoID=${SNAPSHOT_REPOSITORY_ID} - snapshotRepoUrl=${SNAPSHOT_REPOSITORY_URL} - fi - if [[ -n "${RELEASE_REPOSITORY_URL}" ]] ; then - releaseRepoID=${RELEASE_REPOSITORY_ID} - releaseRepoUrl=${RELEASE_REPOSITORY_URL} - fi + ${POLICY_HOME}/bin/configure-maven + + if [[ -n "${SNAPSHOT_REPOSITORY_URL}" ]] ; then + snapshotRepoID=${SNAPSHOT_REPOSITORY_ID} + snapshotRepoUrl=${SNAPSHOT_REPOSITORY_URL} fi - SED_LINE="sed -i" - SED_LINE+=" -e 's!\${{SNAPSHOT_REPOSITORY_ID}}!${snapshotRepoID}!g' " - SED_LINE+=" -e 's!\${{SNAPSHOT_REPOSITORY_URL}}!${snapshotRepoUrl}!g' " - SED_LINE+=" -e 's!\${{RELEASE_REPOSITORY_ID}}!${releaseRepoID}!g' " - SED_LINE+=" -e 's!\${{RELEASE_REPOSITORY_URL}}!${releaseRepoUrl}!g' " - SED_LINE+=" -e 's!\${{REPOSITORY_USERNAME}}!${REPOSITORY_USERNAME}!g' " - SED_LINE+=" -e 's!\${{REPOSITORY_PASSWORD}}!${REPOSITORY_PASSWORD}!g' " - SED_LINE+=" -e 's!\${{fileRepoID}}!${fileRepoID}!g' " - SED_LINE+=" -e 's!\${{fileRepoUrl}}!${fileRepoUrl}!g' " - - SED_LINE+="$HOME_M2/settings.xml" - eval "${SED_LINE}" - + if [[ -n "${RELEASE_REPOSITORY_URL}" ]] ; then + releaseRepoID=${RELEASE_REPOSITORY_ID} + releaseRepoUrl=${RELEASE_REPOSITORY_URL} + fi } function configure_keystore() { @@ -251,12 +234,10 @@ function configure_keystore() { if [[ -n ${TRUSTSTORE_PASSWD} ]]; then keytool -storepasswd -storepass "${DEFAULT_TRUSTSTORE_PASSWORD}" -keystore "${POLICY_HOME}/etc/ssl/policy-truststore" -new "${TRUSTSTORE_PASSWD}" - keytool -list -keystore "${POLICY_HOME}/etc/ssl/policy-truststore" -storepass "${TRUSTSTORE_PASSWD}" fi if [[ -n ${KEYSTORE_PASSWD} ]]; then keytool -storepasswd -storepass "${DEFAULT_KEYSTORE_PASSWORD}" -keystore "${POLICY_HOME}/etc/ssl/policy-keystore" -new "${KEYSTORE_PASSWD}" - keytool -list -keystore "${POLICY_HOME}/etc/ssl/policy-keystore" -storepass "${KEYSTORE_PASSWD}" fi } @@ -473,13 +454,11 @@ function install_base() { echo "WARNING: Failed to rename $HOME_M2 directory; will use old directory" fi fi - if [[ ! -d $HOME_M2 ]]; then - echo "Moving m2 directory to $HOME_M2" - mv $POLICY_HOME/m2 $HOME_M2 - if [[ $? != 0 ]]; then - echo "ERROR: Error in moving m2 directory" - exit 1 - fi + + mkdir -p ${HOME_M2} + if [[ $? != 0 ]]; then + echo "ERROR: Cannot create ${HOME_M2} directory" + exit 1 fi # base.conf properties may have characters with special meaning to bash, |