You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by Everett Toews <no...@github.com> on 2014/06/03 20:15:17 UTC

[jclouds-site] A script for deploying Javadoc (#106)

You can merge this Pull Request by running:

  git pull https://github.com/rackerlabs/jclouds-site javadoc-script

Or you can view, comment on it, or merge it online at:

  https://github.com/jclouds/jclouds-site/pull/106

-- Commit Summary --

  * A script for deploying Javadoc

-- File Changes --

    A deploy-javadoc.sh (70)

-- Patch Links --

https://github.com/jclouds/jclouds-site/pull/106.patch
https://github.com/jclouds/jclouds-site/pull/106.diff

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by jclouds-commentator <no...@github.com>.
  Go to http://fa0ccf0a1d7d6ff930a8-ba1bc5306453a3eca1093006327bcc40.r80.cf1.rackcdn.com/ to review your changes.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45001481

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> +  sed -i "" "s#<module>route53</module>#<module>route53</module><module>${api}</module>#g" jclouds/apis/pom.xml
> +done
> +
> +providers="rackspace-autoscale-us rackspace-cloudqueues-us rackspace-cloudqueues-uk rackspace-cloudfiles-uk rackspace-cloudfiles-us"
> +
> +for provider in ${providers}; do
> +  mv jclouds-labs-openstack/${provider} jclouds/providers/
> +  sed -i "" "s#<module>dynect</module>#<module>dynect</module><module>${provider}</module>#g" jclouds/providers/pom.xml
> +done
> +
> +cd jclouds
> +mvn clean javadoc:aggregate -Dnotimestamp=true -DadditionalJOption=-J-Xmx512m
> +
> +cd $DIR
> +
> +mkdir -p $JCLOUDS_VERSION_X

What are we using this for?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13398795

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Ignasi Barrera <no...@github.com>.
Yep, if we're happy with this (I am) we can add the stable ones.
I'd not add the Abiquo one yet, though. I plan (I always plan things I never do xD) to update the provider to the 3.0 version which has a more stable and complete API and hope then it will be ready to be promoted to the main repo. I'd say we can wait until we are worried about its javadocs.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45280149

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-site-pull-requests #335](https://jclouds.ci.cloudbees.com/job/jclouds-site-pull-requests/335/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45232737

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-site-pull-requests #334](https://jclouds.ci.cloudbees.com/job/jclouds-site-pull-requests/334/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45152699

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
> +  sed -i "" "s#<module>route53</module>#<module>route53</module><module>${api}</module>#g" jclouds/apis/pom.xml
> +done
> +
> +providers="rackspace-autoscale-us rackspace-cloudqueues-us rackspace-cloudqueues-uk rackspace-cloudfiles-uk rackspace-cloudfiles-us"
> +
> +for provider in ${providers}; do
> +  mv jclouds-labs-openstack/${provider} jclouds/providers/
> +  sed -i "" "s#<module>dynect</module>#<module>dynect</module><module>${provider}</module>#g" jclouds/providers/pom.xml
> +done
> +
> +cd jclouds
> +mvn clean javadoc:aggregate -Dnotimestamp=true -DadditionalJOption=-J-Xmx512m
> +
> +cd $DIR
> +
> +mkdir -p $JCLOUDS_VERSION_X

Oops. That should be 

    mkdir -p reference/javadoc/$JCLOUDS_VERSION_X/

I'll fix that. It's there to create the Javadoc dir in case it doesn't already exist. e.g. When we move to a new minor version like 1.8.x

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13405223

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by jclouds-commentator <no...@github.com>.
  Go to http://b82d36ea3b23eb00cec5-a24f8e0c9266507e0860747867a16db0.r48.cf1.rackcdn.com/ to review your changes.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45156675

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
Closed #106.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#event-128459154

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Ignasi Barrera <no...@github.com>.
> +if [ "$JAVA_VERSION" -lt "7" ]; then
> +  echo "Use Java 1.7+ to generate the Javadoc."
> +  exit 1
> +fi
> +
> +if [ -z "$1" ]; then
> +  echo "Usage: $0 <JCLOUDS_VERSION>"
> +  exit 1
> +fi
> +
> +JCLOUDS_VERSION=$1
> +JCLOUDS_VERSION_X=`echo $JCLOUDS_VERSION | cut -c 1-3 | awk '{print $1".x"}'`
> +
> +cd $TMPDIR
> +
> +for name in jclouds jclouds-labs-openstack; do

Apologies if this was already discussed in the other javadoc PRs. Is it intentional to omit the jclouds-labs repo and the other labs ones?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13407117

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
No labs providers or APIs for now, I notice. @nacx: a follow-up PR to add those, perhaps? Certainly abiquo and perhaps also jclouds-chef, I can imagine? ;-)

