#!/bin/sh
#fabric broker path
FABRIC_HOME=/opt/qa/fabric/4.0
INSTALL_DIR=$FABRIC_HOME/datasynapse
GRIDLIB_DIR=$INSTALL_DIR/webapps/livecluster/deploy/resources/gridlib/
#fabric engine path
Engine_HOME=/opt/qa/engine
ENGINE_DIR=$Engine_HOME/stress0
TASK=$1
#fabric build info
BUILD_VERSION=4.1
SUB_VERSION=$2
FULL_VERSION=$BUILD_VERSION.$SUB_VERSION
BUILD_DIR=/u2/Releases/internal/Fabric_Builds/
TARGET_DIR=$BUILD_DIR$BUILD_VERSION/$FULL_VERSION
DISTRI_DIR=/u2/testing/currentversion/fabric/trunk/distributions/
#fabric WS env
FABRIC_TRUNK=/u2/testing/currentversion/fabric/trunk
FABRICSDK_HOME=$FABRIC_TRUNK/FabricServerSDK
TESTHARNESS2_DIR=$FABRIC_TRUNK/compiled_code/testharness-2
installBroker(){
if [ -d $INSTALL_DIR ];then
echo "... $INSTALL_DIR is existing!"
cd $INSTALL_DIR
echo "... server is stopping ..."
./server.sh stop > ../installBroker.log
echo "... server stopped!"
cd ..
rm -rf datasynapse/
echo "... $INSTALL_DIR removed!"
fi
if [ ! -d $FABRIC_HOME ];then
echo "... $FABRIC_HOME is not existing!"
mkdir $FABRIC_HOME
echo "... $FABRIC_HOME created!"
cd $FABRIC_HOME
fi
gunzip -c $TARGET_DIR/TIB_Silver_Fabric.$BUILD_VERSION.0.tar.gz > $FABRIC_HOME/TIB_Silver_Fabric.$BUILD_VERSION.0.tar
tar -xvf $FABRIC_HOME/TIB_Silver_Fabric.$BUILD_VERSION.0.tar >> installBroker.log
echo "... TIB_Silver_Fabric.$BUILD_VERSION.0.tar.gz unzipped!"
rm -rf $FABRIC_HOME/TIB_Silver_Fabric.$BUILD_VERSION.0.tar
unzip -o $TARGET_DIR/TIB_Silver_Fabric.$BUILD_VERSION.0_3rd-Party-Libs.zip -d $INSTALL_DIR >> ../installBroker.log
echo "... TIB_Silver_Fabric.$BUILD_VERSION.0_3rd-Party-Libs.zip unzipped!"
cd $INSTALL_DIR
echo "... server is starting ..."
./server.sh start
}
installEngine(){
if [ -z $BROKER_HOST ]
then
echo "engine host not set yet"
exit 1
fi
if [ -z $ENGINE_TYPE ]
then
echo "engine type not set yet"
echo "(SolarisX86|Linux64|Linux|Solaris|Aix)"
exit 1
fi
ENGINE_URL=http://$BROKER_HOST:8080/livecluster/public_html/register/install/unixengine/DSEngine$ENGINE_TYPE.tar.gz
if [ -d $ENGINE_DIR/DSEngine ];then
echo "... $ENGINE_DIR/DSEngine is existing!"
cd $ENGINE_DIR/DSEngine
./engine.sh stop > ../installEngine.log
cd ..
rm -rf DSEng*
echo "$ENGINE_DIR/DSEngine removed!"
else
mkdir $ENGINE_DIR
echo "$ENGINE_DIR created!"
cd $ENGINE_DIR
fi
wget $ENGINE_URL -o installEngine.log
echo "... DSEngine$ENGINE_TYPE.tar.gz downloaded!"
gzip -d DSEngine$ENGINE_TYPE.tar.gz
tar -xvf DSEngine$ENGINE_TYPE.tar >> installEngine.log
echo "... DSEngine$ENGINE_TYPE.tar.gz unzipped!"
cd DSEngine
./configure.sh -s $BROKER_HOST:8000 >> ../installEngine.log
echo "... new engine configured!"
echo "... new engine starting!"
./engine.sh start
}
deployContainers(){
for i in tomcat jboss weblogic websphere iis
do
if [ $CONTAINER = all ]; then
source=$TARGET_DIR/$i*.zip
source=$source" "
cp $source $GRIDLIB_DIR
elif [ $CONTAINER = $i ]; then
cp $TARGET_DIR/$i*.zip $GRIDLIB_DIR
else
continue
fi
done
}
deployDistributions(){
for i in tomcat jboss weblogic websphere iis
do
if [ $CONTAINER = all ]; then
source=$DISTRI_DIR/$i*.zip
source=$source" "
cp $source $GRIDLIB_DIR
elif [ $CONTAINER = $i ]; then
cp $DISTRI_DIR/$i*.zip $GRIDLIB_DIR
else
continue
fi
done
}
deployContainerDistribution(){
if [ -z $CONTAINER_VERSION ]; then
echo -e "container version not set yet\nSample: deployCD 0.5 jboss -eap4_3_0,4_2_1"
exit 1
fi
for v in `echo $CONTAINER_VERSION| sed 's/,/ /g'`
do
if [ $CONTAINER = websphere ]; then
PLATFORM=`echo ${v##*-}`
VERSION=`echo ${v%%-*}`
cp $DISTRI_DIR/ibm-j2sdk-$PLATFORM-*.zip $GRIDLIB_DIR
cp $TARGET_DIR/$CONTAINER$VERSION-container-gridlib.zip $GRIDLIB_DIR
cp $DISTRI_DIR/$CONTAINER$v-distribution-gridlib.zip $GRIDLIB_DIR
elif [ $CONTAINER = webspheredm ]; then
PLATFORM=`echo ${v##*-}`
VERSION=`echo ${v%%-*}`
cp $DISTRI_DIR/ibm-j2sdk-$PLATFORM-*.zip $GRIDLIB_DIR
cp $TARGET_DIR/$CONTAINER$VERSION-container-gridlib.zip $GRIDLIB_DIR
_CONTAINER=`echo ${CONTAINER%%dm*}`
cp $DISTRI_DIR/$_CONTAINER$v-distribution-gridlib.zip $GRIDLIB_DIR
else
cp $TARGET_DIR/$CONTAINER$v-container-gridlib.zip $GRIDLIB_DIR
cp $DISTRI_DIR$CONTAINER$v-distribution-gridlib.zip $GRIDLIB_DIR
fi
done
}
setupWsEnv(){
export CLASSPATH=$TESTHARNESS2_DIR/fabric/classes/fabrictestharness_client.jar:$TESTHARNESS2_DIR/fabric/classes/fabrictestharness_server.jar:$TESTHARNESS2_DIR/util/lib/httpunit.jar:$TESTHARNESS2_DIR/fabric/util/parameters:$TESTHARNESS2_DIR/util/lib/jaxrpc.jar:$TESTHARNESS2_DIR/util/lib/axis.jar:$TESTHARNESS2_DIR/util/lib/commons-logging-1.0.4.jar:$TESTHARNESS2_DIR/util/lib/commons-discovery-0.2.jar:$TESTHARNESS2_DIR/util/lib/wsdl4j-1.5.1.jar:$TESTHARNESS2_DIR/util/lib/commons-httpclient-3.0.jar:$TESTHARNESS2_DIR/util/lib/commons-codec-1.3.jar
echo $CLASSPATH
}
checkSubVersion(){
if [ -z $SUB_VERSION ]
then
echo "sub version number not set yet"
exit
fi
}
checkContainerName(){
if [ -z $CONTAINER ]
then
echo -e "container not set yet\ncontainer list:\ntomcat jboss weblogic websphere"
exit 1
fi
}
restartServer(){
cd "$INSTALL_DIR"
./server.sh stop >> ../installBroker.log
echo "... server stopped!"
./server.sh start >> ../installBroker.log
echo "... server started!"
cd "$FABRIC_HOME"
}
listGlidlib(){
echo -e "$TESTHARNESS2_DIR/fabric/server/glz/$FOLDER"
ls -C "$TESTHARNESS2_DIR/fabric/server/glz/$FOLDER"
}
listDistribution(){
echo -e "$DISTRI_DIR"
ls -C "$DISTRI_DIR"
}
listFSGridLibDir(){
echo -e "$GRIDLIB_DIR"
ls -C "$GRIDLIB_DIR"
}
copyGridlib(){
cp -f "$TESTHARNESS2_DIR/fabric/server/glz/$FOLDER/$GRIDLIB" "$GRIDLIB_DIR"
echo -e "copied \n$TESTHARNESS2_DIR/fabric/server/glz/$FOLDER/$GRIDLIB\n to"
find "$GRIDLIB_DIR" -name "$GRIDLIB"
}
usage(){
echo -e "usage:\n"
echo "setupBroker|setupB"
echo -e "Sample: setupB 0.6\n"
echo "setupEngine|setupE"
echo -e "Sample: setupE qalx03 SolarisX86\n"
echo "deployContainer|deployC"
echo -e "Sample: deployC tomcat\n"
echo "deployDistribution|deployD"
echo -e "Sample: deployD websphere\n"
echo "deployContainerDistribution|deployCD"
echo "Sample: deployCD 0.6 jboss 4_2_1,-eap4_3_0,-eap5_0_0"
echo " deployCD 0.6 websphere 7_0-linux,7_0-linux64"
echo -e " deployCD 0.6 weblogic 10_0,8_1_sp4\n"
echo "setupWS"
echo -e "Sample: . ./installFS.sh setupWS\n"
echo -e "restartBroker|restartB\n"
echo "listGridlibs|lsglz"
echo -e "Sample: lsglz no-deploy\n"
echo "copyGridlibs|cpgl"
echo -e "Sample: cpgl deploy jbosswebappgenericservicedomain-gridlib.zip\n"
echo -e "listDistribution|lsD\n"
echo -e "listFSGridlib|lsfsglz\n"
}
if [ -z $TASK ]
then
echo "Task not set yet"
exit
fi
case "$TASK" in
setupBroker | setupB)
SUB_VERSION=$2
checkSubVersion
installBroker $SUB_VERSION;;
setupEngine | setupE)
BROKER_HOST=$2
ENGINE_TYPE=$3
echo "host $BROKER_HOST enginetype $ENGINE_TYPE"
installEngine $BROKER_HOST $ENGINE_TYPE;;
deployContainer | deployC)
checkSubVersion
CONTAINER=$3
checkContainerName
deployContainers $CONTAINER;;
deployDistribution | deployD)
checkSubVersion
CONTAINER=$3
checkContainerName
deployDistributions $CONTAINER;;
deployContainerDistribution | deployCD)
checkSubVersion
CONTAINER=$3
checkContainerName
CONTAINER_VERSION=$4
deployContainerDistribution $CONTAINER $CONTAINER_VERSION;;
setupWS)
setupWsEnv;;
restartBroker | restartB)
restartServer;;
listGridlibs | lsglz)
FOLDER=$2
listGlidlib $FOLDER;;
copyGridlibs | cpgl)
FOLDER=$2
GRIDLIB=$3
copyGridlib $FOLDER $GRIDLIB;;
listDistribution | lsD)
listDistribution;;
listFSGridlib | lsfsglz)
listFSGridLibDir;;
*)
usage;;
esac
分享到:
相关推荐
黑群晖工具包通常包括了安装脚本、补丁、优化工具和其他实用程序,旨在增强原版DSM的功能,或者提供更自由的定制化选项。 安装黑群晖的步骤通常如下: 1. **准备工作**:首先,你需要确保你的DS3615+或DS3617设备...
MDT 2013 包含了一整套脚本和工具,使得操作系统部署流程自动化,减少了手动干预的需求。 2. MDT 2013 支持的操作系统: MDT 2013 支持Windows 7、Windows 8、Windows 8.1以及Windows Server 2008 R2、Windows ...
为了提高工作效率和实现自动化流程,二次开发成为了不可或缺的一环。本文将详细介绍如何通过Web页面来驱动ANSYS Workbench进行自动化运行,并输出计算报告。 首先,我们要理解这一技术的核心思想。Web页面开发人员...
为了提高工作效率和节省时间,用户有时会利用自动化工具,例如“3dsmax渲染自动关机脚本”。这个脚本的主要目的是在完成渲染任务后自动关闭计算机,避免不必要的能源消耗和无人看管的电脑。 3ds Max是Autodesk公司...
总的来说,利用3ds Max的批处理渲染和自定义脚本,我们可以实现高效、自动化的渲染流程,特别是在需要长时间渲染的情况下,自动关机功能可以有效地节约资源,提高工作效率。同时,这也展示了编程和脚本语言在日常3D...
总的来说,"3Dmax渲染自动关机脚本"是3ds Max用户的一个实用工具,它提高了工作效率,减少了资源浪费,同时也提醒我们注意工作流程的自动化和优化,以适应现代设计行业的高效率需求。通过深入理解和灵活运用这类脚本...
"导出max模型脚本文件"指的是将3ds Max中的模型数据转换成脚本文件,这样的过程通常是为了便于在不同的软件或系统间交换数据,或者是为了自定义模型的导出参数和自动化工作流程。 脚本文件,通常以扩展名如`.py`...
总之,"一键石膏线TrackScripts扫描脚本"是3ds Max用户不可或缺的辅助工具,它通过自动化石膏线建模过程,简化了传统方法的复杂性,使得3D建模更加便捷和高效。对于那些经常处理石膏线设计的用户来说,这款脚本无疑...
#### 六、准备自动化安装脚本 1. **创建元数据文件**: - 创建`/var/lib/tftpboot/meta-data`文件,用于存储自动化安装的实例ID。 ```bash root@server:~# vi /var/lib/tftpboot/meta-data ``` - 文件内容可以...
"SMcliDSSM_1070_V1_pkg.bat"可能是一个批处理文件,用于安装或启动DS Storage Manager Simulator。它通常包含一系列命令,简化了安装过程,使用户能够通过简单的点击来执行复杂的配置步骤。 "Start_Demo.bat"可能...
根据提供的文件信息,我们可以深入解析《南自DS3210系统工程...综上所述,《南自DS3210系统工程安装手册》详细介绍了DS3210系统的安装、配置和维护等方面的知识点,对于电力自动化领域的工程师来说是非常宝贵的资源。
- **自动化的任务**:例如批量修改物体参数、创建重复的场景元素、生成随机纹理等。 - **自定义工具**:用户可以创建自己的工具栏按钮,绑定特定的脚本来实现个性化功能。 - **插件开发**:复杂的功能可以通过...
通过使用脚本,用户可以自定义工作流程,实现自动化任务,或者创建独特的工具和插件。 脚本在3D Studio Max中的重要性不言而喻,它们是这个强大软件的灵魂所在。这些脚本通常由编程语言如MAXScript编写,它是一种...
1. **PowerShell**: PowerShell是微软开发的命令行外壳程序和脚本语言,特别适合进行系统管理任务的自动化。通过PowerShell,管理员可以使用命令行或脚本来执行AD管理任务,如创建用户账户、修改组策略、管理计算机...
在OpenWRT这样的嵌入式Linux系统中,DS18B20驱动程序和应用程序的集成对于实现远程温度监控或智能家居自动化具有重要意义。 首先,让我们深入了解DS18B20传感器。DS18B20能提供9位到12位的分辨率,测量范围从-55℃...
综上所述,尽管原始信息有限,但我们可以推断这可能涉及到使用ZIP压缩技术打包的项目,包含一个用于自动化执行的批处理脚本和一个JavaScript源代码文件,用于实现某种特定的功能或者服务。为了获取更具体的信息,...
3. **配置文件**:可能包括启动代码、链接脚本和配置选项,以便正确设置 MSP430F5529 的硬件资源。 4. **文档**:可能包含教程、说明或者注释,解释了如何编译、烧录和运行代码,以及如何理解程序的工作原理。 5. **...
在Linux环境下,如DSM,Shell脚本可以用来自动化一系列命令执行,使得系统更新更加便捷。用户在执行此脚本时,需要遵循特定的步骤,可能包括将脚本复制到NAS,赋予执行权限,然后按照指南进行操作。 总的来说,这个...
1. 快速部署:用户无需了解复杂的安装步骤,直接导入虚拟机文件,启动即可使用。 2. 系统一致性:由于是预配置的环境,可以确保所有必要的软件和服务都已安装并更新至最新版本。 3. 灵活性:在VMware环境中运行,...
同时,"安装说明.txt"文件提供了详细的步骤指导,包括系统需求、兼容性信息以及可能出现的问题及解决办法,确保用户能够顺利安装并启动DS数据服务器。 值得注意的是,DS数据服务器1.0提供免费注册使用,这意味着...