summaryrefslogtreecommitdiffstats
path: root/bootstrap/vagrant-onap/lib/policy
blob: 65a65a186568dbaa6dfa75b3b529d0760669961a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/bin/bash

source /var/onap/functions

policy_src_folder=$git_src_folder/policy
policy_repos=("policy/api" "policy/common" "policy/docker" \
"policy/drools-applications" "policy/drools-pdp" "policy/engine" \
"policy/gui" "policy/pap" "policy/pdp")

# clone_all_policy_repos() - Function that clones Policy source repo.
function clone_all_policy_repos {
    for repo in ${policy_repos[@]}; do
        clone_repo $repo $policy_src_folder${repo#*policy}
    done
}

# compile_all_policy_repos() - Function that compiles Policy source repo.
function compile_all_policy_repos {
    for repo in ${policy_repos[@]}; do
        compile_src $policy_src_folder${repo#*policy}
    done
}

# _build_policy_images() - Function that build Policy docker images from source code
function _build_policy_images {
    compile_src $policy_src_folder/docker
    pushd $policy_src_folder/docker
    install_maven
    mvn prepare-package
    cp -r target/policy-pe/* policy-pe/
    cp -r target/policy-drools/* policy-drools
    install_docker
    bash docker_verify.sh
    popd
}

# get_policy_images() - Function that retrieves Policy docker images
function get_policy_images {
    if [[ "$build_image" == "True" ]]; then
        _build_policy_images
    else
        pull_onap_image policy/policy-db onap/policy/policy-db:latest
        pull_onap_image policy/policy-pe onap/policy/policy-pe:latest
        pull_onap_image policy/policy-drools onap/policy/policy-drools:latest
        pull_onap_image policy/policy-nexus onap/policy/policy-nexus:latest
    fi
}

# install_policy() - Function that clones and installs the Policy services from source code
function install_policy {
    pushd $policy_src_folder/docker
    chmod +x config/drools/drools-tweaks.sh
    echo $IP_ADDRESS > config/pe/ip_addr.txt
    install_docker_compose
    /opt/docker/docker-compose up -d
    popd
}

# init_policy() - Function that initialize Policy services
function init_policy {
    if [[ "$clone_repo" == "True" ]]; then
        clone_all_policy_repos
        if [[ "$compile_repo" == "True" ]]; then
            compile_all_policy_repos
        fi
    fi

    if [[ "$skip_get_images" == "False" ]]; then
        get_policy_images
        if [[ "$skip_install" == "False" ]]; then
            install_policy
        fi
    fi
}