[PATCH RFC] hosted-setup.sh: Automate trac-admin initenv

SmootherFrOgZ lxtnow at gmail.com
Wed Jun 24 16:56:00 UTC 2009


On Wed, Jun 24, 2009 at 6:16 PM, Todd Zullinger<tmz at pobox.com> wrote:
> This avoids the need for prompting for values that can easily be
> determined from the project name and the new REPOSTYPE argument.
>
> This could be further improved to call a script to setup the
> repository and any mailing lists.
> ---
>
> As I'm still learning my way around sysadmin-hosted, I thought I'd ask
> for some comments before committing a change like this.
>
> In the process of handling requests, I'm hoping to help improve the
> documentation and process so that it is easier and less error-prone.
>
> It should probably also use && after each command so that any failures
> stop execution, but I haven't tested trac-admin to verify that it sets
> the return code or not.
>
>  configs/web/applications/hosted-setup.sh |   23 +++++++++++++++--------
>  1 files changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/configs/web/applications/hosted-setup.sh b/configs/web/applications/hosted-setup.sh
> index 7adf080..42134f6 100644
> --- a/configs/web/applications/hosted-setup.sh
> +++ b/configs/web/applications/hosted-setup.sh
> @@ -1,16 +1,23 @@
>  #!/bin/bash
>
> -usage="Usage: $0 [PROJECT] [ADMIN]"
> +usage="Usage: $0 <PROJECT> <ADMIN> <REPOSTYPE>"
>
> -[ -z "$1" -o -z "$2" ] && {
> +[ -z "$1" -o -z "$2" -o -z "$3" ] && {
>     echo $usage
>     exit 1
>  }
>
> -sudo -u apache trac-admin /srv/web/trac/projects/${1} initenv
> -sudo -u apache trac-admin /srv/web/trac/projects/${1} permission add ${2} TRAC_ADMIN
> -sudo -u apache trac-admin /srv/web/trac/projects/${1} permission add authenticated WIKI_CREATE TICKET_CREATE TICKET_MODIFY WIKI_MODIFY
> -sudo -u apache trac-admin /srv/web/trac/projects/${1} permission remove anonymous WIKI_CREATE TICKET_CREATE TICKET_MODIFY WIKI_MODIFY
> -sudo -u apache chown -R apache.apache /srv/web/trac/projects/${1}
> -sudo -u apache sed -i "s,base_url.*,base_url = https://fedorahosted.org/${1}/," /srv/web/trac/projects/${1}/conf/trac.ini
> +projectname="$1"
> +projectadmin="$2"
> +db="sqlite:db/trac.db"
> +repostype="$3"
> +repospath="/srv/$repostype/$projectname"
> +[ "$repostype" = "git" ] && repospath="$repospath.git"
> +templatepath="$(python -c 'from trac.config import default_dir; print default_dir("templates")')"
>
> +sudo -u apache trac-admin /srv/web/trac/projects/$projectname initenv $projectname $db $repostype $repospath $templatepath
> +sudo -u apache trac-admin /srv/web/trac/projects/$projectname permission add $projectadmin TRAC_ADMIN
> +sudo -u apache trac-admin /srv/web/trac/projects/$projectname permission add authenticated WIKI_CREATE TICKET_CREATE TICKET_MODIFY WIKI_MODIFY
> +sudo -u apache trac-admin /srv/web/trac/projects/$projectname permission remove anonymous WIKI_CREATE TICKET_CREATE TICKET_MODIFY WIKI_MODIFY
> +sudo -u apache chown -R apache.apache /srv/web/trac/projects/$projectname
> +sudo -u apache sed -i "s,base_url.*,base_url = https://fedorahosted.org/$projectname/," /srv/web/trac/projects/$projectname/conf/trac.ini
> --
> 1.5.5.6
>

+1



-- 
Xavier.t Lamien
--
http://fedoraproject.org/wiki/XavierLamien
GPG-Key ID: F3903DEB
Fingerprint: 0F2A 7A17 0F1B 82EE FCBF 1F51 76B7 A28D F390 3DEB




More information about the infrastructure mailing list