You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by se...@apache.org on 2017/12/18 21:07:03 UTC

svn commit: r1818625 - /directory/site/trunk/content/studio/developers-guide.mdtext

Author: seelmann
Date: Mon Dec 18 21:07:03 2017
New Revision: 1818625

URL: http://svn.apache.org/viewvc?rev=1818625&view=rev
Log:
Update dev guide, remove outdated documentation, just reference to readme

Modified:
    directory/site/trunk/content/studio/developers-guide.mdtext

Modified: directory/site/trunk/content/studio/developers-guide.mdtext
URL: http://svn.apache.org/viewvc/directory/site/trunk/content/studio/developers-guide.mdtext?rev=1818625&r1=1818624&r2=1818625&view=diff
==============================================================================
--- directory/site/trunk/content/studio/developers-guide.mdtext (original)
+++ directory/site/trunk/content/studio/developers-guide.mdtext Mon Dec 18 21:07:03 2017
@@ -18,103 +18,15 @@ Notice: Licensed to the Apache Software
 
 # Developer's Guide
 
-This is a simple guide to various Apache Directory Studio resources to help developers get going. MThis guide can be found in the [README][README.md] file at the top level of the source tree.
+This is a simple guide to various Apache Directory Studio resources to help developers get going. This guide can be found in the [README][README.md] file at the top level of the source tree.
 
 ## Source Repository
 
 The [Source repository](source-repository.html) page describes source code location and organization.
 
-
-
 ## Build
 
 The [README][README.md] describes how to build from source.
