CLOUDSTACK-53: CloudBridge installation pieces present, deprecated?

CLOUDSTACK-51: Outdated docs and license data present in awsapi

Removing content that is not used by awsapi.
This commit is contained in:
Prachi Damle 2012-09-10 16:40:25 -07:00 committed by Alex Huang
parent 4a8ffe34e2
commit 335bb6f687
14 changed files with 5 additions and 927 deletions

View File

@ -1,33 +0,0 @@
#!/bin/bash
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
# install.sh -- deploys cloud-bridge and the corresponding DB
#set -x
set -e
#### deploying cloud-bridge
echo "Installing cloud-bridge..."
sh deploy-cloud-bridge.sh -d "$CATALINA_HOME"
echo "Deploying database..."
cd db && sh deploy-db-bridge.sh
#change port to 8090 in server.xml
#change ec2-service.properties file
exit 0

View File

@ -1,12 +0,0 @@
cloud (1.0.0) unstable; urgency=low
* Bumped version up to 1.0.0
-- Cloud <cloud@cloud.com> Thu, 31 Jan 2011 08:33:25 -0700
cloud (0.9.0) unstable; urgency=low
* Initial entry
-- Cloud <cloud@cloud.com> Thu, 13 Jan 2011 10:05:11 -0700

View File

@ -1,21 +0,0 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
/usr/share/cloud/bridge/*
/usr/share/cloud/setup/bridge/*
/usr/bin/*
/etc/init.d/*

View File

@ -1,40 +0,0 @@
#!/bin/sh -e
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
case "$1" in
configure)
if ! id cloud > /dev/null 2>&1 ; then
adduser --system --home /usr/share/cloud --no-create-home \
--group --disabled-password --shell /bin/sh cloud
fi
for i in /usr/share/cloud/bridge
do
chmod 0775 $i
chown -R cloud.cloud $i
done
if [ "$2" = "" ] ; then # no recently configured version, this is a first install
/usr/sbin/update-rc.d cloud-bridge defaults || true
fi
;;
esac
#DEBHELPER#

View File

@ -1,13 +0,0 @@
Source: cloud
Section: libs
Priority: extra
Maintainer: Cloud <cloud@cloud.com>
Build-Depends: debhelper (>= 7), openjdk-6-jdk, tomcat6
Package: cloud-bridge
Provides: cloud-bridge
Conflicts: cloud-bridge
Replaces: cloud-bridge
Architecture: any
Depends: openjdk-6-jre
Description: Cloud.com Bridge

View File

@ -1,119 +0,0 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
#
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
#
# Modified to make a template file for a multi-binary package with separated
# build-arch and build-indep targets by Bill Allombert 2001
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
# This has to be exported to make some magic below work.
export DH_OPTIONS
configure: configure-stamp
configure-stamp:
dh_testdir
(cd ../..; ./waf configure --prefix=/usr --libdir=/usr/lib --bindir=/usr/bin --javadir=/usr/share/java --sharedstatedir=/var/lib --localstatedir=/var --sysconfdir=/etc --mandir=/usr/share/man --libexecdir=/usr/bin)
(cd ../..; ./waf showconfig)
#Architecture
# build: build-arch build-indep
build: build-arch
build-arch: build-arch-stamp
build-arch-stamp: configure-stamp
# build-indep: build-indep-stamp
# build-indep-stamp: configure-stamp
#
# # Add here commands to compile the indep part of the package.
# #$(MAKE) doc
# touch $@
#
clean:
dh_testdir
dh_testroot
(cd ../..; ./waf distclean)
dh_clean
install: install-arch
# install: install-indep install-arch
# install-indep:
# dh_testdir
# dh_testroot
# dh_prep -i
# dh_installdirs -i
#
# # Add here commands to install the indep part of the package into
# # debian/<package>-doc.
# #INSTALLDOC#
#
# dh_install -i
install-arch:
dh_testdir
dh_testroot
dh_prep -s
dh_installdirs -s
(cd ../..; ant deploy-debian-install)
chmod 755 debian/tmp/etc/init.d/cloud-bridge
chmod 755 debian/tmp/usr/bin/cloud-setup-bridge
chmod 755 debian/tmp/usr/bin/cloud-bridge-register
chmod 755 debian/tmp/usr/bin/cloud-setup-bridge-db
dh_install -s
# Must not depend on anything. This is to be called by
# binary-arch/binary-indep
# in another 'make' thread.
binary-common:
dh_testdir
dh_testroot
# dh_installchangelogs
# dh_installdocs -A README.html
# dh_installexamples
# dh_installmenu
# dh_installdebconf
# dh_installlogrotate
# dh_installemacsen
# dh_installpam
# dh_installmime
# dh_python
# dh_installinit
# dh_installcron
# dh_installinfo
# dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
# dh_perl
dh_makeshlibs
dh_installdeb
# dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
# Build architecture independant packages using the common target.
# binary-indep: build-indep install-indep
# $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
# Build architecture dependant packages using the common target.
binary-arch: build-arch install-arch
$(MAKE) -f debian/rules DH_OPTIONS=-s binary-common
# binary: binary-arch binary-indep
binary: binary-arch
# .PHONY: build clean binary-indep binary-arch binary install install-indep install-arch configure
.PHONY: build clean binary-arch binary install install-arch configure

View File

@ -1,98 +0,0 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
%define __os_install_post %{nil}
%global debug_package %{nil}
%define _rel 1
Name: cloud-bridge
Summary: CloudStack CloudBridge
Version: %{_ver}
#http://fedoraproject.org/wiki/PackageNamingGuidelines#Pre-Release_packages
%if "%{?_prerelease}" != ""
Release: 0.%{_build_number}%{_prerelease}
%else
Release: %{_rel}
%endif
License: GPLv3+ with exceptions or CSL 1.1
Vendor: Citrix Systems, Inc. <sqa@cloud.com>
Packager: Citrix Systems, Inc. <cloud@cloud.com>
Source0: cloud-bridge-%{_ver}.tar.bz2
Group: System Environment/Libraries
Requires: java >= 1.6.0
Requires: tomcat6
Obsoletes: cloud-bridge < %{version}-%{release}
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
%description
This is the CloudStack CloudBridge
%prep
%setup -q -n %{name}-%{_ver}
%build
%define _localstatedir /var
%define _sharedstatedir /usr/share
./waf configure --prefix=%{_prefix} --libdir=%{_libdir} --bindir=%{_bindir} --javadir=%{_javadir} --sharedstatedir=%{_sharedstatedir} --localstatedir=%{_localstatedir} --sysconfdir=%{_sysconfdir} --mandir=%{_mandir} --docdir=%{_docdir}/%{name}-%{version} --fast --package-version=%{_ver}
%install
[ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT}
ant deploy-rpm-install -Dversion=%{version}
mv ../cloud-bridge-%{_ver}-1 ${RPM_BUILD_ROOT}
mkdir $RPM_BUILD_ROOT/usr/share/cloud/bridge/logs
mkdir $RPM_BUILD_ROOT/usr/share/cloud/bridge/work
mkdir $RPM_BUILD_ROOT/usr/share/cloud/bridge/temp
%clean
#[ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT}
%preun
/sbin/service cloud-bridge stop || true
if [ "$1" == "0" ] ; then
/sbin/chkconfig --del cloud-bridge > /dev/null 2>&1 || true
/sbin/service cloud-bridge stop > /dev/null 2>&1 || true
fi
%pre
id cloud > /dev/null 2>&1 || /usr/sbin/useradd -M -c "CloudStack CloudBridge unprivileged user" \
-r -s /bin/sh -d %{_sharedstatedir}/cloud cloud|| true
# user harcoded here
%post
if [ "$1" == "1" ] ; then
/sbin/chkconfig --add cloud-bridge > /dev/null 2>&1 || true
/sbin/chkconfig --level 345 cloud-bridge on > /dev/null 2>&1 || true
fi
%files
%defattr(0644,cloud,cloud,0755)
/usr/share/cloud/bridge/conf/*
/usr/share/cloud/bridge/lib/*
/usr/share/cloud/bridge/webapps/*
%dir %attr(0775,cloud,cloud) /usr/share/cloud/bridge/logs
%dir %attr(0775,cloud,cloud) /usr/share/cloud/bridge/work
%dir %attr(0775,cloud,cloud) /usr/share/cloud/bridge/temp
%attr(0644,root,root) /usr/share/cloud/setup/bridge/db/*
%attr(0755,root,root) /etc/init.d/cloud-bridge
%attr(0755,root,root) /usr/bin/cloud-bridge-register
%attr(0755,root,root) /usr/bin/cloud-setup-bridge
%attr(0755,root,root) /usr/bin/cloud-setup-bridge-db

View File

@ -1,123 +0,0 @@
<!--
~ Licensed to the Apache Software Foundation (ASF) under one
~ or more contributor license agreements. See the NOTICE file
~ distributed with this work for additional information
~ regarding copyright ownership. The ASF licenses this file
~ to you 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.
-->
<html>
<head>
<meta http-equiv="content-type" content="">
<title>Welcome to Apache Axis2 version 1.6.2</title>
</head>
<body lang="en">
<h1>Welcome to Apache Axis2 version 1.6.2</h1>
<h3>April 17, 2012</h3>
<pre>Axis2 1.6.2 is a maintenance release that upgrades Axiom to version 1.2.13 and
Neethi to version 3.0.2. it contains fixes for several issues discovered
over the last six months. The complete list can be found <a href="http://s.apache.org/7lT">here</a>.
About Axis2
Downloads are available at:
http://axis.apache.org/axis2/java/core/download.cgi
Apache Axis2 is a complete re-design and re-write of the widely used
Apache Axis engine and is a more efficient, more scalable, more modular
and more XML-oriented Web services framework. It is carefully designed to
support the easy addition of plug-in "modules" that extend its
functionality for features such as security and reliability.
Modules supporting WS-Security/Secure-Conversation (Apache Rampart),
WS-Trust (Apache Rahas), WS-Reliable Messaging (Apache Sandesha) and
WS-Eventing (Apache Savan) will be available soon after the Apache Axis2
@axisVersion@ release. Please see these projects' own sites for further information.
Known Issues and Limitations in 1.6.2 Release:
- Please see JIRA
We are striving for a simple and happy first time user experience as well as a
satisfying experienced user experience with this release. We welcome any
and all feedback at:
java-user@axis.apache.org (please include "[axis2]" in the subject)
java-dev@axis.apache.org (please include "[axis2]" in the subject)
http://issues.apache.org/jira/browse/AXIS2
Thank you for your interest in Apache Axis2!
The Axis2 Development Team
http://axis.apache.org/axis2/java/core/
------------------------------------------------------------------------------------
Features of Apache Axis2:
Programming Model
- Simple XML-centric client API with full WSDL and policy support
- Support for POJO and Spring services and clients
- Support for any message exchange pattern (MEP)
- Synchronous and asynchronous programming model
- Archived service deployment model supporting full service
encapsulation with versioning support
- Archived module deployment model supporting controlled
extensibility with versioning support
- Hot deployment
- WS-Policy driven code generation extensions
- Flexible service life cycle model
- Automatic support for POX (REST) style invocation of services
- Support for querying service's WSDL (with ?wsdl), schema (with
?xsd) and policies (with ?policy)
Supported Specifications
- SOAP 1.1 and 1.2
- Message Transmission Optimization Mechanism (MTOM)
- XML Optimized Packaging (XOP)
- SOAP with Attachments
- WSDL 1.1, including both SOAP and HTTP bindings , WSDL 2.0
- WS-Addressing submission and 1.0
- WS-Policy
- SAAJ 1.1
Transports
- HTTP
- SMTP
- JMS
- TCP
- udp
- xmpp
For more details refer to the <a href="http://axis.apache.org/axis2/java/transports/">Axis2 Transports</a> project.
Supported Data Bindings
- Axis Data Binding (ADB)
- XMLBeans
- JibX
- JAXB
Tools
- WSDL2Java: Generate Java stubs and skeletons from a WSDL document.
- Java2WSDL: Generate a WSDL document from a Java class.
- Eclipse Plugins
- IntelliJ Idea Plugins
- Maven2 Plugins
- Web application for administering Apache Axis2
</pre>
</body>
</html>

View File

@ -1,23 +0,0 @@
1.0.2.RC6
=========
* ec2-allocate-address and ec2-run-instances should now work with CloudStack advanced network mode.
* findNetwork improved and now used with ec2-allocate-address.
* Support for string based id's (UUIDs) for all objects. Prior to this, CB used Long's to store objectIds returned from CloudStack.
1.0.2.RC5
=========
* Fixed ec2-register/registerTemplate calls
1.0.2.RC4
=========
* Bug 14037 CloudBridge deployment would overwrite files in /usr/share/cloud/bridge/conf, is now fixed
1.0.2.RC3
=========
* Bug 14015 When using cloudStackApi, we must be sure to reset access/secret keys on each call in e
* Better error error checking for bad json responses (empty lists) from CloudStack...
* Bug 13400: CloudBridge didn't honor free-form end-points (instead expecting hostnames). This change allows for free form end-points.

BIN
awsapi/waf vendored

Binary file not shown.

View File

@ -1,267 +0,0 @@
#! /usr/bin/env python
# -*- coding: utf-8 -*-
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
# the following two variables are used by the target "waf dist"
# if you change 'em here, you need to change it also in cloud.spec, add a %changelog entry there, and add an entry in debian/changelog
VERSION = '1.0.8'
APPNAME = 'cloud-bridge'
import shutil,os,glob
import email,time
import optparse
import platform
import Utils,Node,Options,Logs,Scripting,Environment,Build,Configure
from subprocess import Popen as _Popen,PIPE
import os
import sys
from os import unlink as _unlink, makedirs as _makedirs, getcwd as _getcwd, chdir as _chdir
from os.path import abspath as _abspath, basename as _basename, dirname as _dirname, exists as _exists, isdir as _isdir, split as _split, join as _join, sep, pathsep, pardir, curdir
from glob import glob as _glob
import zipfile,tarfile
try:
from os import chmod as _chmod,chown as _chown
import pwd,stat,grp
except ImportError:
_chmod,_chown,pwd,stat,grp = (None,None,None,None,None)
import xml.dom.minidom
import re
# CENTOS does not have this -- we have to put this here
try:
from subprocess import check_call as _check_call
from subprocess import CalledProcessError
except ImportError:
def _check_call(*popenargs, **kwargs):
import subprocess
retcode = subprocess.call(*popenargs, **kwargs)
cmd = kwargs.get("args")
if cmd is None: cmd = popenargs[0]
if retcode: raise CalledProcessError(retcode, cmd)
return retcode
class CalledProcessError(Exception):
def __init__(self, returncode, cmd):
self.returncode = returncode ; self.cmd = cmd
def __str__(self): return "Command '%s' returned non-zero exit status %d" % (self.cmd, self.returncode)
# these variables are mandatory ('/' are converted automatically)
srcdir = '.'
blddir = 'artifacts'
Configure.autoconfig = True
# things never to consider when building or installing
for pattern in ["**/.project","**/.classpath"]: Node.exclude_regs += "\n%s"%pattern
# Support functions
# this will enforce the after= ordering constraints in the javac task generators
from TaskGen import after, feature
@feature('*')
@after('apply_core', 'apply_java', 'apply_subst')
def process_after(self):
lst = self.to_list(getattr(self, 'after', []))
for x in lst:
obj = self.bld.name_to_obj(x,self.bld.env)
if not obj: break
obj.post()
for a in obj.tasks:
for b in self.tasks:
b.set_run_after(a)
Build.BuildContext.process_after = staticmethod(process_after)
def _getbuildcontext():
ctx = Build.BuildContext()
ctx.load_dirs(_abspath(srcdir),_abspath(blddir))
ctx.load_envs()
return ctx
def set_options(opt):
"""Register command line options"""
opt.tool_options('gnu_dirs')
inst_dir = opt.get_option_group('--bindir') # get the group that contains bindir
inst_dir.add_option('--javadir', # add javadir to the group that contains bindir
help = 'Java class and jar files [Default: ${DATADIR}/java]',
default = '',
dest = 'JAVADIR')
inst_dir.add_option('--no-dep-check',
action='store_true',
help = 'Skip dependency check and assume JARs already exist',
default = False,
dest = 'NODEPCHECK')
inst_dir.add_option('--fast',
action='store_true',
help = 'does ---no-dep-check',
default = False,
dest = 'NODEPCHECK')
inst_dir.add_option('--package-version',
help = 'package version',
default = '',
dest = 'VERNUM')
def showconfig(conf):
"""prints out the current configure environment configuration"""
conf = _getbuildcontext()
Utils.pprint("WHITE","Build environment:")
for key,val in sorted(conf.env.get_merged_dict().items()):
if "CLASSPATH" in key:
Utils.pprint("BLUE"," %s:"%key)
for v in val.split(pathsep):
Utils.pprint("BLUE"," %s"%v)
continue
Utils.pprint("BLUE"," %s: %s"%(key,val))
def runant(tsk):
environ = dict(os.environ)
environ["CATALINA_HOME"] = tsk.env.TOMCATHOME
environ["AXIS2_HOME"] = "."
if tsk.generator.env.DISTRO == "Windows":
stanzas = [
"ant",
"-Dcloud-bridge.classpath=\"%s\""%(tsk.env.CLASSPATH.replace(os.pathsep,",")),
]
else:
stanzas = [
'ant',
"-Dcloud-bridge.classpath=%s"%(tsk.env.CLASSPATH.replace(os.pathsep,",")),
]
stanzas += tsk.generator.antargs + tsk.generator.anttgts
return Utils.exec_command(" ".join(stanzas),cwd=tsk.generator.bld.srcnode.abspath(),env=environ,log=True,shell=False)
Utils.runant = runant
def relpath(path, start="."):
if not path: raise ValueError("no path specified")
start_list = os.path.abspath(start).split(sep)
path_list = os.path.abspath(path).split(sep)
# Work out how much of the filepath is shared by start and path.
i = len(os.path.commonprefix([start_list, path_list]))
rel_list = [pardir] * (len(start_list)-i) + path_list[i:]
if not rel_list:
return curdir
return os.path.join(*rel_list)
Utils.relpath = relpath
def mkdir_p(directory):
if not _isdir(directory):
Utils.pprint("GREEN","Creating directory %s and necessary parents"%directory)
_makedirs(directory)
def getdebdeps():
def debdeps(fileset):
for f in fileset:
lines = file(f).readlines()
lines = [ x[len("Build-Depends: "):] for x in lines if x.startswith("Build-Depends") ]
for l in lines:
deps = [ x.strip() for x in l.split(",") ]
for d in deps:
if "%s-"%APPNAME in d: continue
yield d
yield "build-essential"
yield "devscripts"
yield "debhelper"
deps = set(debdeps(["debian/control"]))
return deps
def throws_command_errors(f):
def g(*args,**kwargs):
try: return f(*args,**kwargs)
except CalledProcessError,e:
raise Utils.WafError("system command %s failed with error value %s"%(e.cmd[0],e.returncode))
except IOError,e:
if e.errno is 32:
raise Utils.WafError("system command %s terminated abruptly, closing communications with parent's pipe"%e.cmd[0])
raise
return g
def c(cmdlist,cwd=None):
# Run a command with _check_call, pretty-printing the cmd list
Utils.pprint("BLUE"," ".join(cmdlist))
return _check_call(cmdlist,cwd=cwd)
""" """
""" Custom waf targets """
""" """
def viewdebdeps(context):
"""shows all the necessary dependencies to build the DEB packages of the Bridge"""
for dep in getdebdeps(): print dep
@throws_command_errors
def deb(context):
"""Builds DEB packages of the Bridge"""
Utils.pprint("GREEN","Building DEBs")
basedir = os.path.realpath(os.path.curdir) + "/packages/config"
checkdeps = lambda: c(["dpkg-checkbuilddeps"], basedir)
dodeb = lambda: c(["debuild", '-e','WAFCACHE','--no-lintian', "-us","-uc", "-b"], basedir)
try: checkdeps()
except (CalledProcessError,OSError),e:
Utils.pprint("YELLOW","Dependencies might be missing.")
dodeb()
@throws_command_errors
def rpm(context):
"""Builds RPM packages of the Bridge"""
Utils.pprint("GREEN","Building RPMs")
basedir = os.path.realpath(os.path.curdir) + "/packages/config/rpm"
outputdir = basedir + "/tmp"
sourcedir = _join(outputdir,"SOURCES")
specfile = basedir + "/cloudbridge.spec"
if Options.options.VERNUM:
ver = Options.options.VERNUM
else: ver = "1.0.1"
tarball = Scripting.dist('', ver)
if _exists(outputdir): shutil.rmtree(outputdir)
for a in ["RPMS/noarch","SRPMS","BUILD","SPECS","SOURCES"]: mkdir_p(_join(outputdir,a))
shutil.copy(tarball,_join(sourcedir,tarball))
packagever = ["--define", "_ver %s" % ver]
checkdeps = lambda: c(["rpmbuild", "--define", "_topdir %s"%outputdir, "--nobuild", specfile]+packagever)
dorpm = lambda: c(["rpmbuild", "--define", "_topdir %s"%outputdir, "-bb", specfile]+packagever)
try: checkdeps()
except (CalledProcessError,OSError),e:
Utils.pprint("YELLOW","Dependencies might be missing.")
dorpm()
for rpm in glob.glob(basedir + "/tmp/RPMS/*/*.rpm"):
shutil.copy(rpm, basedir + "/../..")
def uninstallrpms(context):
"""uninstalls any Cloud Bridge RPMs on this system"""
Utils.pprint("GREEN","Uninstalling any installed RPMs")
cmd = "rpm -qa | grep cloud-bridge | xargs -r sudo rpm -e"
Utils.pprint("BLUE",cmd)
os.system(cmd)
def uninstalldebs(context):
"""uninstalls any Cloud Bridge DEBs on this system"""
Utils.pprint("GREEN","Uninstalling any installed DEBs")
cmd = "dpkg -l 'cloud-bridge*' | grep ^i | awk '{ print $2 } ' | xargs aptitude purge -y"
Utils.pprint("BLUE",cmd)
os.system(cmd)

