This is just to enforce a symlink. For example, when I install and remove 
CloudStack for the first time, the symlink will be created and will point to a 
location which does not exist (as I removed it).
Then, when I try to install again, it will simply give a warning. By doing ln 
-sf, we enforce symlink just in case there is an existing symlink it would set 
it to correct path. 
The other change, -h instead of -e (in if conditional) is to check for symlink 
existence.

Regards.
________________________________________
From: David Nalley [da...@gnsa.us]
Sent: Monday, October 08, 2012 11:11 PM
To: cloudstack-dev@incubator.apache.org
Subject: Re: git commit: CLOUDSTACK-221: Force symlink if any existing symlink

>
> CLOUDSTACK-221: Force symlink if any existing symlink
>
> Force symlink, in case there is an existing symlink but the file it
> links to does not exist.
>
> ----------------------------------------------------------------------
>  cloud.spec |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e2419250/cloud.spec
> ----------------------------------------------------------------------
> diff --git a/cloud.spec b/cloud.spec
> index 844d486..36860c9 100644
> --- a/cloud.spec
> +++ b/cloud.spec
> @@ -403,7 +403,7 @@ fi
>
>      mkdir -p $target/webapps7080
>      if [ ! -h $target/webapps7080/awsapi ]; then
> -        ln -s $root/webapps7080/awsapi $target/webapps7080/awsapi
> +        ln -sf $root/webapps7080/awsapi $target/webapps7080/awsapi
>      fi
>


Why are we doing this in the first place? What is the underlying
problem? Is there a bug for that? Symlinking a directory is almost
always a hack.

--David

Reply via email to