directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Karasulu <aok...@bellsouth.net>
Subject Re: [site] building and deploying part II
Date Tue, 11 Jan 2005 01:37:53 GMT
Alex Karasulu wrote:

> Hi,
>
> WARNING: I have not yet tried Brett's plugin changes just yet.  This 
> is the next thing I will be doing.
>
I just tested and ran Brett's changes to the site plugin so we can do a 
site:publish which rsyncs a source "stage" area to a "live" 
documentation root for the project.  It worked like a champ after Brett 
massaged it once over in svn on HEAD.  Here's Brett's email on this from 
this morning:

http://mail-archives.apache.org/eyebrowse/ReadMsg?listName=directory-dev@incubator.apache.org&msgNo=3644

After confirming the correct operation of each project with this new 
feature in the plugin I went ahead and setup all the projects to now use 
it.  There is however one pitfall:

CAUTION: site:deploy will deploy to the "live" area if you do not have 
the latest site plugin, and site:publish will do nothing

Yes if you do not checkout and build the plugin from the trunk and 
install it, your deployments will push directly to the live area instead 
of the staging area.  For us in the incubator I don't think this is that 
much of a worry sonce most of the time what we stage we deploy.  However 
based on Brett's advice I'll setup a cron job to run dailly.  The job 
will take the diff of both areas to make sure they are in sync.  If not 
the job can email the list and alert us of a missmatch.

So if you will use site:publish or site:deploy you will need to build 
the site plugin from head after revision 124835.  Here's how I did it 
with a fresh checkout:

1) checkout the plugins from trunk:

    $ svn co http://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk 
maven-plugins-trunk

2) build and install the plugin:

    $ cd maven-plugins-trunk
    $ maven plugin:install

The first time I ran a site goal there was a little hickup so you might 
have to try it again a second time: but it works.  Once this is done you 
can just build and publish like so:

> 1). maven mutliproject site:deploy (for projects with many subprojects)

look at http://www.apache.org/~akarasulu/rsynced-sites/directory and if 
all is good ...

1a). maven site:publish

> 2). maven site:deploy
>
look at http://www.apache.org/~akarasulu/rsynced-sites/directory and if 
all is good ...

2a). maven site:publish

> These commands deploy generated sitedocs to the staging area which is 
> currently in my home directory here:
>
> http://www.apache.org/~akarasulu/rsynced-sites/directory
>
> This is password protected along with the page used to deploy sites to 
> their target docroot.  This is primarily to prevent bots from causing 
> problems.  You can get the username password by cating the following 
> file in my home directory.  All ASF committers should be able to 
> access my home directory and read this file:
>
> ~akarasulu/deployer-userpasswd.txt
>
> Here's the page to hit to deploy the site:
>
> http://www.apache.org/~akarasulu/rsynced-sites
>
> This is protected using the same username password.  Once you get in 
> just hit the deploy button.  It should rsync the changes you have made 
> to files in the staging area to the docroot of your project.

This still works instead of running 'maven site:publish' but why would 
you want to do that?  I sure don't want to launch a browser, enter a 
URL, then a password to publish the site.  This is a much better 
mechanism if you ask me.

If anyone has questions or thoughts please let us know.  Also note that 
Brett will be cutting a release of the site plugin just for Directory 
needs in a short while (day or two).  So for those that don't want to 
build from the trunk you can wait for the release.  Thanks Brett!

Cheers,
Alex



Mime
View raw message