Add remote clients support for Windows and Mac
This update provides the support for remote clients for Windows 7, Windows 10 and MAC OS devices. Story: 2002822 Task: 22739 Change-Id: Idb75a08981f0d01e4f444de2517e5d9ba67fcfd2 Signed-off-by: Jack Ding <jack.ding@windriver.com>
This commit is contained in:
parent
f4c3f7f41f
commit
97f77b746a
|
@ -1,6 +1,6 @@
|
||||||
Summary: Remote-Clients
|
Summary: Remote-Clients
|
||||||
Name: remote-clients
|
Name: remote-clients
|
||||||
Version: 2.0.3
|
Version: 2.0.4
|
||||||
Release: %{tis_patch_ver}%{?_tis_dist}
|
Release: %{tis_patch_ver}%{?_tis_dist}
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
Group: devel
|
Group: devel
|
||||||
|
|
|
@ -8,15 +8,16 @@ Titanium Cloud Remote CLI Clients
|
||||||
----------------------------------
|
----------------------------------
|
||||||
|
|
||||||
To enable access to the Titanium Cloud CLI remotely, clients and
|
To enable access to the Titanium Cloud CLI remotely, clients and
|
||||||
installer script have been packaged for install on a remote Linux distribution.
|
installer script have been packaged for install on a remote Linux distribution,
|
||||||
|
MAC OS X, Windows 7 and Windows 10.
|
||||||
This tarball includes several clients which can be used to issue CLI commands
|
This tarball includes several clients which can be used to issue CLI commands
|
||||||
to an existing Titanium Cloud. Openstack provides clients for Python 2.7.
|
to an existing Titanium Cloud. Openstack provides clients for Python 2.7.
|
||||||
Please ensure Python 2.7 is installed on your system and is the default
|
Please ensure Python 2.7 is installed on your system and is the default
|
||||||
Python version before running the provided remote client install script.
|
Python version before running the provided remote client install script.
|
||||||
|
|
||||||
|
|
||||||
Installing the Remote CLI Clients (system install)
|
Installing the Remote CLI Clients (system install) on a Linux machine
|
||||||
--------------------------------------------------
|
---------------------------------------------------------------------
|
||||||
|
|
||||||
To install the clients to the system packages on a Linux machine follow these
|
To install the clients to the system packages on a Linux machine follow these
|
||||||
steps:
|
steps:
|
||||||
|
@ -32,6 +33,70 @@ NOTE: please open a new terminal after installing for the installed bash
|
||||||
completion to take effect
|
completion to take effect
|
||||||
|
|
||||||
|
|
||||||
|
Installing the Remote CLI Clients (system install) on Windows 7 machine
|
||||||
|
-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
To install the clients to the system packages on a Windows 7 machine follow
|
||||||
|
these steps:
|
||||||
|
|
||||||
|
1. Install Cygwin as described in https://cygwin.com/install.html
|
||||||
|
|
||||||
|
2. Open a Cygwin Terminal
|
||||||
|
|
||||||
|
3. Save a copy of the setup*.exe under /usr/local/bin
|
||||||
|
|
||||||
|
4. Untar the provided tarball:
|
||||||
|
tar xfv wrs-remote-clients-xxxVERSIONxxx.tgz
|
||||||
|
cd wrs-remote-clients-xxxVERSIONxxx
|
||||||
|
|
||||||
|
5. Execute the provided installer script:
|
||||||
|
./install_clients.sh
|
||||||
|
|
||||||
|
NOTE: please open a new terminal after installing for the installed bash
|
||||||
|
completion to take effect
|
||||||
|
|
||||||
|
|
||||||
|
Installing the Remote CLI Clients (system install) on Windows 10 machine
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
To install the clients to the system packages on a Windows 10 machine follow
|
||||||
|
these steps:
|
||||||
|
|
||||||
|
1. Enable Windows Subsystem for Linux as documented by Microsoft and install
|
||||||
|
the Ubuntu Linux distribution from Microsoft Store
|
||||||
|
|
||||||
|
2. Open Ubuntu Application
|
||||||
|
|
||||||
|
3. Untar the provided tarball:
|
||||||
|
tar xfv wrs-remote-clients-xxxVERSIONxxx.tgz
|
||||||
|
cd wrs-remote-clients-xxxVERSIONxxx
|
||||||
|
|
||||||
|
4. Execute the provided installer script:
|
||||||
|
sudo ./install_clients.sh
|
||||||
|
|
||||||
|
NOTE: please open a new terminal after installing for the installed bash
|
||||||
|
completion to take effect
|
||||||
|
|
||||||
|
|
||||||
|
Installing the Remote CLI Clients (system install) on MAC OS machine
|
||||||
|
--------------------------------------------------------------------
|
||||||
|
|
||||||
|
To install the clients to the system packages on a MAC OS machine follow
|
||||||
|
these steps:
|
||||||
|
|
||||||
|
1. Open a Terminal
|
||||||
|
|
||||||
|
2. Untar the provided tarball:
|
||||||
|
tar xfv wrs-remote-clients-xxxVERSIONxxx.tgz
|
||||||
|
cd wrs-remote-clients-xxxVERSIONxxx
|
||||||
|
|
||||||
|
3. Execute the provided installer script:
|
||||||
|
sudo ./install_clients.sh
|
||||||
|
|
||||||
|
NOTE: please open a new terminal after installing for the installed bash
|
||||||
|
completion to take effect
|
||||||
|
|
||||||
|
|
||||||
Installing the Remote CLI Clients (virtualenv)
|
Installing the Remote CLI Clients (virtualenv)
|
||||||
----------------------------------------------
|
----------------------------------------------
|
||||||
|
|
||||||
|
@ -77,7 +142,7 @@ NOTE: The open-source OpenStack CLI Clients can NOT be installed at the same
|
||||||
Clients can be used to manage an open-source OpenStack cloud by sourcing
|
Clients can be used to manage an open-source OpenStack cloud by sourcing
|
||||||
the appropriate openrc file for that cloud.
|
the appropriate openrc file for that cloud.
|
||||||
|
|
||||||
NOTE: The remote cli installer uses pip to install depdencies. The default pip
|
NOTE: The remote cli installer uses pip to install dependencies. The default pip
|
||||||
package that comes with Ubuntu 16.04 has issues. Please upgrade pip to
|
package that comes with Ubuntu 16.04 has issues. Please upgrade pip to
|
||||||
the 'latest' version before running the remote client installer if you
|
the 'latest' version before running the remote client installer if you
|
||||||
are installing remote clients on a Ubuntu 16.04 system.
|
are installing remote clients on a Ubuntu 16.04 system.
|
||||||
|
|
|
@ -7,6 +7,8 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
|
skip_req=0
|
||||||
|
|
||||||
while getopts ":hs" opt; do
|
while getopts ":hs" opt; do
|
||||||
case $opt in
|
case $opt in
|
||||||
h)
|
h)
|
||||||
|
@ -39,13 +41,23 @@ while getopts ":hs" opt; do
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ -z "${VIRTUAL_ENV}" ]; then
|
if [ -z "${VIRTUAL_ENV}" ]; then
|
||||||
if [ $EUID != 0 ]; then
|
# Determine what type of terminal it is running in
|
||||||
|
uname_kernel_name="$(uname -s)"
|
||||||
|
case "${uname_kernel_name}" in
|
||||||
|
Linux*) machine=Linux;;
|
||||||
|
Darwin*) machine=Mac;;
|
||||||
|
CYGWIN*) machine=Cygwin;;
|
||||||
|
*) machine="UNKNOWN:${uname_kernel_name}"
|
||||||
|
esac
|
||||||
|
echo "Running on ${machine}"
|
||||||
|
|
||||||
|
if [[ $EUID != 0 && ${machine} != Cygwin ]]; then
|
||||||
echo "Root access is required. Please run with sudo or as root."
|
echo "Root access is required. Please run with sudo or as root."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# install tools for the script, like pip
|
# install tools for the script, like pip
|
||||||
if [[ ! -v skip_req ]]; then
|
if [[ skip_req -eq 0 ]]; then
|
||||||
which apt-get > /dev/null
|
which apt-get > /dev/null
|
||||||
aptget_missing=$?
|
aptget_missing=$?
|
||||||
which yum > /dev/null
|
which yum > /dev/null
|
||||||
|
@ -57,8 +69,24 @@ if [ -z "${VIRTUAL_ENV}" ]; then
|
||||||
elif [[ "$yum_missing" == "0" ]]; then
|
elif [[ "$yum_missing" == "0" ]]; then
|
||||||
yum install python-devel python-setuptools gcc git libxml2-devel libxslt-devel openssl-devel libffi-devel || exit 1
|
yum install python-devel python-setuptools gcc git libxml2-devel libxslt-devel openssl-devel libffi-devel || exit 1
|
||||||
easy_install pip || exit 1
|
easy_install pip || exit 1
|
||||||
|
elif [[ "${machine}" == Cygwin ]]; then
|
||||||
|
setup-x86_64.exe -q -P bash_completion -P gcc-core -P git -P libffi-devel -P libxml2 -P libxslt -P openssl-devel || exit 1
|
||||||
|
elif [[ "${machine}" == Mac ]]; then
|
||||||
|
# If brew does not exist, install homebrew
|
||||||
|
which brew > /dev/null
|
||||||
|
if [[ $? != "0" ]]; then
|
||||||
|
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" || exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Install python 2.7
|
||||||
|
# It comes with setuptools, pip, openssl
|
||||||
|
su "$SUDO_USER" -c 'brew install python@2' || exit 1
|
||||||
|
export PATH="/usr/local/opt/python2/bin:$PATH"
|
||||||
|
|
||||||
|
# Install gcc@4.9
|
||||||
|
su "$SUDO_USER" -c 'brew install gcc@4.9' || exit 1
|
||||||
else
|
else
|
||||||
echo "No supported package managers detected (apt-get, yum)"
|
echo "No supported package managers detected (apt-get, yum, brew)"
|
||||||
echo "Please ensure the following are installed on your system before continuing:"
|
echo "Please ensure the following are installed on your system before continuing:"
|
||||||
echo "python-dev python-setuptools gcc git python-pip"
|
echo "python-dev python-setuptools gcc git python-pip"
|
||||||
read -p "Continue with installation? y/n: " PACKMAN_CONTINUE_INPUT
|
read -p "Continue with installation? y/n: " PACKMAN_CONTINUE_INPUT
|
||||||
|
|
|
@ -7,8 +7,18 @@
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
|
# Determine what type of terminal it is running in
|
||||||
|
uname_kernel_name="$(uname -s)"
|
||||||
|
case "${uname_kernel_name}" in
|
||||||
|
Linux*) machine=Linux;;
|
||||||
|
Darwin*) machine=Mac;;
|
||||||
|
CYGWIN*) machine=Cygwin;;
|
||||||
|
*) machine="UNKNOWN:${uname_kernel_name}"
|
||||||
|
esac
|
||||||
|
echo "Running on ${machine}"
|
||||||
|
|
||||||
if [ -z "${VIRTUAL_ENV}" ]; then
|
if [ -z "${VIRTUAL_ENV}" ]; then
|
||||||
if [ $EUID != 0 ]; then
|
if [[ $EUID != 0 && ${machine} != Cygwin ]]; then
|
||||||
echo "Root access is required. Please run with sudo or as root."
|
echo "Root access is required. Please run with sudo or as root."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -19,4 +29,8 @@ fi
|
||||||
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||||
exec 3>&1 1>> $SCRIPTDIR/client_uninstallation.log 2>&1
|
exec 3>&1 1>> $SCRIPTDIR/client_uninstallation.log 2>&1
|
||||||
|
|
||||||
pip freeze | grep -wF -f installed_clients.txt | xargs --no-run-if-empty pip uninstall -y
|
if [ ${machine} == Mac ]; then
|
||||||
|
pip freeze | grep -wF -f installed_clients.txt | xargs pip uninstall -y
|
||||||
|
else
|
||||||
|
pip freeze | grep -wF -f installed_clients.txt | xargs --no-run-if-empty pip uninstall -y
|
||||||
|
fi
|
||||||
|
|
|
@ -163,7 +163,7 @@ PyYAML===3.12
|
||||||
beautifulsoup4===4.6.0
|
beautifulsoup4===4.6.0
|
||||||
os-net-config===7.3.2
|
os-net-config===7.3.2
|
||||||
ovs===2.7.0
|
ovs===2.7.0
|
||||||
cryptography===2.0.2
|
cryptography===1.9
|
||||||
backports.ssl-match-hostname===3.5.0.1
|
backports.ssl-match-hostname===3.5.0.1
|
||||||
pylxd===2.2.4
|
pylxd===2.2.4
|
||||||
anyjson===0.3.3
|
anyjson===0.3.3
|
||||||
|
|
Loading…
Reference in New Issue