+1 - looks good to me. Thanks, @everett-toews!

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45279715

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> +cd site-content
> +
> +svn status | awk '/^\?/{print $2}' | \
> +    while read filename; do svn --no-auto-props add $filename; done
> +
> +if [ -z "$(svn status)" ]; then
> +    echo "No modified files in svn"
> +else
> +    echo "Modified files in svn:"
> +
> +    svn status
> +
> +    read -p "Are you sure you want to deploy the above changes? (y|n) " -n 1 -r
> +    echo
> +
> +    svn commit --message 'deploy jclouds javadoc site content'

I'm guessing this prompts for credentials?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13398732

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-site-pull-requests #333](https://jclouds.ci.cloudbees.com/job/jclouds-site-pull-requests/333/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45152379

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> and those links will be broken when the next version comes out.

Ah yes, indeed. Let's go with 1.7.x etc. then...


---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45159732

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
@demobox (and anyone else) So what do you think about this approach in general?

We would have the latest Javadoc for each minor release version. e.g.
http://jclouds.apache.org/reference/javadoc/1.6.x/ would contain 1.6.3
http://jclouds.apache.org/reference/javadoc/1.7.x/ would contain 1.7.3

When 1.7.4 comes out 
http://jclouds.apache.org/reference/javadoc/1.7.x/ would contain 1.7.4

We could also do
http://jclouds.apache.org/reference/javadoc/master/
but I don't want to touch that in this PR. That's a separate issue to be dealt with later.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45140063

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
> +apis="openstack-glance openstack-neutron openstack-swift openstack-marconi rackspace-autoscale rackspace-cloudfiles"
> +
> +for api in ${apis}; do
> +  mv jclouds-labs-openstack/${api} jclouds/apis/
> +  sed -i "" "s#<module>route53</module>#<module>route53</module><module>${api}</module>#g" jclouds/apis/pom.xml
> +done
> +
> +providers="rackspace-autoscale-us rackspace-cloudqueues-us rackspace-cloudqueues-uk rackspace-cloudfiles-uk rackspace-cloudfiles-us"
> +
> +for provider in ${providers}; do
> +  mv jclouds-labs-openstack/${provider} jclouds/providers/
> +  sed -i "" "s#<module>dynect</module>#<module>dynect</module><module>${provider}</module>#g" jclouds/providers/pom.xml
> +done
> +
> +cd jclouds
> +mvn clean javadoc:aggregate -Dnotimestamp=true -DadditionalJOption=-J-Xmx512m

Nope. This is all very throw away. The only thing that matters is the generated Javadoc.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13405127

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
@demobox I guess I am a bit concerned about taking up too much space. At 200+ MB a version, it's going to add up pretty quickly with every release. It also becomes harder and harder to `svn co` the svnpubsub repo. 

Tomcat only keeps the latest Javadoc of their major releases around. 

@ke4qqq Do you know if there's a limit to the space we get in svnpubsub?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45153538

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> So what do you think about this approach in general?

I think it looks good. I would just suggest putting the files in

http://jclouds.apache.org/reference/javadoc/1.7.3/

and adding an svn symlink to

http://jclouds.apache.org/reference/javadoc/1.7.x/

