4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
16 # 01 May 2017 -- Michael Marchetti -- adapted from template
19 HERE=$(realpath $(dirname $0))
20 OSM_JENKINS=$(dirname $HERE)
21 . $OSM_JENKINS/common/all_funcs
22 . $OSM_JENKINS/common/install_common
24 INFO "Installing packages"
26 apt-get install -y lxd
28 INFO "Configuring LXD"
29 # ZFS doesn't work inside a nested container. ZFS should be configured in the host LXD.
32 systemctl stop lxd-bridge
33 systemctl --system daemon-reload
34 cat <<EOF > /etc/default/lxd-bridge
40 LXD_IPV4_ADDR="10.44.126.1"
41 LXD_IPV4_NETMASK="255.255.255.0"
42 LXD_IPV4_NETWORK="10.44.126.1/24"
43 LXD_IPV4_DHCP_RANGE="10.44.126.2,10.44.126.254"
44 LXD_IPV4_DHCP_MAX="252"
50 LXD_IPV6_PROXY="false"
53 systemctl enable lxd-bridge
54 systemctl start lxd-bridge
56 apt-get install -y python-pip python python-pycurl charm-tools python-pytest python-openstackclient
58 apt-get install -y python-osmclient
60 export OSM_USE_LOCAL_DEVOPS=true
61 echo "devops/installers/full_install_osm.sh --test --soui $*"
62 devops/installers/full_install_osm.sh --test --soui $*
63 #echo "devops/installers/full_install_osm.sh --test $*"
64 #devops/installers/full_install_osm.sh --test $*
67 # workaround. for upload packages, lxdbr0 needs to be promiscuous
68 # as the upload calls back to the UI server so the lxdbr0 needs
69 # to operate as a bridge
70 ifconfig lxdbr0 promisc
73 # success. find all the resulting containers
74 . devops/installers/export_ips
76 TO_ADD="export OSM_HOSTNAME=$SO_CONTAINER_IP"
77 grep -q OSM_HOSTNAME ~/.bashrc && sed -i "s/.*OSM_HOSTNAME.*/$TO_ADD/" ~/.bashrc || echo -e "$TO_ADD\n$(cat ~/.bashrc)" > ~/.bashrc
78 TO_ADD="export OSM_RO_HOSTNAME=$RO_CONTAINER_IP"
79 grep -q OSM_RO_HOSTNAME ~/.bashrc && sed -i "s/.*OSM_RO_HOSTNAME.*/$TO_ADD/" ~/.bashrc || echo -e "$TO_ADD\n$(cat ~/.bashrc)" > ~/.bashrc