View File

@ -1,61 +0,0 @@
#!/usr/bin/env python
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
"""builds the entire stack"""
#For every matching build change here, that produces new installable
#files, the cloud.spec file and the Debian control files must be
#revised and tested.
import shutil,os
import Utils,Node,Options,Logs,Scripting,Environment,Build,Configure
from os import unlink as _unlink, makedirs as _makedirs, getcwd as _getcwd, chdir as _chdir
from os.path import abspath as _abspath, basename as _basename, dirname as _dirname, exists as _exists, isdir as _isdir, split as _split, join as _join, sep, pathsep, pardir
from glob import glob as _glob
try: set([1,2,3])
except Exception: from Sets import set
import re
import zipfile,tarfile
try:
from os import chmod as _chmod,chown as _chown
import pwd,stat,grp
except ImportError:
_chmod,_chown,pwd,stat,grp = (None,None,None,None,None)
sourcedir = bld.srcnode.abspath()
builddir = bld.path.abspath(bld.env)
filelist = bld.path.ant_glob
# ==================== Java compilation ===========================
ant_args = [
"-Dimpl.version=%s"%bld.env.VERSION,
"-Dtarget.dir=%s"%Utils.relpath(_join(builddir,"target")),
"-Dbuildnumber.dir=%s"%Utils.relpath(_join(builddir)),
"-Ddist.dir=%s"%Utils.relpath(builddir),
]
# FIXME make this depend on appropriate variables, add support for build number command line option, and now that build number autodetection is no longer possible in cloudstack project, remove build number autodetection support altogether, making it cleaner. and so should the build number support on this project be -- no autodetection
tgen = bld(
rule=Utils.runant,
name='runant',
source=filelist('src/**',bld=0,src=1,dir=0),
target='cloud-bridge.jar cloud-auth-ec2.mar cloud-auth-s3.mar cloud-ec2.aar cloud-s3.aar',
anttgts=["build-cloud-bridge"],
antargs=ant_args)
# FIXME declare correct build outputs for installation