That way, we also support links for *specific* versions (even if we only keep the latest one for now), much as we do with our dist links?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45150027

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by jclouds-commentator <no...@github.com>.
  Go to http://0a86fd178a5077054abf-884b3cef964e2425926241444b78551e.r98.cf1.rackcdn.com/ to review your changes.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45233006

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> +
> +JCLOUDS_VERSION=$1
> +JCLOUDS_VERSION_X=`echo $JCLOUDS_VERSION | cut -c 1-3 | awk '{print $1".x"}'`
> +
> +cd $TMPDIR
> +
> +for name in jclouds jclouds-labs-openstack; do
> +  rm -rf ${name}
> +  git clone https://github.com/jclouds/${name}.git
> +  cd ${name}
> +  git checkout ${JCLOUDS_VERSION_X}
> +  git reset --hard ${name}-${JCLOUDS_VERSION}
> +  cd ..
> +done
> +
> +apis="openstack-glance openstack-neutron openstack-swift openstack-marconi rackspace-autoscale rackspace-cloudfiles"

Is there an easy regular expression we could apply to generate this list? E.g. finding all the `<module>...` entries in the parent POM that don't end in `-u[s|k]`? Or add a comment such as `<!-- api -->` to the POM?

For the jclouds-labs-openstack stuff, this may well be overkill - just thinking about this if we decide to add the labs Javadoc too?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13399066

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
Looks cool - thanks, @everett-toews! Two main questions:

* would it make sense to use the actual version for the directory name and an svn symlink pointing to it? That way, we _could_ support multiple Javadoc versions if we wanted to...or do we think that will take up too much space?
* include jclouds-labs here, too?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45122832

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> +
> +JCLOUDS_VERSION=$1
> +JCLOUDS_VERSION_X=`echo $JCLOUDS_VERSION | cut -c 1-3 | awk '{print $1".x"}'`
> +
> +cd $TMPDIR
> +
> +for name in jclouds jclouds-labs-openstack; do
> +  rm -rf ${name}
> +  git clone https://github.com/jclouds/${name}.git
> +  cd ${name}
> +  git checkout ${JCLOUDS_VERSION_X}
> +  git reset --hard ${name}-${JCLOUDS_VERSION}
> +  cd ..
> +done
> +
> +apis="openstack-glance openstack-neutron openstack-swift openstack-marconi rackspace-autoscale rackspace-cloudfiles"

> This needs to be a highly curated list. Other labs repos should do the same.

OK, clear. A fixed list it is, then! ;-)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13410191

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
I would just as soon put the Javadoc files directly in 1.7.x. If specific version dirs exist, people will pass out links to specific versions (e.g. http://jclouds.apache.org/reference/javadoc/1.7.3/org/apache/jclouds/Whatever) and those links will be broken when the next version comes out. 

If people pass out links to http://jclouds.apache.org/reference/javadoc/1.7.x/org/apache/jclouds/Whatever then those should continue to work in perpetuity.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45154799

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
> +
> +JCLOUDS_VERSION=$1
> +JCLOUDS_VERSION_X=`echo $JCLOUDS_VERSION | cut -c 1-3 | awk '{print $1".x"}'`
> +
> +cd $TMPDIR
> +
> +for name in jclouds jclouds-labs-openstack; do
> +  rm -rf ${name}
> +  git clone https://github.com/jclouds/${name}.git
> +  cd ${name}
> +  git checkout ${JCLOUDS_VERSION_X}
> +  git reset --hard ${name}-${JCLOUDS_VERSION}
> +  cd ..
> +done
> +
> +apis="openstack-glance openstack-neutron openstack-swift openstack-marconi rackspace-autoscale rackspace-cloudfiles"

Not really. We need to be very explicit about what were bringing in. There may be apis/providers in the repo that might not even be in working condition. This needs to be a highly curated list. Other labs repos should do the same.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13405079

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-site-pull-requests #331](https://jclouds.ci.cloudbees.com/job/jclouds-site-pull-requests/331/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45001227

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Ignasi Barrera <no...@github.com>.
> @@ -0,0 +1,70 @@
> +#!/bin/sh
> +
> +set -o errexit
> +
> +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

Is this `BASH_SOURCE` variable available in the `sh` shell? If it is bash specific, the script header should be changed to `#!/bin/bash`. Related to this, if I am not wrong the `-n` parameter in the `read` command is bash specific too.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13407290

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by jclouds-commentator <no...@github.com>.
  Go to http://4840c547599b10f6c624-09c9d0aeffb0c6ba084daca9a2e93f89.r53.cf1.rackcdn.com/ to review your changes.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45141976

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
>  I'd say we can wait until we are worried about its javadocs

Certainly! Adding only the stable ones obviously makes sense ;-)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45282874

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
Merged.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45243207

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
> @@ -0,0 +1,70 @@
> +#!/bin/sh
> +
> +set -o errexit
> +
> +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

