Skip to content

Commit c305e3c

Browse files
Pradeepchipchilders
authored andcommitted
BUG-ID: CLOUDSTACK-1713, CLOUDSTACK-1719
Summary: EC2 REST API: AWS APIs are not getting translated on the CloudStack Management Server and AWS API Installation Problems. This fixes the above two defects and other packaging related issues. Signed-off-by: Pradeep <pradeep.soundararajan@citrix.com>
1 parent 0be5ba4 commit c305e3c

3 files changed

Lines changed: 33 additions & 12 deletions

File tree

awsapi-setup/setup/cloud-setup-bridge

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
# Cloud.com Bridge setup script.
2121
#
2222

23-
settingsFile="/usr/share/cloud/bridge/conf/ec2-service.properties"
23+
settingsFile="/etc/cloudstack/management/ec2-service.properties"
2424

2525
function readCurrentSettings () {
2626
readVar managementServer

packaging/centos63/cloud.spec

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -290,22 +290,39 @@ cp -r cloud-cli/cloudtool ${RPM_BUILD_ROOT}%{_libdir}/python2.6/site-packages/
290290
install cloud-cli/cloudapis/cloud.py ${RPM_BUILD_ROOT}%{_libdir}/python2.6/site-packages/cloudapis.py
291291

292292
# AWS API
293-
mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/bridge
293+
mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi
294294
mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/setup
295-
cp -r awsapi/target/cloud-awsapi-%{_maventag}/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/bridge
295+
cp -r awsapi/target/cloud-awsapi-%{_maventag}/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi
296296
install -D awsapi-setup/setup/cloud-setup-bridge ${RPM_BUILD_ROOT}%{_bindir}/cloudstack-setup-bridge
297297
install -D awsapi-setup/setup/cloudstack-aws-api-register ${RPM_BUILD_ROOT}%{_bindir}/cloudstack-aws-api-register
298298
cp -r awsapi-setup/db/mysql/* ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/setup
299299

300+
for name in applicationContext.xml cloud-bridge.properties commons-logging.properties ; do
301+
mv ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/$name \
302+
${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/$name
303+
done
304+
305+
install -D ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/ec2-service.properties ${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}/management/ec2-service.properties
306+
307+
#Don't package the below for AWS API
308+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/com
309+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/db.properties
310+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/LICENSE.txt
311+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/log4j.properties
312+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/log4j-vmops.xml
313+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/META-INF
314+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/NOTICE.txt
315+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/org
316+
rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}-bridge/webapps/awsapi/WEB-INF/classes/services.xml
317+
300318
%clean
301319
[ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT}
302320

303-
304321
%preun management
305-
/sbin/service cloud-management stop || true
322+
/sbin/service cloudstack-management stop || true
306323
if [ "$1" == "0" ] ; then
307-
/sbin/chkconfig --del cloud-management > /dev/null 2>&1 || true
308-
/sbin/service cloud-management stop > /dev/null 2>&1 || true
324+
/sbin/chkconfig --del cloudstack-management > /dev/null 2>&1 || true
325+
/sbin/service cloudstack-management stop > /dev/null 2>&1 || true
309326
fi
310327

311328
%pre management
@@ -322,8 +339,8 @@ rm -rf %{_localstatedir}/cache/cloud
322339

323340
%post management
324341
if [ "$1" == "1" ] ; then
325-
/sbin/chkconfig --add cloud-management > /dev/null 2>&1 || true
326-
/sbin/chkconfig --level 345 cloud-management on > /dev/null 2>&1 || true
342+
/sbin/chkconfig --add cloudstack-management > /dev/null 2>&1 || true
343+
/sbin/chkconfig --level 345 cloudstack-management on > /dev/null 2>&1 || true
327344
fi
328345

329346
if [ -d "%{_datadir}/%{name}-management" ] ; then
@@ -377,6 +394,10 @@ fi
377394
%config(noreplace) %{_sysconfdir}/%{name}/management/tomcat-users.xml
378395
%config(noreplace) %{_sysconfdir}/%{name}/management/web.xml
379396
%config(noreplace) %{_sysconfdir}/%{name}/management/environment.properties
397+
%config(noreplace) %{_sysconfdir}/%{name}/management/applicationContext.xml
398+
%config(noreplace) %{_sysconfdir}/%{name}/management/cloud-bridge.properties
399+
%config(noreplace) %{_sysconfdir}/%{name}/management/commons-logging.properties
400+
%config(noreplace) %{_sysconfdir}/%{name}/management/ec2-service.properties
380401
%attr(0755,root,root) %{_initrddir}/%{name}-management
381402
%attr(0755,root,root) %{_bindir}/%{name}-setup-management
382403
%attr(0755,root,root) %{_bindir}/%{name}-update-xenserver-licenses
@@ -450,7 +471,7 @@ fi
450471

451472
%files awsapi
452473
%defattr(0644,cloud,cloud,0755)
453-
%{_datadir}/%{name}-bridge/webapps/bridge
474+
%{_datadir}/%{name}-bridge/webapps/awsapi
454475
%attr(0644,root,root) %{_datadir}/%{name}-bridge/setup/*
455476
%attr(0755,root,root) %{_bindir}/cloudstack-aws-api-register
456477
%attr(0755,root,root) %{_bindir}/cloudstack-setup-bridge

python/lib/cloudutils/serviceConfigServer.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ def checkHostName():
3333
raise CloudInternalException("Cannot get hostname, 'hostname --fqdn failed'")
3434

3535
if self.syscfg.env.svrMode == "mycloud":
36-
cfo = configFileOps("/usr/share/cloud/management/conf/environment.properties", self)
36+
cfo = configFileOps("/usr/share/cloudstack-management/conf/environment.properties", self)
3737
cfo.addEntry("cloud-stack-components-specification", "components-cloudzones.xml")
3838
cfo.save()
3939

40-
cfo = configFileOps("/usr/share/cloud/management/conf/db.properties", self)
40+
cfo = configFileOps("/usr/share/cloudstack-management/conf/db.properties", self)
4141
dbHost = cfo.getEntry("db.cloud.host")
4242
dbPort = cfo.getEntry("db.cloud.port")
4343
dbUser = cfo.getEntry("db.cloud.username")

0 commit comments

Comments
 (0)