View File

@ -1,113 +0,0 @@
#!/usr/bin/env python
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
"""examines environment, then:
- configures classpath as per environment or command-line options
- detects Tomcat (on Windows)
- detects or configures directories according to command-line options"""
import platform
import Utils,Node,Options,Logs,Scripting,Environment,Build,Configure
from os import unlink as _unlink, makedirs as _makedirs, getcwd as _getcwd, chdir as _chdir
from os.path import abspath as _abspath, basename as _basename, dirname as _dirname, exists as _exists, isdir as _isdir, split as _split, join as _join, sep, pathsep, pardir
from glob import glob as _glob
conf.check_tool('misc')
conf.check_tool('java')
conf.check_tool("gnu_dirs")
conf.check_message_1('Detecting distribution')
if platform.system() == 'Windows': conf.env.DISTRO = "Windows"
elif platform.system() == 'Darwin': conf.env.DISTRO = "Mac"
elif _exists("/etc/network"): conf.env.DISTRO = "Ubuntu"
elif _exists("/etc/fedora-release"): conf.env.DISTRO = "Fedora"
elif _exists("/etc/centos-release") or _exists("/etc/redhat-release"): conf.env.DISTRO = "CentOS"
else: conf.env.DISTRO = "unknown"
if conf.env.DISTRO == "unknown": c = "YELLOW"
else: c = "GREEN"
conf.check_message_2(conf.env.DISTRO,c)
# waf uses slashes somewhere along the line in some paths. we fix them on windows.
if conf.env.DISTRO in ['Windows']:
for pth in [ x for x in conf.env.get_merged_dict().keys() if x.endswith("DIR") ]:
conf.env[pth] = conf.env[pth].replace("/","\\")
conf.check_message_1('Detecting Tomcat')
tomcathome = getattr(Options.options, 'TOMCATHOME', '')
if tomcathome:
conf.env.TOMCATHOME = tomcathome
conf.check_message_2("%s (forced through --with-tomcat)"%conf.env.TOMCATHOME,"GREEN")
else:
if "TOMCAT_HOME" in conf.environ and conf.environ['TOMCAT_HOME'].strip():
conf.env.TOMCATHOME = conf.environ["TOMCAT_HOME"]
conf.check_message_2("%s (got through environment variable %%TOMCAT_HOME%%)"%conf.env.TOMCATHOME,"GREEN")
elif "CATALINA_HOME" in conf.environ and conf.environ['CATALINA_HOME'].strip():
conf.env.TOMCATHOME = conf.environ['CATALINA_HOME']
conf.check_message_2("%s (got through environment variable %%CATALINA_HOME%%)"%conf.env.TOMCATHOME,"GREEN")
elif _isdir("/usr/share/tomcat6"):
conf.env.TOMCATHOME = "/usr/share/tomcat6"
conf.check_message_2("%s (detected existence of system directory)"%conf.env.TOMCATHOME,"GREEN")
else:
conf.env.TOMCATHOME = _join(conf.env.DATADIR,'tomcat6')
conf.check_message_2("%s (assumed presence of Tomcat there)"%conf.env.TOMCATHOME,"GREEN")
conf.env.CLOUDBRIDGEPATH = _join(conf.env.PACKAGE,"management")
if conf.env.DISTRO in ['Windows','Mac']:
conf.env.CLOUDBRIDGEENVIRON = conf.env.TOMCATHOME
conf.env.CLOUDBRIDGESYSCONFDIR = _join(conf.env.TOMCATHOME,"conf")
conf.env.CLOUDBRIDGELOGDIR = _join(conf.env.TOMCATHOME,"logs")
else:
conf.env.CLOUDBRIDGEENVIRON = _join(conf.env.DATADIR,conf.env.CLOUDBRIDGEPATH)
conf.env.CLOUDBRIDGESYSCONFDIR = _join(conf.env.SYSCONFDIR,conf.env.CLOUDBRIDGEPATH)
conf.env.CLOUDBRIDGELOGDIR = _join(conf.env.LOCALSTATEDIR,"log",conf.env.CLOUDBRIDGEPATH)
conf.check_message_1('Detecting JAVADIR')
javadir = getattr(Options.options, 'JAVADIR', '')
if javadir:
conf.env.JAVADIR = javadir
conf.check_message_2("%s (forced through --javadir)"%conf.env.JAVADIR,"GREEN")
elif conf.env.DISTRO in ['Windows','Mac']:
conf.env.JAVADIR = _join(conf.env['TOMCATHOME'],'lib')
conf.check_message_2("%s (using Tomcat's lib/ directory)"%conf.env.JAVADIR,"GREEN")
else:
conf.env.JAVADIR = _join(conf.env.DATADIR,'java')
conf.check_message_2("%s (using default ${DATADIR}/java directory)"%conf.env.JAVADIR,"GREEN")
if conf.env.DISTRO in ["Windows","Mac"]:
conf.env.SYSTEMJAVADIR = conf.env.JAVADIR
else:
conf.env.SYSTEMJAVADIR = "/usr/share/java"
in_javadir = lambda name: _join(conf.env.JAVADIR,_basename(name)) # $PREFIX/share/java
in_system_javadir = lambda name: _join(conf.env.SYSTEMJAVADIR,name) # /usr/share/java
conf.check_message_1('Building classpaths')
# == Here we build the run-time classpaths ==
compilecp = []
compilecp+= [ jar for directory in ['lib','rampart-lib'] for jar in _glob(_join(directory,"*.jar")) ]
# 3. the system classpath (system-installed JARs)
conf.env.CLASSPATH = pathsep.join(compilecp)
conf.check_message_2('Done','GREEN')
conf.env.VERSION = Utils.g_module.VERSION
Utils.pprint("WHITE","Configure finished. Use 'python waf showconfig' to show the configure-time environment.")

