d08a821831a22a400684512f4d33997f786db4a6
[genesis.git] / compass / deploy / deploy_host.sh
1 function deploy_host(){
2     cd $WORK_DIR/installer/compass-core
3     source $WORK_DIR/venv/bin/activate
4     if pip --help | grep -q trusted; then
5         pip install -i http://pypi.douban.com/simple -e . --trusted-host pypi.douban.com
6     else
7         pip install -i http://pypi.douban.com/simple -e .
8     fi
9
10     sudo mkdir -p /var/log/compass
11     sudo chown -R 777 /var/log/compass
12
13     sudo mkdir -p /etc/compass
14     sudo cp -rf conf/setting /etc/compass/.
15
16     cp bin/switch_virtualenv.py.template bin/switch_virtualenv.py
17     sed -i "s|\$PythonHome|$VIRTUAL_ENV|g" bin/switch_virtualenv.py
18     ssh $ssh_args root@${COMPASS_SERVER} mkdir -p /opt/compass/bin/ansible_callbacks
19     scp $ssh_args -r ${COMPASS_DIR}/deploy/status_callback.py root@${COMPASS_SERVER}:/opt/compass/bin/ansible_callbacks/status_callback.py
20     
21     (sleep 15;reboot_hosts ) &
22     bin/client.py --logfile= --loglevel=debug --logdir= --compass_server="${COMPASS_SERVER_URL}" \
23     --compass_user_email="${COMPASS_USER_EMAIL}" --compass_user_password="${COMPASS_USER_PASSWORD}" \
24     --cluster_name="${CLUSTER_NAME}" --language="${LANGUAGE}" --timezone="${TIMEZONE}" \
25     --hostnames="${HOSTNAMES}" --partitions="${PARTITIONS}" --subnets="${SUBNETS}" \
26     --adapter_os_pattern="${ADAPTER_OS_PATTERN}" --adapter_name="${ADAPTER_NAME}" \
27     --adapter_target_system_pattern="${ADAPTER_TARGET_SYSTEM_PATTERN}" \
28     --adapter_flavor_pattern="${ADAPTER_FLAVOR_PATTERN}" \
29     --http_proxy="${PROXY}" --https_proxy="${PROXY}" --no_proxy="${IGNORE_PROXY}" \
30     --ntp_server="${NTP_SERVER}" --dns_servers="${NAMESERVERS}" --domain="${DOMAIN}" \
31     --search_path="${SEARCH_PATH}" --default_gateway="${GATEWAY}" \
32     --server_credential="${SERVER_CREDENTIAL}" --local_repo_url="${LOCAL_REPO_URL}" \
33     --os_config_json_file="${OS_CONFIG_FILENAME}" --service_credentials="${SERVICE_CREDENTIALS}" \
34     --console_credentials="${CONSOLE_CREDENTIALS}" --host_networks="${HOST_NETWORKS}" \
35     --network_mapping="${NETWORK_MAPPING}" --package_config_json_file="${PACKAGE_CONFIG_FILENAME}" \
36     --host_roles="${HOST_ROLES}" --default_roles="${DEFAULT_ROLES}" --switch_ips="${SWITCH_IPS}" \
37     --machines=${machines//\'} --switch_credential="${SWITCH_CREDENTIAL}" \
38     --deployment_timeout="${DEPLOYMENT_TIMEOUT}" --${POLL_SWITCHES_FLAG} --dashboard_url="${DASHBOARD_URL}" \
39     --cluster_vip="${VIP}"
40 }