-Also on [Github](https://github.com/apache/directory-studio#build-from-command-line). 
-
-### Prerequisties
-
-* JDK 8 or newer
-* Maven 3 or newer
-* Sufficient heap space for Maven: `export MAVEN_OPTS="-Xmx512m"`
-* FIXME: Windows users have to replace the repository location `file://${basedir}/target/repository` in `eclipse-trgt-platform/template/org.apache.directory.studio.eclipse-trgt-platform.template` with the actual path, e.g. `file:///C:/Development/studio/eclipse-trgt-platform/target/repository`
-
-### building
-
-You can use either of those two methods to build the project :
-
-* Do it manually
-
-Build the 'Eclipse Target Platform' and generate MANIFEST.MF files first
-
-    mvn -f pom-first.xml clean install
-
-Build the main eclipse artifacts using Tycho
-
-    mvn clean install
-
-* Use the script  (which runs the two previous commands)
-
-On Linux / Mac OS X :
-
-    $ ./build.sh
-
-or on Windows :
-
-    > build.bat
-
-### Tests
-
-* Unit tests included in src/test/java of each plugin are executed automatically and run in 'test' phase
-* Core integration tests in tests/test.integration.core are executed automatically and run in 'integration-test' phase
-* SWTBot based UI integration tests in tests/test.integration.ui are disabled by default. They can be enabled with -Denable-ui-tests. A failing test generates a screenshot. To not block the developer computer they can run within a virtual framebuffer:
-
-        export DISPLAY=:99
-        Xvfb :99 -screen 0 1024x768x16 &
-
-### Build issues
-
-Tycho doesn't handle snapshot dependencies well. The first time a snapshot dependency is used within the build it is cached in `~/.m2/repository/p2`. Afterwards any change in the dependency (e.g. ApacheDS or LDAP API) is the considered unless it is deleted from the cache.
-
-
-## Setup Eclipse
-
-The [README][README.md] describes how to setup your Eclipse workspace to work on Apache Directory Studio.
-Also on [Github](https://github.com/apache/directory-studio#setup-eclipse-workspace).
-
-Recommended IDE is 'Eclipse (Luna) for RCP Developers': <http://www.eclipse.org/downloads/packages/eclipse-rcp-and-rap-developers/lunasr2>
-
-1. Import 'Eclipse Target Platorm' project first
-
-    * File -> Import... -> Maven -> Existing Maven Projects
-    * Choose 'studio/eclipse-trgt-platform' as root directory
-    * Only this single project is selected
-    * Finish
-
-2. Initialize target platform
-
-    * Open the `eclipse-trgt-platform.target` file with the 'Target Editor'
-    * In the top right corner click 'Set as Target Platform'
-
-3. Import the main plugins
-
-    * File -> Import... -> Maven -> Existing Maven Projects
-    * Chosse 'studio' as root directory
-    * All the plugins are selected
-    * Finish
-
-During import some Maven plugin connectors need to be installed, accept the installation and restart.
-
-## Run
-
-### From command line
-
-The build produces binaries for all platforms. Archived versions can be found in `product/target/products/`, unpacked versions can be found below `product/target/products/org.apache.directory.studio.product`
-
-### Within Eclipse
-
-* Open the product configuration 'org.apache.directory.studio.product' with the Product Configuration Editor
-* Click the link 'Launch an Eclipse application'
-
 
 ## Issue Tracker
 
@@ -123,173 +35,12 @@ The build produces binaries for all plat
 ## Release
 
 The release process is described within the [README][README.md].
-Also on [Github](https://github.com/apache/directory-studio#release).
-
-(Attempts, not fully tested yet...)
-
-### Release artifacts
-
-We release the following artifacts:
-
-* Source zip (the main artifact we vote on)
-* Maven artifacts
-    * poms
-    * plugins: pom, jar, javadoc, src
-    * features: pom, jar, src
-    * helps: pom, jar, src
-* P2 repositories
-    * the main features (LDAP Browser, Schema Editor, ApacheDS)
-    * dependencies
-* Product archives for
-    * Linux GTK 32bit tar.gz
-    * Linux GTK 64bit tar.gz
-    * Mac OS X 64bit tar.gz
-    * Windows 32bit zip
-    * Windows 64bit zip
-* Userguides
-
-### Preparation
-
-Test the release build: rat check, javadoc and source jar generation, GPG signing, userguide generation
-
-    mvn -f pom-first.xml clean install
-    mvn -Papache-release -Duserguides clean install
-
-Run UI tests (if possible on all platforms)
-
-    mvn clean install -Denable-ui-tests
-
-
-### Release build steps
-
-As Tycho doesn't support the maven-release-plugin the release process is as follows:
-
-#### Define release version
-
-We use a release number scheme that suites for both, Maven and Eclipse.
-
-    <MAJOR>.<MINOR>.<PATCH>.v<YYYYMMDD>[-M<X>|RC<X>]
-
-Example for milestone version: `2.0.0.v20150529-M9`. Example for GA version: `2.0.1.v20150529`.
-
-Define a variable for later use:
-
-    export VERSION=2.0.0.v20150529-M9
-
-Also create an empty directory used during the release process and store it in a variable:
-
-    export RELEASE_DIR=$(pwd)
-
-#### Create and checkout branch
-
-    cd $RELEASE_DIR
-    svn copy https://svn.apache.org/repos/asf/directory/studio/trunk https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION -m "Prepare release $VERSION"
-    svn checkout https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION branch-$VERSION
-    cd branch-$VERSION
-
-#### Set the version
-
-    find . -name pom-first.xml | xargs sed -i '' "s/2.0.0-SNAPSHOT/$VERSION/"
-    find . -name pom-first.xml | xargs sed -i '' "s/2.0.0.qualifier/$VERSION/"
-    sed -i '' "s/2.0.0-SNAPSHOT/$VERSION/" pom.xml
-    mvn -f pom-first.xml clean install
-    svn revert pom.xml
-    mvn org.eclipse.tycho:tycho-versions-plugin:0.22.0:set-version -DnewVersion=$VERSION
-    svn commit -m "Set version number for release $VERSION"
-
-#### Commit
-
-    svn commit -m "Set version number for release $VERSION"
-
-#### Create and checkout tag
-
-    cd $RELEASE_DIR
-    svn copy https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION https://svn.apache.org/repos/asf/directory/studio/tags/$VERSION -m "Tag release $VERSION"
-    svn checkout https://svn.apache.org/repos/asf/directory/studio/tags/$VERSION tag-$VERSION
-    cd tag-$VERSION
-
-#### Build the release and deploy to staging Nexus repository
-
-    mvn -f pom-first.xml clean install
-    mvn -Papache-release -Duserguides -DretryFailedDeploymentCount=3 clean deploy
-
-#### Close the staging Nexus repository
-
-See <https://repository.apache.org/#stagingRepositories>.
-
-#### Package and sign distribution packages
-
-There is a script that collects and signs all update sites and distribution packages.
-
-For non-interactive signing with GPG agent define env variable:
-
-    export RELEASE_KEY=28686142
-
-Run the dist script:
-
-    cd dist
-    ./dist.sh
-
-Afterwards all distribution packages are located in `target`.
-
-### Call the vote
-
-Upload `target/$VERSION` to people.apache.org
-
-    scp -r target/$VERSION people.apache.org:~/public_html/
-
-and start the vote.
-
-### Publish
-
-After successful vote we can publish the artifacts
-
-* Release artifacts in Nexus
-* Commit distribution packages to https://dist.apache.org/repos/dist/release/directory/studio, the content of `dist/target` can be used as-is.
-
-Wait 24h for mirror rsync.
-
-#### Update site
-
-The update site https://svn.apache.org/repos/asf/directory/site/trunk/content/studio/update needs to be updated.
-
-In the following files
-
-* compositeArtifacts--xml.html
-* compositeContent--xml.html
-* product/compositeArtifacts--xml.html
-* product/compositeContent--xml.html
-
-change the location path to the new release and also update the `p2.timestamp` to the current timestamp milliseconds (hint: `date +%s000`)
-
-#### Website
-
-Update news and download links
-
-* Versions in `lib/path.pm`
-* content/studio/changelog.mdtext
-* content/studio/news.mdtext
-
-#### User guides
-
-TODO
-
-#### Cleanup
-
-Delete old releases.
-
-
-## Misc tips and tricks
-
-How to search features, plugins, versions in P2 repo?
-
-<https://stackoverflow.com/questions/10025599/how-to-find-out-which-feature-contains-a-needed-plug-in-on-an-eclipse-download-s>
 
 ## Internationalization
 
 The [Internationalization](internationalization.html) page describes how to enable multi-language support in the GUI (I18n).
 
 
-[README.md]: https://svn.apache.org/repos/asf/directory/studio/trunk/README.md
+[README.md]: https://github.com/apache/directory-studio/blob/master/README.md