Good catch. I meant /bin/bash.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13409841

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by jclouds-commentator <no...@github.com>.
  Go to http://98b443811e16669ee07d-972a7e64cd9ef932d19f60cc082837be.r62.cf1.rackcdn.com/ to review your changes.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45154332

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Ignasi Barrera <no...@github.com>.
> @@ -0,0 +1,70 @@
> +#!/bin/sh
> +
> +set -o errexit
> +
> +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

Mind changing the `deploy-site.sh` header too then? The "-n" parameter in the read command is throwing errors there. I wasn't sure if I had something wrong in my machine :)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13410362

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
>  I guess I am a bit concerned about taking up too much space.

Fair point. Then let's delete all but the latest version? I.e. for 1.7.3, we would upload http://jclouds.apache.org/reference/javadoc/1.7.3/ and point http://jclouds.apache.org/reference/javadoc/1.7.x/ to it.

Once 1.7.4 is released, we would upload it to http://jclouds.apache.org/reference/javadoc/1.7.4/, delete http://jclouds.apache.org/reference/javadoc/1.7.3/ and point http://jclouds.apache.org/reference/javadoc/1.7.x/ at 1.7.4.

Also fine with the current suggestion if we feel that's too much effort. It could always be added later, after all.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45154064

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-site-pull-requests #332](https://jclouds.ci.cloudbees.com/job/jclouds-site-pull-requests/332/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106#issuecomment-45139666

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
> +cd site-content
> +
> +svn status | awk '/^\?/{print $2}' | \
> +    while read filename; do svn --no-auto-props add $filename; done
> +
> +if [ -z "$(svn status)" ]; then
> +    echo "No modified files in svn"
> +else
> +    echo "Modified files in svn:"
> +
> +    svn status
> +
> +    read -p "Are you sure you want to deploy the above changes? (y|n) " -n 1 -r
> +    echo
> +
> +    svn commit --message 'deploy jclouds javadoc site content'

Yes

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13405263

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Everett Toews <no...@github.com>.
> +if [ "$JAVA_VERSION" -lt "7" ]; then
> +  echo "Use Java 1.7+ to generate the Javadoc."
> +  exit 1
> +fi
> +
> +if [ -z "$1" ]; then
> +  echo "Usage: $0 <JCLOUDS_VERSION>"
> +  exit 1
> +fi
> +
> +JCLOUDS_VERSION=$1
> +JCLOUDS_VERSION_X=`echo $JCLOUDS_VERSION | cut -c 1-3 | awk '{print $1".x"}'`
> +
> +cd $TMPDIR
> +
> +for name in jclouds jclouds-labs-openstack; do

Not at all. Any api/provider is welcome. :)

We're just getting started with this so I only included what I know and was sure about what to be included. More apis/providers from labs repos can be added in subsequent PRs. Before we actually publish this for the first time.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13409963

Re: [jclouds-site] A script for deploying Javadoc (#106)

Posted by Andrew Phillips <no...@github.com>.
> +apis="openstack-glance openstack-neutron openstack-swift openstack-marconi rackspace-autoscale rackspace-cloudfiles"
> +
> +for api in ${apis}; do
> +  mv jclouds-labs-openstack/${api} jclouds/apis/
> +  sed -i "" "s#<module>route53</module>#<module>route53</module><module>${api}</module>#g" jclouds/apis/pom.xml
> +done
> +
> +providers="rackspace-autoscale-us rackspace-cloudqueues-us rackspace-cloudqueues-uk rackspace-cloudfiles-uk rackspace-cloudfiles-us"
> +
> +for provider in ${providers}; do
> +  mv jclouds-labs-openstack/${provider} jclouds/providers/
> +  sed -i "" "s#<module>dynect</module>#<module>dynect</module><module>${provider}</module>#g" jclouds/providers/pom.xml
> +done
> +
> +cd jclouds
> +mvn clean javadoc:aggregate -Dnotimestamp=true -DadditionalJOption=-J-Xmx512m

Would it make sense to save the output of this to a log file?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-site/pull/106/files#r13398823