storlets/build.xml
Takashi Kajinami 95cdd1663e Create storlets package
Previously, we had multiple packages, like storlet_middleware,
storlet_gateway and so on, in our storlets repository.
This patch integrates these packages into one package, to follow
general manner of python packaging.

Also, this patch replaces previous install system using ant by
new install system using python setup.py.

(top directory)
 + bin          <- executable files
 + etc          <- configration samples
 + src          <- non-python codes
 |  + c         <- c codes
 |  | + sbus    <- Previously Engine/SBus/SBusTransportLayer
 |  + java      <- java codes
 |    + SBus    <- Previously Engine/SBus/SBusJavaFacade
 |    + SCommon <- Previously Engine/SBus/SCommon
 |    + SDaemon <- Previously Engine/SBus/SDaemon
 + storlets     <- python codes.
 |  + agent
 |  | + daemon         <- Previously Engine/agent/storlet_daemon
 |  | + daemon_factory <- Previously Engine/agent/storlet_daemon_factory
 |  + gateway          <- Previously Engine/swift/storlet_gateway
 |  + sbus             <- Previously Engine/SBus/SBusPythonFacade
 |  + swift_middleware <- Previously Engine/swift/storlet_middleware
 |  + tools            <- Previously tools
 + tests        <- test codes
 + scripts      <- Previously Engine/SMScripts
 + install_libs.sh     <- Script used to build/install c/java codes
 + setup.cfg
 + setup.py

NOTE1:
Currently we have an independent installation tool for c/java, as the
other existing OpenStack projects (ex. Monasca) do. To install c/java
modules, run './install_libs.sh' at the top directory. It installs
required files under /usr/local/lib/storlets, so you may need root
privilege.

NOTE2:
We install agent resources also on host, but this is currently kept
to be used for our future plan to let containers use agent resources
by mounting it from host node.

NOTE3:
This patch also removes outdated ansible playbooks.

Co-Authored-By: Eran Rom <eran@itsonlyme.name>
Change-Id: Icdcafdf6e6d06917d715ad9a8cba45305613a6fb
2016-12-01 10:28:43 +09:00

78 lines
2.5 KiB
XML

<!--
Copyright org.apache.openstack
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
Limitations under the License.
-->
<project>
<!-- Storlets Engine build /-->
<target name="build_engine">
<ant dir="src/java" target="build" />
</target>
<target name="clean_engine">
<ant dir="src/java" target="clean" />
</target>
<!-- Storlets Engine install /-->
<target name="install_engine">
<ant dir="src/java" target="install" />
</target>
<target name="uninstall_engine">
<ant dir="src/java" target="uninstall" />
</target>
<!-- Storlets Samples build -->
<target name="build_storlets">
<ant dir="StorletSamples/java" target="build" />
</target>
<target name="clean_storlets">
<ant dir="StorletSamples/java" target="clean" />
</target>
<!-- Overall build -->
<target name="build" depends="build_engine, build_storlets" />
<target name="clean" depends="clean_engine, clean_storlets" />
<!-- Overall install -->
<target name="install" depends="install_engine" />
<target name="uninstall" depends="uninstall_engine" />
<!-- Deploy -->
<!-- To execute the below tasks you must have:
(1) ansible installed
(2) hosts file configured
-->
<target name="deploy_host_engine" depends="build_engine">
<exec executable="ansible-playbook" dir="install/storlets" failonerror="true">
<arg value="-s"/>
<arg value="-i"/>
<arg value="storlets_dynamic_inventory.py"/>
<arg value="host_side_storlet_engine.yml"/>
</exec>
</target>
<target name="deploy_container_engine" depends="build_engine">
<exec executable="ansible-playbook" dir="install/storlets" failonerror="true">
<arg value="-s"/>
<arg value="-i"/>
<arg value="storlets_dynamic_inventory.py"/>
<arg value="container_storlet_engine.yml"/>
</exec>
</target>
<target name="deploy" depends="deploy_host_engine, deploy_container_engine"/>
</project>