Added a join the community link with instructions on basic steps.
Project: http://git-wip-us.apache.org/repos/asf/vxquery/repo Commit: http://git-wip-us.apache.org/repos/asf/vxquery/commit/73106328 Tree: http://git-wip-us.apache.org/repos/asf/vxquery/tree/73106328 Diff: http://git-wip-us.apache.org/repos/asf/vxquery/diff/73106328 Branch: refs/heads/master Commit: 73106328761c3faaec04e015455e65551318b7e4 Parents: f7bd349 Author: Eldon Carman <[email protected]> Authored: Thu Mar 5 16:02:43 2015 -0800 Committer: Eldon Carman <[email protected]> Committed: Wed Apr 1 11:34:54 2015 -0700 ---------------------------------------------------------------------- src/site/apt/development_eclipse_setup.apt | 4 + src/site/apt/development_release.apt | 205 ++++++++++++++++++++++++ src/site/apt/join_the_community.apt | 61 +++++++ src/site/apt/release.apt | 205 ------------------------ src/site/site.xml | 5 +- 5 files changed, 274 insertions(+), 206 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/vxquery/blob/73106328/src/site/apt/development_eclipse_setup.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/development_eclipse_setup.apt b/src/site/apt/development_eclipse_setup.apt index cf259b3..14b30bd 100644 --- a/src/site/apt/development_eclipse_setup.apt +++ b/src/site/apt/development_eclipse_setup.apt @@ -20,11 +20,15 @@ Eclipse Setup * Installation + * Install Java Development Kit (JDK) 1.7 or Later + * Install Classic Eclipse Follow the instruction for eclipse on from {{{http://www.eclipse.org}www.eclipse.org}} for the "Classic" eclipse version. + * Install Apache Maven + * Install Maven Integration (m2e) VXQuery uses {{{http://maven.apache.org/}Maven}} to define external libraries and build instructions. http://git-wip-us.apache.org/repos/asf/vxquery/blob/73106328/src/site/apt/development_release.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/development_release.apt b/src/site/apt/development_release.apt new file mode 100644 index 0000000..6071b8e --- /dev/null +++ b/src/site/apt/development_release.apt @@ -0,0 +1,205 @@ +~~ Licensed to the Apache Software Foundation (ASF) under one or more +~~ contributor license agreements. See the NOTICE file distributed with +~~ this work for additional information regarding copyright ownership. +~~ The ASF licenses this file to You 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. + +Releasing Apache VXQuery\x99 + +* One time steps + + * set up directory structure + + There usually are 3 directories at the same level + + * the source directory <<<vxquery>>>, + + * the <<<site>>> directory, and + + * the distribution directory <<<dist>>>. + + The source directory is version-controlled by <<<git>>>, the other two + are version controlled by <<<svn>>>. + While the source directory and the distribution directory can have + arbitrary names and locations, the <<<site>>> directory has to be called + <<<site>>> and it needs to be at the same level as the source directory + to enable site deployment. + + Assuming that the source directory is available one can create the + directory structure by going to the directory that contains the + source directory and checking out the distribution and site + directories: + +--- +$ svn co https://dist.apache.org/repos/dist/release/vxquery dist +$ svn co https://svn.apache.org/repos/asf/vxquery/site +--- + + * create a code signing key with the Apache {{{http://www.apache.org/dev/openpgp.html#generate-key}instructions}} and example settings + + * add your key to the <<<KEYS>>> file + + Change into the <<<dist>>> directory and run + +--- +(gpg2 --list-sigs <your name> && gpg2 --armor --export <your name>) >> KEYS +--- + + and then check the new <<<KEYS>>> file into svn + +--- +$ svn ci -m "add [YOUR NAME]'s key to KEYS file" +--- + + * create an encrypted version of your Apache LDAP password for the nexus repository at {{{https://repository.apache.org/}https://repository.apache.org/}} + + Follow the steps in the {{{http://maven.apache.org/guides/mini/guide-encryption.html}Password Encryption}} + guide to encrypt a master password and to encrypt your Apache LDAP password. + (It's nicer if you have maven > 3.2.1 to do this.) + + * add to <<<~/.m2/settings.xml>>> + + * for the upload to the nexus repository + +--- +<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 + http://maven.apache.org/xsd/settings-1.0.0.xsd"> +... + <servers> + ... + <!-- To publish a snapshot of some part of Maven --> + <server> + <id>apache.snapshots.https</id> + <username>[YOUR APACHE LDAP USERNAME]</username> + <password>[YOUR APACHE LDAP PASSWORD (encrypted)]</password> + </server> + <!-- To stage a release of some part of Maven --> + <server> + <id>apache.releases.https</id> + <username>[YOUR APACHE LDAP USERNAME]</username> + <password>[YOUR APACHE LDAP PASSWORD (encrypted)]</password> + </server> + ... + </servers> +... +</settings> +--- + + * to sign the artifacts + +--- + <profiles> + <profile> + <id>apache-release</id> + <properties> + <gpg.executable>gpg2</gpg.executable> + <gpg.passphrase>...</gpg.passphrase> + </properties> + </profile> + </profiles> +--- + + * Download Apache Rat from {{{https://creadur.apache.org/rat/download_rat.cgi}https://creadur.apache.org/rat/download_rat.cgi}}. + + * Add your ssh key to {{{https://id.apache.org}id.apache.org}} (required to create a website on {{{https://people.apache.org}people.apache.org}}). + + * Login and update your profile details. + +* Each time steps + + * clean up + +--- +$ mvn clean +--- + + * run rat (always do this on a clean source folder): + +--- +$ java -jar ~/Downloads/apache-rat-0.11/apache-rat-0.11.jar -d . -E .rat-excludes +--- + + * test your setup + +--- +$ mvn install -Papache-release +--- + + * dry run of the release process + +--- +$ mvn release:prepare -DdryRun=true +--- + + * check (and fix) the content of the <<<LICENSE>>> and <<<NOTICE>>> files (especially the date) and the copyright dates in changed files + + * release to the staging repository + +--- +$ mvn release:prepare +$ mvn release:perform +--- + + * close the staging repository at {{{https://repository.apache.org/}https://repository.apache.org/}} + + * check that the artifacts are available in the repository + + * send out <<<[VOTE]>>> e-mail on [email protected] + + * {{{http://mail-archives.apache.org/mod_mbox/vxquery-dev/201409.mbox/%3CCAGZxfJUZDczuZR5jQResE4B7%2Bv4QQgwMpAd%2B-_Kt-U_RjCyReA%40mail.gmail.com%3E}example e-mail}} + + * after successful vote promote staging repository {{{https://repository.apache.org/}https://repository.apache.org/}} + + * add new source artifacts (archive + signature + hashes) to svn {{{https://dist.apache.org/repos/dist/release/vxquery}https://dist.apache.org/repos/dist/release/vxquery}} and remove old release dirctory + + * commit changes to svn + + * update the <<<site>>> branch in git from the from the release-tag + + * build a new site and deploy it to <<<../site>>> + +--- +$ mvn site site:deploy +--- + + * submit the site to svn + +--- +$ cd ../site +$ svn st | awk '/\?/ { print $2 }' | xargs svn add # add all new files +$ svn ci -m"updated site" +$ cd - +--- + + * wait a few days for the mirroring of the release artifacts + + * send <<<[ANNOUNCE]>>> e-mail to [email protected] and [email protected] + + * {{{http://mail-archives.apache.org/mod_mbox/www-announce/201405.mbox/%[email protected]%3E}example e-mail}} + +* References + + * {{{https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven}How To Generate PGP Signatures With Maven}} + + * {{{https://www.apache.org/dev/publishing-maven-artifacts.html}Publishing Maven Artifacts}} + +~~ * Handling issues +~~ +~~ ** Undo release plugin: +~~ +~~ --- +~~ $ svn merge -r 1526098:1524606 https://svn.apache.org/repos/asf/vxquery/branches/vxquery_0_2_staging +~~ $ svn del -m "re-releasing build" https://svn.apache.org/repos/asf/vxquery/tags/apache-vxquery-0.2-incubating +~~ --- + http://git-wip-us.apache.org/repos/asf/vxquery/blob/73106328/src/site/apt/join_the_community.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/join_the_community.apt b/src/site/apt/join_the_community.apt new file mode 100644 index 0000000..75c6b07 --- /dev/null +++ b/src/site/apt/join_the_community.apt @@ -0,0 +1,61 @@ +~~ Licensed to the Apache Software Foundation (ASF) under one or more +~~ contributor license agreements. See the NOTICE file distributed with +~~ this work for additional information regarding copyright ownership. +~~ The ASF licenses this file to You 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. + +Joining the Apache VXQuery Community + + The following steps are here to help new Apache VXQuery developer get up to speed. + These steps will connect you with the community and give you a place to start. + +* Community Member + + * Sign up for the mailing list: [email protected] + + * Download the latest release and run a few queries. + + * {{{http://vxquery.apache.org/user_installation.html}Installation instructions}}. + + * {{{http://vxquery.apache.org/user_query.html}Execute a query}}. + + * If you want more information on XQuery: + + * Go through the {{{http://www.w3schools.com/xquery/}W3Schools XQuery tutorial}}. + + * Review the {{{http://www.w3.org/TR/xquery/}XQuery specification}}. + +* Developer + + * Go through the community member steps. + + * Setup your eclipse development environment. + + * {{{http://vxquery.apache.org/development_eclipse_setup.html}Setup instructions}}. + + * XQuery has a test suite to verify XQuery specifications. + + * Run the test suite for XQTS. + + * {{{http://vxquery.apache.org/user_running_tests.html}Testing instructions}}. + + * Review the test structure. + + * Code is found in the "VXQuery XTest" module. + + * Review open issues for the project. + + * {{{http://vxquery.apache.org/issue-tracking.html}Issues list}}. + + + + http://git-wip-us.apache.org/repos/asf/vxquery/blob/73106328/src/site/apt/release.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/release.apt b/src/site/apt/release.apt deleted file mode 100644 index 6071b8e..0000000 --- a/src/site/apt/release.apt +++ /dev/null @@ -1,205 +0,0 @@ -~~ Licensed to the Apache Software Foundation (ASF) under one or more -~~ contributor license agreements. See the NOTICE file distributed with -~~ this work for additional information regarding copyright ownership. -~~ The ASF licenses this file to You 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. - -Releasing Apache VXQuery\x99 - -* One time steps - - * set up directory structure - - There usually are 3 directories at the same level - - * the source directory <<<vxquery>>>, - - * the <<<site>>> directory, and - - * the distribution directory <<<dist>>>. - - The source directory is version-controlled by <<<git>>>, the other two - are version controlled by <<<svn>>>. - While the source directory and the distribution directory can have - arbitrary names and locations, the <<<site>>> directory has to be called - <<<site>>> and it needs to be at the same level as the source directory - to enable site deployment. - - Assuming that the source directory is available one can create the - directory structure by going to the directory that contains the - source directory and checking out the distribution and site - directories: - ---- -$ svn co https://dist.apache.org/repos/dist/release/vxquery dist -$ svn co https://svn.apache.org/repos/asf/vxquery/site ---- - - * create a code signing key with the Apache {{{http://www.apache.org/dev/openpgp.html#generate-key}instructions}} and example settings - - * add your key to the <<<KEYS>>> file - - Change into the <<<dist>>> directory and run - ---- -(gpg2 --list-sigs <your name> && gpg2 --armor --export <your name>) >> KEYS ---- - - and then check the new <<<KEYS>>> file into svn - ---- -$ svn ci -m "add [YOUR NAME]'s key to KEYS file" ---- - - * create an encrypted version of your Apache LDAP password for the nexus repository at {{{https://repository.apache.org/}https://repository.apache.org/}} - - Follow the steps in the {{{http://maven.apache.org/guides/mini/guide-encryption.html}Password Encryption}} - guide to encrypt a master password and to encrypt your Apache LDAP password. - (It's nicer if you have maven > 3.2.1 to do this.) - - * add to <<<~/.m2/settings.xml>>> - - * for the upload to the nexus repository - ---- -<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 - http://maven.apache.org/xsd/settings-1.0.0.xsd"> -... - <servers> - ... - <!-- To publish a snapshot of some part of Maven --> - <server> - <id>apache.snapshots.https</id> - <username>[YOUR APACHE LDAP USERNAME]</username> - <password>[YOUR APACHE LDAP PASSWORD (encrypted)]</password> - </server> - <!-- To stage a release of some part of Maven --> - <server> - <id>apache.releases.https</id> - <username>[YOUR APACHE LDAP USERNAME]</username> - <password>[YOUR APACHE LDAP PASSWORD (encrypted)]</password> - </server> - ... - </servers> -... -</settings> ---- - - * to sign the artifacts - ---- - <profiles> - <profile> - <id>apache-release</id> - <properties> - <gpg.executable>gpg2</gpg.executable> - <gpg.passphrase>...</gpg.passphrase> - </properties> - </profile> - </profiles> ---- - - * Download Apache Rat from {{{https://creadur.apache.org/rat/download_rat.cgi}https://creadur.apache.org/rat/download_rat.cgi}}. - - * Add your ssh key to {{{https://id.apache.org}id.apache.org}} (required to create a website on {{{https://people.apache.org}people.apache.org}}). - - * Login and update your profile details. - -* Each time steps - - * clean up - ---- -$ mvn clean ---- - - * run rat (always do this on a clean source folder): - ---- -$ java -jar ~/Downloads/apache-rat-0.11/apache-rat-0.11.jar -d . -E .rat-excludes ---- - - * test your setup - ---- -$ mvn install -Papache-release ---- - - * dry run of the release process - ---- -$ mvn release:prepare -DdryRun=true ---- - - * check (and fix) the content of the <<<LICENSE>>> and <<<NOTICE>>> files (especially the date) and the copyright dates in changed files - - * release to the staging repository - ---- -$ mvn release:prepare -$ mvn release:perform ---- - - * close the staging repository at {{{https://repository.apache.org/}https://repository.apache.org/}} - - * check that the artifacts are available in the repository - - * send out <<<[VOTE]>>> e-mail on [email protected] - - * {{{http://mail-archives.apache.org/mod_mbox/vxquery-dev/201409.mbox/%3CCAGZxfJUZDczuZR5jQResE4B7%2Bv4QQgwMpAd%2B-_Kt-U_RjCyReA%40mail.gmail.com%3E}example e-mail}} - - * after successful vote promote staging repository {{{https://repository.apache.org/}https://repository.apache.org/}} - - * add new source artifacts (archive + signature + hashes) to svn {{{https://dist.apache.org/repos/dist/release/vxquery}https://dist.apache.org/repos/dist/release/vxquery}} and remove old release dirctory - - * commit changes to svn - - * update the <<<site>>> branch in git from the from the release-tag - - * build a new site and deploy it to <<<../site>>> - ---- -$ mvn site site:deploy ---- - - * submit the site to svn - ---- -$ cd ../site -$ svn st | awk '/\?/ { print $2 }' | xargs svn add # add all new files -$ svn ci -m"updated site" -$ cd - ---- - - * wait a few days for the mirroring of the release artifacts - - * send <<<[ANNOUNCE]>>> e-mail to [email protected] and [email protected] - - * {{{http://mail-archives.apache.org/mod_mbox/www-announce/201405.mbox/%[email protected]%3E}example e-mail}} - -* References - - * {{{https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven}How To Generate PGP Signatures With Maven}} - - * {{{https://www.apache.org/dev/publishing-maven-artifacts.html}Publishing Maven Artifacts}} - -~~ * Handling issues -~~ -~~ ** Undo release plugin: -~~ -~~ --- -~~ $ svn merge -r 1526098:1524606 https://svn.apache.org/repos/asf/vxquery/branches/vxquery_0_2_staging -~~ $ svn del -m "re-releasing build" https://svn.apache.org/repos/asf/vxquery/tags/apache-vxquery-0.2-incubating -~~ --- - http://git-wip-us.apache.org/repos/asf/vxquery/blob/73106328/src/site/site.xml ---------------------------------------------------------------------- diff --git a/src/site/site.xml b/src/site/site.xml index 430945a..fab70dc 100644 --- a/src/site/site.xml +++ b/src/site/site.xml @@ -53,6 +53,9 @@ limitations under the License. <item name="Download" href="http://www.apache.org/dyn/closer.cgi/vxquery/" /> + <item + name="Join the Community" + href="join_the_community.html" /> </menu> <menu name="For Users"> @@ -79,7 +82,7 @@ limitations under the License. href="development_eclipse_setup.html" /> <item name="Release Steps" - href="release.html" /> + href="development_release.html" /> <item name="Update Local Git XQTS Results" href="development_update_xqts_results.html" />
