From 116d03d5652c895ef95ac15c4b2b4059a4076988 Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Wed, 23 Feb 2011 17:27:17 +0100 Subject: [PATCH 1/6] Feature #495: Included sunstone in install.sh --- install.sh | 163 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 142 insertions(+), 21 deletions(-) diff --git a/install.sh b/install.sh index b5c507ac43..ccddf49715 100755 --- a/install.sh +++ b/install.sh @@ -40,6 +40,7 @@ usage() { echo "-d: target installation directory, if not defined it'd be root. Must be" echo " an absolute path." echo "-c: install client utilities: OpenNebula cli, occi and ec2 client files" + echo "-s: install OpenNebula Sunstone" echo "-r: remove Opennebula, only useful if -d was not specified, otherwise" echo " rm -rf \$ONE_LOCATION would do the job" echo "-l: creates symlinks instead of copying files, useful for development" @@ -47,7 +48,7 @@ usage() { } #------------------------------------------------------------------------------- -TEMP_OPT=`getopt -o hkrlcu:g:d: -n 'install.sh' -- "$@"` +TEMP_OPT=`getopt -o hkrlcsu:g:d: -n 'install.sh' -- "$@"` if [ $? != 0 ] ; then usage @@ -60,6 +61,7 @@ INSTALL_ETC="yes" UNINSTALL="no" LINK="no" CLIENT="no" +SUNSTONE="no" ONEADMIN_USER=`id -u` ONEADMIN_GROUP=`id -g` SRC_DIR=$PWD @@ -70,7 +72,8 @@ while true ; do -k) INSTALL_ETC="no" ; shift ;; -r) UNINSTALL="yes" ; shift ;; -l) LINK="yes" ; shift ;; - -c) CLIENT="yes" ; shift ;; + -c) CLIENT="yes"; INSTALL_ETC="no" ; shift ;; + -s) SUNSTONE="yes"; INSTALL_ETC="no" ; shift ;; -u) ONEADMIN_USER="$2" ; shift 2;; -g) ONEADMIN_GROUP="$2"; shift 2;; -d) ROOT="$2" ; shift 2 ;; @@ -89,6 +92,7 @@ if [ -z "$ROOT" ] ; then ETC_LOCATION="/etc/one" LOG_LOCATION="/var/log/one" VAR_LOCATION="/var/lib/one" + SUNSTONE_LOCATION="$LIB_LOCATION/sunstone" IMAGES_LOCATION="$VAR_LOCATION/images" RUN_LOCATION="/var/run/one" LOCK_LOCATION="/var/lock/one" @@ -96,7 +100,19 @@ if [ -z "$ROOT" ] ; then SHARE_LOCATION="/usr/share/one" MAN_LOCATION="/usr/share/man/man8" - if [ "$CLIENT" = "no" ]; then + if [ "$CLIENT" = "yes" ]; then + MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION" + + DELETE_DIRS="" + + CHOWN_DIRS="" + elif [ "$SUNSTONE" = "yes" ]; then + MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION $VAR_LOCATION $SUNSTONE_LOCATION" + + DELETE_DIRS="$MAKE_DIRS" + + CHOWN_DIRS="" + else MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION $ETC_LOCATION $VAR_LOCATION \ $INCLUDE_LOCATION $SHARE_LOCATION \ $LOG_LOCATION $RUN_LOCATION $LOCK_LOCATION \ @@ -106,12 +122,6 @@ if [ -z "$ROOT" ] ; then $RUN_LOCATION $SHARE_DIRS" CHOWN_DIRS="$LOG_LOCATION $VAR_LOCATION $RUN_LOCATION $LOCK_LOCATION" - else - MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION" - - DELETE_DIRS="" - - CHOWN_DIRS="" fi else @@ -119,12 +129,21 @@ else LIB_LOCATION="$ROOT/lib" ETC_LOCATION="$ROOT/etc" VAR_LOCATION="$ROOT/var" + SUNSTONE_LOCATION="$LIB_LOCATION/sunstone" IMAGES_LOCATION="$VAR_LOCATION/images" INCLUDE_LOCATION="$ROOT/include" SHARE_LOCATION="$ROOT/share" MAN_LOCATION="$ROOT/share/man/man8" - if [ "$CLIENT" = "no" ]; then + if [ "$CLIENT" = "yes" ]; then + MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION" + + DELETE_DIRS="$MAKE_DIRS" + elif [ "$SUNSTONE" = "yes" ]; then + MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION $VAR_LOCATION $SUNSTONE_LOCATION" + + DELETE_DIRS="$MAKE_DIRS" + else MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION $ETC_LOCATION $VAR_LOCATION \ $INCLUDE_LOCATION $SHARE_LOCATION $IMAGES_LOCATION \ $MAN_LOCATION" @@ -132,10 +151,6 @@ else DELETE_DIRS="$MAKE_DIRS" CHOWN_DIRS="$ROOT" - else - MAKE_DIRS="$BIN_LOCATION $LIB_LOCATION" - - DELETE_DIRS="$MAKE_DIRS" fi CHOWN_DIRS="$ROOT" @@ -188,6 +203,16 @@ VAR_DIRS="$VAR_LOCATION/remotes \ $VAR_LOCATION/remotes/vmm/xen \ $VAR_LOCATION/remotes/vmm/kvm" +SUNSTONE_DIRS="$SUNSTONE_LOCATION/models \ + $SUNSTONE_LOCATION/models/OpenNebulaJSON \ + $SUNSTONE_LOCATION/public \ + $SUNSTONE_LOCATION/public/js \ + $SUNSTONE_LOCATION/public/js/vendor \ + $SUNSTONE_LOCATION/public/css \ + $SUNSTONE_LOCATION/public/css/vendor \ + $SUNSTONE_LOCATION/public/images \ + $SUNSTONE_LOCATION/templates" + LIB_ECO_CLIENT_DIRS="$LIB_LOCATION/ruby \ $LIB_LOCATION/ruby/OpenNebula \ $LIB_LOCATION/ruby/cloud/ \ @@ -197,14 +222,19 @@ LIB_OCCI_CLIENT_DIRS="$LIB_LOCATION/ruby \ $LIB_LOCATION/ruby/OpenNebula \ $LIB_LOCATION/ruby/cloud/occi" +LIB_OCA_CLIENT_DIRS="$LIB_LOCATION/ruby \ + $LIB_LOCATION/ruby/OpenNebula" + LIB_CLI_DIRS="$LIB_LOCATION/ruby \ $LIB_LOCATION/ruby/OpenNebula" -if [ "$CLIENT" = "no" ]; then - MAKE_DIRS="$MAKE_DIRS $SHARE_DIRS $ETC_DIRS $LIB_DIRS $VAR_DIRS" -else +if [ "$CLIENT" = "yes" ]; then MAKE_DIRS="$MAKE_DIRS $LIB_ECO_CLIENT_DIRS $LIB_OCCI_CLIENT_DIRS \ $LIB_CLI_DIRS" +elif [ "$SUNSTONE" = "yes" ]; then + MAKE_DIRS="$MAKE_DIRS $SUNSTONE_DIRS $LIB_OCA_CLIENT_DIRS" +else + MAKE_DIRS="$MAKE_DIRS $SHARE_DIRS $ETC_DIRS $LIB_DIRS $VAR_DIRS $SUNSTONE_DIRS" fi #------------------------------------------------------------------------------- @@ -267,6 +297,21 @@ INSTALL_CLIENT_FILES=( RUBY_OPENNEBULA_LIB_FILES:$LIB_LOCATION/ruby/OpenNebula ) +INSTALL_SUNSTONE_FILES=( + SUNSTONE_FILES:$SUNSTONE_LOCATION + SUNSTONE_BIN_FILES:$BIN_LOCATION + SUNSTONE_MODELS_FILES:$SUNSTONE_LOCATION/models + SUNSTONE_MODELS_JSON_FILES:$SUNSTONE_LOCATION/models/OpenNebulaJSON + SUNSTONE_TEMPLATE_FILES:$SUNSTONE_LOCATION/templates + SUNSTONE_PUBLIC_JS_FILES:$SUNSTONE_LOCATION/public/js + SUNSTONE_PUBLIC_JS_VENDOR_FILES:$SUNSTONE_LOCATION/public/js/vendor + SUNSTONE_PUBLIC_CSS_FILES:$SUNSTONE_LOCATION/public/css + SUNSTONE_PUBLIC_CSS_VENDOR_FILES:$SUNSTONE_LOCATION/public/css/vendor + SUNSTONE_PUBLIC_IMAGES_FILES:$SUNSTONE_LOCATION/public/images + SUNSTONE_RUBY_LIB_FILES:$LIB_LOCATION/ruby + RUBY_OPENNEBULA_LIB_FILES:$LIB_LOCATION/ruby/OpenNebula +) + INSTALL_ETC_FILES=( ETC_FILES:$ETC_LOCATION VMM_EC2_ETC_FILES:$ETC_LOCATION/vmm_ec2 @@ -646,6 +691,80 @@ CLI_BIN_FILES="src/cli/onevm \ src/cli/oneimage \ src/cli/onecluster" +#----------------------------------------------------------------------------- +# Sunstone files +#----------------------------------------------------------------------------- + +SUNSTONE_FILES="src/sunstone/config.ru \ + src/sunstone/sunstone-server.rb" + +SUNSTONE_BIN_FILES="src/sunstone/bin/sunstone-server" + +SUNSTONE_MODELS_FILES="src/sunstone/models/OpenNebulaJSON.rb \ + src/sunstone/models/SunstoneServer.rb" + +SUNSTONE_MODELS_JSON_FILES="src/sunstone/models/OpenNebulaJSON/ClusterJSON.rb \ + src/sunstone/models/OpenNebulaJSON/HostJSON.rb \ + src/sunstone/models/OpenNebulaJSON/ImageJSON.rb \ + src/sunstone/models/OpenNebulaJSON/JSONUtils.rb \ + src/sunstone/models/OpenNebulaJSON/PoolJSON.rb \ + src/sunstone/models/OpenNebulaJSON/UserJSON.rb \ + src/sunstone/models/OpenNebulaJSON/VirtualMachineJSON.rb \ + src/sunstone/models/OpenNebulaJSON/VirtualNetworkJSON.rb" + +SUNSTONE_TEMPLATE_FILES="src/sunstone/templates/index.html \ + src/sunstone/templates/login.html" + +SUNSTONE_PUBLIC_JS_FILES="src/sunstone/public/js/layout.js \ + src/sunstone/public/js/login.js \ + src/sunstone/public/js/one-ui_views.js \ + src/sunstone/public/js/one-ui_views.templates.js \ + src/sunstone/public/js/opennebula.js" + +SUNSTONE_PUBLIC_JS_VENDOR_FILES="src/sunstone/public/js/vendor/base64.js \ + src/sunstone/public/js/vendor/jquery-1.4.4.min.js \ + src/sunstone/public/js/vendor/jquery.dataTables.min.js \ + src/sunstone/public/js/vendor/jquery.jgrowl_minimized.js \ + src/sunstone/public/js/vendor/jquery.layout.min-1.2.0.js \ + src/sunstone/public/js/vendor/jquery-ui-1.8.7.custom.min.js" + +SUNSTONE_PUBLIC_CSS_FILES="src/sunstone/public/css/application.css \ + src/sunstone/public/css/demo_table_jui.css \ + src/sunstone/public/css/jquery.jgrowl.css \ + src/sunstone/public/css/layout.css \ + src/sunstone/public/css/layout-default-latest.css \ + src/sunstone/public/css/login.css" + +SUNSTONE_PUBLIC_CSS_VENDOR_FILES="\ + src/sunstone/public/css/vendor/jquery-ui-1.8.7.custom.css \ + src/sunstone/public/css/vendor/ui-bg_flat_0_575c5b_40x100.png \ + src/sunstone/public/css/vendor/ui-bg_flat_0_8f9392_40x100.png \ + src/sunstone/public/css/vendor/ui-bg_flat_0_aaaaaa_40x100.png \ + src/sunstone/public/css/vendor/ui-bg_flat_75_ffffff_40x100.png \ + src/sunstone/public/css/vendor/ui-bg_glass_55_fbf9ee_1x400.png \ + src/sunstone/public/css/vendor/ui-bg_glass_65_ffffff_1x400.png \ + src/sunstone/public/css/vendor/ui-bg_glass_75_dadada_1x400.png \ + src/sunstone/public/css/vendor/ui-bg_glass_75_e6e6e6_1x400.png \ + src/sunstone/public/css/vendor/ui-bg_glass_95_fef1ec_1x400.png \ + src/sunstone/public/css/vendor/ui-bg_highlight-soft_75_cccccc_1x100.png \ + src/sunstone/public/css/vendor/ui-icons_222222_256x240.png \ + src/sunstone/public/css/vendor/ui-icons_2e83ff_256x240.png \ + src/sunstone/public/css/vendor/ui-icons_454545_256x240.png \ + src/sunstone/public/css/vendor/ui-icons_888888_256x240.png \ + src/sunstone/public/css/vendor/ui-icons_cd0a0a_256x240.png" + +SUNSTONE_PUBLIC_IMAGES_FILES="src/sunstone/public/images/ajax-loader.gif \ + src/sunstone/public/images/login_over.png \ + src/sunstone/public/images/login.png \ + src/sunstone/public/images/opennebula-sunstone-big.png \ + src/sunstone/public/images/opennebula-sunstone-small.png \ + src/sunstone/public/images/panel.png \ + src/sunstone/public/images/pbar.gif \ + src/sunstone/public/images/Refresh-icon.png" + +SUNSTONE_RUBY_LIB_FILES="src/mad/ruby/CommandManager.rb \ + src/oca/ruby/OpenNebula.rb" + #----------------------------------------------------------------------------- # MAN files #----------------------------------------------------------------------------- @@ -696,10 +815,12 @@ do_file() { } -if [ "$CLIENT" = "no" ]; then - INSTALL_SET=${INSTALL_FILES[@]} -else +if [ "$CLIENT" = "yes" ]; then INSTALL_SET=${INSTALL_CLIENT_FILES[@]} +elif [ "$SUNSTONE" = "yes" ]; then + INSTALL_SET=${INSTALL_SUNSTONE_FILES[@]} +else + INSTALL_SET="${INSTALL_FILES[@]} ${INSTALL_SUNSTONE_FILES[@]}" fi for i in ${INSTALL_SET[@]}; do @@ -713,7 +834,7 @@ for i in ${INSTALL_SET[@]}; do done done -if [ "$CLIENT" = "no" -a "$INSTALL_ETC" = "yes" ] ; then +if [ "$INSTALL_ETC" = "yes" ] ; then for i in ${INSTALL_ETC_FILES[@]}; do SRC=$`echo $i | cut -d: -f1` DST=`echo $i | cut -d: -f2` From cc3b35fa90c012c091fcd5cea1a3fc48762a6cf6 Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Wed, 23 Feb 2011 17:27:41 +0100 Subject: [PATCH 2/6] Feature #495: Added license banner for sunstone-server bin file --- src/sunstone/bin/sunstone-server | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) mode change 100644 => 100755 src/sunstone/bin/sunstone-server diff --git a/src/sunstone/bin/sunstone-server b/src/sunstone/bin/sunstone-server old mode 100644 new mode 100755 index 5ac68703d0..977750dd03 --- a/src/sunstone/bin/sunstone-server +++ b/src/sunstone/bin/sunstone-server @@ -1,3 +1,22 @@ +#!/bin/bash + +# -------------------------------------------------------------------------- # +# Copyright 2002-2011, OpenNebula Project Leads (OpenNebula.org) # +# # +# 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. # +#--------------------------------------------------------------------------- # + + if [ -z "$ONE_LOCATION" ]; then SUNSTONE_PID=/var/run/one/sunstone.pid SUNSTONE_SERVER=/usr/lib/one/sunstone/config.ru @@ -99,4 +118,4 @@ case "$1" in echo "Usage: sunstone {start|stop}" >&2 exit 3 ;; -esac \ No newline at end of file +esac From c8ca4cae73ce71771b7b7d3fd59bd7ee75b7e1e3 Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Wed, 23 Feb 2011 17:27:58 +0100 Subject: [PATCH 3/6] Feature #495: Fixed unix permissions on some files --- .../css/vendor/ui-icons_222222_256x240.png.old | Bin 4369 -> 0 bytes src/sunstone/public/images/box_gradient.png | Bin 540 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/sunstone/public/css/vendor/ui-icons_222222_256x240.png.old delete mode 100644 src/sunstone/public/images/box_gradient.png diff --git a/src/sunstone/public/css/vendor/ui-icons_222222_256x240.png.old b/src/sunstone/public/css/vendor/ui-icons_222222_256x240.png.old deleted file mode 100644 index b273ff111d219c9b9a8b96d57683d0075fb7871a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4369 zcmd^?`8O2)_s3^phOrG}UnfiUEn8(9QW1?MNkxXVDEpFin2{xWrLx5kBC;k~GmPmYTG^FX}c% zlGE{DS1Q;~I7-6ze&TN@+F-xsI6sd%SwK#*O5K|pDRZqEy< zJg0Nd8F@!OxqElm`~U#piM22@u@8B<moyKE%ct`B(jysxK+1m?G)UyIFs1t0}L zemGR&?jGaM1YQblj?v&@0iXS#fi-VbR9zLEnHLP?xQ|=%Ihrc7^yPWR!tW$yH!zrw z#I2}_!JnT^(qk)VgJr`NGdPtT^dmQIZc%=6nTAyJDXk+^3}wUOilJuwq>s=T_!9V) zr1)DT6VQ2~rgd@!Jlrte3}}m~j}juCS`J4(d-5+e-3@EzzTJNCE2z)w(kJ90z*QE) zBtnV@4mM>jTrZZ*$01SnGov0&=A-JrX5Ge%Pce1Vj}=5YQqBD^W@n4KmFxxpFK`uH zP;(xKV+6VJ2|g+?_Lct7`uElL<&jzGS8Gfva2+=8A@#V+xsAj9|Dkg)vL5yhX@~B= zN2KZSAUD%QH`x>H+@Ou(D1~Pyv#0nc&$!1kI?IO01yw3jD0@80qvc?T*Nr8?-%rC8 z@5$|WY?Hqp`ixmEkzeJTz_`_wsSRi1%Zivd`#+T{Aib6-rf$}M8sz6v zb6ERbr-SniO2wbOv!M4)nb}6UVzoVZEh5kQWh_5x4rYy3c!871NeaM(_p=4(kbS6U#x<*k8Wg^KHs2ttCz<+pBxQ$Z zQMv;kVm5_fF_vH`Mzrq$Y&6u?j6~ftIV0Yg)Nw7JysIN_ z-_n*K_v1c&D}-1{NbBwS2h#m1y0a5RiEcYil+58$8IDh49bPnzE7R8In6P%V{2IZU z7#clr=V4yyrRe@oXNqbqo^^LvlLE?%8XaI&N(Np90-psU}7kqmbWk zZ;YBwJNnNs$~d!mx9oMGyT( znaBoj0d}gpQ^aRr?6nW)$4god*`@Uh2e+YpS@0(Mw{|z|6ko3NbTvDiCu3YO+)egL z>uW(^ahKFj>iJ-JF!^KhKQyPTznJa;xyHYwxJgr16&Wid_9)-%*mEwo{B_|M9t@S1 zf@T@q?b2Qgl!~_(Roe;fdK)y|XG0;ls;ZbT)w-aOVttk#daQcY7$cpY496H*`m@+L zeP#$&yRbBjFWv}B)|5-1v=(66M_;V1SWv6MHnO}}1=vby&9l+gaP?|pXwp0AFDe#L z&MRJ^*qX6wgxhA_`*o=LGZ>G_NTX%AKHPz4bO^R72ZYK}ale3lffDgM8H!Wrw{B7A z{?c_|dh2J*y8b04c37OmqUw;#;G<* z@nz@dV`;7&^$)e!B}cd5tl0{g(Q>5_7H^@bEJi7;fQ4B$NGZerH#Ae1#8WDTH`iB&) zC6Et3BYY#mcJxh&)b2C^{aLq~psFN)Q1SucCaBaBUr%5PYX{~-q{KGEh)*;n;?75k z=hq%i^I}rd;z-#YyI`8-OfMpWz5kgJE3I!3ean6=UZi!BxG7i(YBk? z02HM7wS0)Wni{dWbQMRtd-A)_Az!t>F;IwWf~!*)-Az4}yryNkz&9)w>ElA80Oc`6 zHo#9H!Y3*Qx9n@Jn)!w6G^hb;e_n8zpIyXCN`JFkPc)^Q?2MsLNFhMgrcZI-<#1ne zjH;KFf?4eAT9mQZ}ZfHLGA#d%s;SZK4p0FwZT2S^{ zQ2BG1xJsbK6?yrHTjJi|5C0u=!|r!?*4FL%y%3q#(d+e>b_2I9!*iI!30}42Ia0bq zUf`Z?LGSEvtz8s``Tg5o_CP(FbR0X$FlE0yCnB7suDPmI2=yOg^*2#cY9o`X z;NY-3VBHZjnVcGS){GZ98{e+lq~O$u6pEcgd0CrnIsWffN1MbCZDH<7c^hv+Z0Ucf0{w zSzi^qKuUHD9Dgp0EAGg@@$zr32dQx>N=ws`MESEsmzgT2&L;?MSTo&ky&!-JR3g~1 zPGTt515X)wr+Bx(G9lWd;@Y3^Vl}50Wb&6-Tiy;HPS0drF`rC}qYq22K4)G#AoD0X zYw$E+Bz@Zr^50MAwu@$?%f9$r4WHH?*2|67&FXFhXBrVFGmg)6?h3^-1?t;UzH0*I zNVf9wQLNLnG2@q>6CGm>&y|lC`iCFfYd}9i%+xkl^5oBJ?<;aneCfcHqJh7Yl5uLS z9Fx-(kMdcNyZejXh22N{mCw_rX1O!cOE&3>e(ZH81PR95wQC37En4O{w;{3q9n1t&;p)D%&Z%Nw$gSPa!nz8Slh7=ko2am)XARwOWw zpsz0~K!s{(dM$NB=(A=kkp>T(*yU6<_dwIx>cH4+LWl282hXa6-EUq>R3t?G2623< z*RwTN%-fgBmD{fu*ejNn)1@KG?Sg*8z3hYtkQJQjB6 zQ|x>wA=o$=O)+nLmgTXW3_6diA;b4EY{*i*R%6dO2EMg z@6g?M3rpbnfB@hOdUeb96=~I?OIA3@BWAGmTwiQ{x5Cqq<8c10L!P zd@Qk^BseTX%$Q7^s}5n%HB|)gKx}H$d8Sb$bBnq9-AglT2dGR2(+I;_fL|R4p$odJ zllfb0NqI)7=^z~qAm1V{(PkpxXsQ#4*NH9yYZ`Vf@)?#ueGgtCmGGY|9U#v|hRdg- zQ%0#cGIfXCd{Y)JB~qykO;KPvHu|5Ck&(Hn%DF~cct@}j+87xhs2ew;fLm5#2+mb| z8{9e*YI(u|gt|{x1G+U=DA3y)9s2w7@cvQ($ZJIA)x$e~5_3LKFV~ASci8W}jF&VeJoPDUy(BB>ExJpck;%;!`0AAo zAcHgcnT8%OX&UW_n|%{2B|<6Wp2MMGvd5`T2KKv;ltt_~H+w00x6+SlAD`{K4!9zx z*1?EpQ%Lwiik){3n{-+YNrT;fH_niD_Ng9|58@m8RsKFVF!6pk@qxa{BH-&8tsim0 zdAQ(GyC^9ane7_KW*#^vMIoeQdpJqmPp%%px3GIftbwESu#+vPyI*YTuJ6+4`z{s? zpkv~0x4c_PFH`-tqafw5)>4AuQ78SkZ!$8}INLK;Egr;2tS18hEO5=t;QDmZ-qu?I zG+=DN`nR72Xto{{bJp||`k}-2G;5#xg8E~xgz22)^_Z;=K|4@(E&5J)SY2of=olcw z5)@L)_Ntcm!*5nEy0M9v0`S33;pO4TN;>4(Z+19p_0>u#e-vE zXCU(6gAvu~I7Cw(xd%0e59MNLw^U37ZDbsBrj%eDCexw8a3G`nTcXVNL6{B7Hj@i& zbVB{;ApEtHk76q08DJ48dSxd$C(;$K6=FpU<~l9pVoT9arW^Vu{%Bcn4`eIpkOVC| z$)AKYG_`ypM{0@BUb3^9lqi_c?ONH|4UJMJWDowMVjacycX7}9g={O7swOB+{;+?; zjBo!9?+nd)ie#x5IbFW-zBOo0c4q@9wGVt5;pNt`=-~Zgcw#*`m($6ibxtZ`H=e=} zF#GZ~5$%AUn};8U#tRem0J(JTR}d4vR(dgK2ML~lZsPhayJ2h1%sD4FVst| zKF)+@`iNzLRjg4=K8@**0=5cE>%?FDc({I^+g9USk<8$&^qD~@%W0i4b|yMG*p4`N zh}I!ltTRI8Ex$+@V{02Br%xq#O?UlhO{r8WsaZnZCZq0MK9%AXU%MDLT;3=0A9(BV z9VxxxJd7jo$hw3q;3o?yBLmA=azBUrd9>-<_ANs0n3?-Ic*6&ytb@H~?0E(*d>T5n z-HiH2jsDf6uWhID%#n>SzOqrFCPDfUcu5QPd?<(=w6pv1BE#nsxS{n!UnC9qAha1< z;3cpZ9A-e$+Y)%b;w@!!YRA9p%Kf9IHGGg^{+p`mh;q8i7}&e@V3EQaMsItEMS&=X plT@$;k0WcB_jb;cn%_Idz4HO$QU*abf4}+wi?e96N>fbq{{i|W0@(ln diff --git a/src/sunstone/public/images/box_gradient.png b/src/sunstone/public/images/box_gradient.png deleted file mode 100644 index 4e2c718c0ce7d9b04d9eb6777c9bf4cd6d5a99d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 540 zcmV+%0^|LOP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igJ? z3<3arF{K^=00EpyL_t(o!?jmIa>OtQ6P^A4qxLgB_5(@irO99{VLRF8lw@oJLI`Z{ z?;pp+^M%Q0df_X)XBRB|w- z)JNJ({bfEH*^GE%J}LSuGt+HchNsL*_K}&NK9SO_i!>%6rm*9n!f`2T1vrfw%JeQs zu?$a>YZInjF&wINXW%gaM+Tfhbd@WEr_0c-a%I|cS&EXvBFAHqQgrhdfK9+NtZP}W zl|EW71(x5=^d>|U49C)J1y5H)QNwAitd;^bO*`2cwbJmVQlMSItEPE~tk7~TwXqVZ zXD#j!CYyj5A0@+g!S3cmE$sOAF{LQ=kuqtP6!+m#ism10A7C1OMf`WPvp&<9wgEil zI3tHQ1`mW<_@ikLRn3e#*HZiN*_px=ahIg|xsX=Po%R`;&QVurW{PbD%`Nuax_wZI zX6-{t^Q~bx)(h>fN}Q%kf%@nuv?WGOC0R{-Dsopequ0GnX`%yWMH{|OwshxubOita ebHEM%_51>fOadPl6K+}n0000 Date: Wed, 23 Feb 2011 18:00:58 +0100 Subject: [PATCH 4/6] Feature #495: Define VAR_LOCATION in SunstoneServer.rb for get_vm_log and get_configuration to work --- src/sunstone/models/SunstoneServer.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/sunstone/models/SunstoneServer.rb b/src/sunstone/models/SunstoneServer.rb index d42a10fceb..fbb9422c82 100644 --- a/src/sunstone/models/SunstoneServer.rb +++ b/src/sunstone/models/SunstoneServer.rb @@ -16,6 +16,14 @@ # TBD Change path for intallation tree +ONE_LOCATION = ENV["ONE_LOCATION"] + +if !ONE_LOCATION + VAR_LOCATION = "/var/lib/one" +else + VAR_LOCATION = ONE_LOCATION+"/var" +end + #require 'OpenNebulaJSON' require 'models/OpenNebulaJSON' include OpenNebulaJSON @@ -154,7 +162,7 @@ class SunstoneServer if user_id != "0" return [401, ""] end - + one_config = VAR_LOCATION + "/config" config = Hash.new From e0fa485c848ca5dc3b19eb11b0773ef7b1216a9e Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Wed, 23 Feb 2011 18:07:44 +0100 Subject: [PATCH 5/6] Feature #495: Typo in addVMachineElement --- src/sunstone/public/js/one-ui_views.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sunstone/public/js/one-ui_views.js b/src/sunstone/public/js/one-ui_views.js index 3d643492cf..d4e657a03e 100644 --- a/src/sunstone/public/js/one-ui_views.js +++ b/src/sunstone/public/js/one-ui_views.js @@ -2733,7 +2733,7 @@ function deleteVMachineElement(req){ } function addVMachineElement(request,vm_json){ - id = vm_json.VM,ID; + id = vm_json.VM.ID; notifySubmit('OpenNebula.VM.create',id); element = vMachineElementArray(vm_json); addElement(element,dataTable_vMachines); From b0cf374ca88bbf74050421db1bd8ee8d6c1c9aa1 Mon Sep 17 00:00:00 2001 From: Jaime Melis Date: Wed, 23 Feb 2011 18:08:20 +0100 Subject: [PATCH 6/6] Feature #495: Fixed Deploy ID error on undeployed VMs --- src/sunstone/public/js/one-ui_views.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sunstone/public/js/one-ui_views.js b/src/sunstone/public/js/one-ui_views.js index d4e657a03e..c63c004c9c 100644 --- a/src/sunstone/public/js/one-ui_views.js +++ b/src/sunstone/public/js/one-ui_views.js @@ -3021,7 +3021,7 @@ function updateVMInfo(request,vm){ \ \ Deploy ID\ - '+(vm_info.DEPLOY_ID ? vm_info.DEPLOY_ID : "-")+'\ + '+(typeof(vm_info.DEPLOY_ID) == "object" ? "-" : vm_info.DEPLOY_ID)+'\ \ \ \