cluster_yml = "cluster.yml"
apt_prefs_dir = "/etc/apt/apt.conf.d"
apt_prefs = "95silent-approval"
+helm_timeout = "1800"
+helm_master_password = "vagrant"
vm_memory = 1 * 1024
vm_memory_os = 4 * 1024
-vm_memory_onap = 20 * 1024
+vm_memory_onap = 64 * 1024
vm_cpu = 1
-vm_cpus = 4
+vm_cpus = 8
vm_box = "generic/ubuntu1804"
+vm_box_op = "generic/ubuntu2004"
vm_disk = 32
vm_disk_onap = 64
+vm_storage_pool = "default"
operation = {
name: 'operator',
hostname: 'operator',
ip: '172.17.4.254',
+ box: vm_box_op,
cpus: vm_cpu,
memory: vm_memory,
- disk: vm_disk
+ disk: vm_disk,
+ pool: vm_storage_pool
}
devstack = {
name: 'devstack',
hostname: 'devstack',
ip: '172.17.4.200',
+ box: vm_box,
cpus: vm_cpu,
memory: vm_memory_os,
- disk: vm_disk
+ disk: vm_disk,
+ pool: vm_storage_pool
}
control = {
name: 'control',
hostname: 'control',
ip: '172.17.4.100',
+ box: vm_box,
cpus: vm_cpu,
memory: vm_memory,
- disk: vm_disk
+ disk: vm_disk,
+ pool: vm_storage_pool
}
worker = {
name: 'worker',
hostname: 'worker',
ip: '172.17.4.101',
+ box: vm_box,
cpus: vm_cpus,
memory: vm_memory_onap,
- disk: vm_disk_onap
+ disk: vm_disk_onap,
+ pool: vm_storage_pool
}
cluster = [] << control << worker
apt-get install make
SCRIPT
+$install_docker = <<-SCRIPT
+ apt-get update
+ echo "Setting up 'docker' repository"
+ apt-get install \
+ apt-transport-https \
+ ca-certificates \
+ curl \
+ gnupg-agent \
+ software-properties-common
+ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
+ add-apt-repository \
+ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
+ $(lsb_release -cs) \
+ stable"
+ apt-get update
+
+ echo "Installing 'docker'"
+ apt-get install docker-ce docker-ce-cli containerd.io
+SCRIPT
+
$resize_disk = <<-SCRIPT
- DEV=${1:-sda}
+ DEV=${1:-vda}
PART=${2:-3}
echo ", +" | sfdisk -N "$PART" "/dev/$DEV" --no-reread
partprobe
$rke_down = "rke remove --force || true" # best effort
$get_oom = <<-SCRIPT
- BRANCH="${1:-5.0.1-ONAP}"
+ BRANCH="${1:-7.0.0-ONAP}"
REPO="${2:-https://git.onap.org/oom}"
git clone -b "$BRANCH" "$REPO" --recurse-submodules
SCRIPT
kubectl config use-context onap
kubectl -n kube-system create serviceaccount tiller
kubectl create clusterrolebinding tiller --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
- helm init --service-account tiller
+ helm init --stable-repo-url https://charts.helm.sh/stable --service-account tiller
kubectl -n kube-system rollout status deploy/tiller-deploy
SCRIPT
helm serve &
sleep 3
helm repo add local http://127.0.0.1:8879
- make -C ${HOME}/oom/kubernetes all
- make -C ${HOME}/oom/kubernetes onap
+ make -e SKIP_LINT=TRUE -C ${HOME}/oom/kubernetes all
SCRIPT
$deploy_onap = <<-SCRIPT
- OVERRIDE="${1:-${HOME}/oom/kubernetes/onap/resources/environments/minimal-onap.yaml}"
+ OVERRIDE="${1:-${HOME}/oom/kubernetes/onap/resources/environments/core-onap.yaml}"
ENV="${2:-#{os_env}}"
export $(cat "$ENV" | xargs)
+ TIMEOUT="${3:-#{helm_timeout}}"
+ MASTER_PASSWORD="${4:-#{helm_master_password}}"
+
encrypt () {
KEY="${HOME}/oom/kubernetes/so/resources/config/mso/encryption.key"
echo -n "$1" \
export KUBECONFIG="${HOME}/.kube/config.onap"
- helm deploy minimal local/onap --namespace onap -f "$OVERRIDE" --verbose --timeout 900
+ helm deploy core local/onap --verbose \
+ --set global.masterPassword="$MASTER_PASSWORD" \
+ --namespace onap --timeout "$TIMEOUT" -f "$OVERRIDE"
SCRIPT
Vagrant.configure('2') do |config|
all.each do |machine|
config.vm.define machine[:name] do |config|
- config.vm.box = vm_box
+ config.vm.box = machine[:box]
config.vm.hostname = machine[:hostname]
config.vm.provider :virtualbox do |v|
v.memory = machine[:memory]
v.cpus = machine[:cpus]
v.machine_virtual_size = machine[:disk] # set at VM creation
+ v.storage_pool_name = machine[:pool]
end
config.vm.network :private_network, ip: machine[:ip]
if machine[:name] == 'worker'
config.vm.provision "customize_worker", type: :shell, path: "tools/imported/openstack-k8s-workernode.sh"
- config.vm.provision "fix_group_worker", type: :shell, inline: $add_to_docker_group, args: vagrant_user
+ config.vm.provision "fix_groups_worker", type: :shell, inline: $add_to_docker_group, args: vagrant_user
config.vm.provision "resize_disk", type: :shell, inline: $resize_disk
end
s.args = synced_folder_tools_config
end
+ config.vm.provision "install_docker", type: :shell, inline: $install_docker
+ config.vm.provision "fix_groups_operator", type: :shell, inline: $add_to_docker_group, args: vagrant_user
config.vm.provision "install_sshpass", type: :shell, inline: $install_sshpass
config.vm.provision "generate_key", type: :shell, privileged: false, inline: $generate_key, args: operator_key