Wednesday, August 01, 2012

Install Talend Open Studio in Ubuntu Desktop from command line locally or remotely using a POB recipe

What happens when you need to recreate your development environment after a crash? At that point you learn The palest ink is better than the best memory.

And of course Plain Old Bash can help you not only with automating your installations locally but even remotely in the case your development machines are offered as a Service. DevOps movement is about automation and the Developers machines should be consider part of the Infrastructure. You can leverage to tools like Remoto-IT to easily build developer machines and achieve an important DevOps goal: Infrastructure As A Service ( IaaS )

This POB recipe works using CIFS shares thanks to some recipes I have posted before. You can easily make it work for NFS shares or to download Talend directly from the Web:
common/talend-gui-install.sh //windows/unc/path/to/TalendOpenStudio /mnt/TalendOpenStudio WindowsDomain `logname` `logname` TOS-All-r63143-V4.2.2.zip TOS-All-r63143-V4.2.2
Which uses:
#!/bin/bash -e
# talend-gui-install.sh

USAGE="Usage: `basename $0` <cifsDirectory> <localDirectory> <windowsDomain> <linuxUser> <linuxGroup> <distributionFileName> <distributionVersion>"

CREDENTIALS_PATH="/root/projects/cifs/cifs_smbmount.txt"

cifsDirectory=$1
localDirectory=$2
windowsDomain=$3
linuxUser=$4
linuxGroup=$5
distributionFileName=$6
distributionVersion=$7


if [ $# -ne "7" ] 
then
 echo $USAGE
  exit 1 
fi

mkdir -p "$localDirectory"
common/umount-path.sh "$localDirectory"
common/mount-cifs.sh "$cifsDirectory" "$localDirectory" $CREDENTIALS_PATH $windowsDomain $linuxUser $linuxGroup
echo "Copying distribution file. Might take a while depending on your connection ..."
cp "$localDirectory/$distributionFileName" /opt/
cd /opt/
src=$distributionVersion
dst=$distributionVersion-`date "+%Y%m%d"`
if [ -d "$src" ]; then
  echo "Backing up previous Talend installation ..."
  rm -fr $dst
  mv $src $dst
fi
unzip $distributionFileName
cd
chown -R $linuxUser:$linuxUser /opt/$distributionVersion
cp /opt/TOS/plugins/*/icons/appli_48x48.xpm /usr/share/pixmaps/talend_48x48.xpm
common/gnome-application-launcher.sh Talend /opt/TOS/TalendOpenStudio-linux-gtk-x86_64 talend_48x48.xpm
Note that we are using the gnome-application-launcher.sh recipe to create a Desktop launcher for Talend. Note we pass just talend_48x48.xpm as we previously copied to /usr/share/pixmaps/.

No comments:

Followers