SDK Supported Features and Test plan

Ole Hejlskov edited this page Mar 3, 2016 · 21 revisions

Access a release candidate

Getting the artifacts

To test a release candidate you need to get the URL for the artifacts on the staging area on Maven Central. This will be provided by the release manager. For example for 2.2.0 the URL is https://oss.sonatype.org/content/repositories/orgalfresco-1032/

The URL changes for every release candidate, so make sure you are using the correct one

Adding the staging repository

For Maven to be able to resolve the artifacts you need to put the URL for the staging repository into your settings.xml. This can be done by adding this profile to your ~/.m2/settings.xml:

Make sure to replace the <url> to the provided url, it changes for every release candidate

  <profile>
    <id>alfresco-dev</id>
        <repositories>
            <repository>
                <id>alfresco-sdk-staging</id>
                <url>https://oss.sonatype.org/content/repositories/orgalfresco-1032/</url>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>alfresco-sdk-staging-plugin</id>
                <url>https://oss.sonatype.org/content/repositories/orgalfresco-1032</url>
            </pluginRepository>
        </pluginRepositories>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>

Create a project

To create a project from the archetypes run this command: mvn archetype:generate -DarchetypeCatalog=https://oss.sonatype.org/content/repositories/orgalfresco-1032/archetype-catalog.xml

Make sure the archetypeCatalog fits the provided URL, it changes for every release candidate

Notice that you will not have the option to select which version of the SDK you want, since there is only the latest release candidate in this staging repository.

Select the archetype you want to create and start with ./run.sh or ./run.bat

Testplan

Here is the full list of things that needs to be tested manually via CLI for each archetype:

  • Creation
  • Embedded running
  • Packaging/deployment
  • Property filtering
  • Hot reloading
  • Enterprise profile
  • Unit testing
  • Remote unit testing

Creation and running

Test that all three archetypes can be successfully created and started with the embedded Tomcat/H2 setup

Read the tutorial in docs for more info

Packaging and deployment

  1. Run mvn clean install and inspect the artifact to make sure it does not contain unnecessary 3rd party JARs
  2. Take the produced artifact and deploy to a clean install of Alfresco to make sure they work as expected

Property filtering

Inspect the generated project and make sure property filtering worked on the archetype. For example in alfresco-amp-archetype, verify that src/main/amp/config/alfresco/module/ contains a directory with the artifactId provided at creation

Hot reloading

Run your project and try changing the example files provided, followed by the mvn compile command. Verify that changes are picked up as expected

Read the tutorial in docs for more info

Enterprise profile

Make sure you have credentials in your ~/.m2/settings.xml and activate the enterprise profile. Edit run.sh and add enterprise at the end like this for the AMP archetypes: mvn integration-test -Pamp-to-war,enterprise or mvn install -Prun,enterprise for all-in-one.

Read the tutorial in docs for more info

Unit testing

Run this command: MAVEN_OPTS="-Xms256m -Xmx2G" mvn test

Remote unit testing

Run the embedded Tomcat/H2 setup, once it is up, run this command in another terminal: mvn test

Non Functional requirements

  • All features need to work in Eclipse and IntelliJ IDEA

Reporting bugs

All bugs found should be reported in the GitHub project for the SDK