View File

@ -272,12 +272,11 @@
</fileset>
</copy>
</target>
<!--
<target name="deploy-debian-install" depends="build-awsapi-jar, build-awsapi">
<copy todir="${debian.tomcat.dir}/webapps7080/awsapi/WEB-INF/services">
<fileset dir="${dist.files.dir}">
<!--
<include name="cloud-s3.aar"/>
-->
<include name="cloud-ec2.aar" />
</fileset>
</copy>
@ -310,14 +309,14 @@
<include name="xes.keystore" />
</fileset>
</copy>
<!-- copy overwrite="true" todir="${debian.tomcat.dir}/conf">
<copy overwrite="true" todir="${debian.tomcat.dir}/conf">
<fileset dir="${base.dir}/awsapi/conf/">
<include name="**/*" />
</fileset>
<fileset dir="${base.dir}/awsapi-setup/tomcat">
<include name="**/*" />
</fileset>
</copy -->
</copy>
<copy overwrite="true" todir="${debian.tomcat.dir}/webapps7080/awsapi/WEB-INF/conf">
<fileset dir="${base.dir}/awsapi/resource/Axis2/">
<include name="axis2.xml" />
@ -345,6 +344,8 @@
</fileset>
</copy>
</target>
-->
<target name="deploy-rpm-install" depends="build-awsapi-jar, build-awsapi">
<copy todir="${rpm.tomcat.dir}/webapps7080/awsapi/WEB-INF/services">
<fileset dir="${dist.files.dir}">