You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/10/18 23:22:59 UTC
[sling-org-apache-sling-jobs-it] 01/09: SLING-5645 moved jobs out
of examples
This is an automated email from the ASF dual-hosted git repository.
rombert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-jobs-it.git
commit e76a057773274a160e4c33115c729a96d42de124
Author: Ian Boston <ie...@apache.org>
AuthorDate: Mon Oct 3 16:05:02 2016 +0000
SLING-5645 moved jobs out of examples
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1763181 13f79535-47bb-0310-9956-ffa450edef68
---
.gitignore | 1 +
README.md | 6 +
pom.xml | 131 +++++++++++++++++++++
.../java/org/apache/sling/jobs/it/CheckRootIT.java | 50 ++++++++
src/test/java/org/apache/sling/jobs/it/Models.java | 27 +++++
.../apache/sling/jobs/it/TestSuiteLauncherIT.java | 87 ++++++++++++++
src/test/resources/crankstart-model.txt | 46 ++++++++
src/test/resources/provisioning-model/base.txt | 41 +++++++
.../provisioning-model/crankstart-test-support.txt | 29 +++++
.../resources/provisioning-model/jobs-runtime.txt | 42 +++++++
src/test/resources/sling-launchpad.txt | 65 ++++++++++
11 files changed, 525 insertions(+)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0d18955
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+activemq-data
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..a3996ab
--- /dev/null
+++ b/README.md
@@ -0,0 +1,6 @@
+# Job IT tests launcher.
+
+This project runs a test launcher that creates an OSGi instance with only what is required to run Server Side tests.
+Unfurtunately, since OSGi is a multi classloader environment its not possible to perform tests in this bundle, except
+tests over http as any references made to APIs will get resolved with the wrong classloader and so wont be able to
+interact with OSGi. Hence the tests are in a separate bundle that is loaded by the launchpad.
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..8ac0d0c
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+ 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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>10</version>
+ <relativePath />
+ </parent>
+
+ <artifactId>org.apache.sling.jobs-it</artifactId>
+ <packaging>jar</packaging>
+ <version>0.0.1-SNAPSHOT</version>
+
+ <name>Apache Sling Jobs Integration Tests</name>
+ <description>
+ Integration testing Support for Job processing using message passing..
+ </description>
+
+ <scm>
+ <connection>scm:svn:http://svn.apache.org/repos/asf/sling/trunk/contrib/commons/mom/jobs/it</connection>
+ <developerConnection>scm:svn:https://svn.apache.org/repos/asf/sling/trunk/contrib/commons/mom/jobs/it</developerConnection>
+ <url>http://svn.apache.org/viewvc/sling/trunk/contrib/commons/mom/jobs/it</url>
+ </scm>
+
+ <properties>
+ <site.jira.version.id>12315369</site.jira.version.id>
+ <sling.java.version>7</sling.java.version>
+ <exam.version>4.4.0</exam.version>
+ <url.version>2.4.5</url.version>
+ <pax.url.version>2.1.0</pax.url.version>
+ <bundle.build.dir>${basedir}/target</bundle.build.dir>
+ <bundle.file.name>${bundle.build.dir}/${project.build.finalName}.jar</bundle.file.name>
+ <min.port>37000</min.port>
+ <max.port>37999</max.port>
+ </properties>
+
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>integration-test</goal>
+ <goal>verify</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.6</source>
+ <target>1.6</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.crankstart.launcher</artifactId>
+ <version>1.9.9-SNAPSHOT</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.commons.testing</artifactId>
+ <version>2.0.16</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jmock</groupId>
+ <artifactId>jmock-junit4</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>org.apache.sling.commons.json</artifactId>
+ <version>2.0.10</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpclient</artifactId>
+ <version>4.1</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.7.6</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ <version>1.7.6</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+</project>
diff --git a/src/test/java/org/apache/sling/jobs/it/CheckRootIT.java b/src/test/java/org/apache/sling/jobs/it/CheckRootIT.java
new file mode 100644
index 0000000..a40846f
--- /dev/null
+++ b/src/test/java/org/apache/sling/jobs/it/CheckRootIT.java
@@ -0,0 +1,50 @@
+package org.apache.sling.jobs.it;
+
+import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.client.methods.HttpUriRequest;
+import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.sling.commons.testing.junit.Retry;
+import org.apache.sling.commons.testing.junit.RetryRule;
+import org.apache.sling.crankstart.junit.CrankstartSetup;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.ClassRule;
+import org.junit.Rule;
+import org.junit.Test;
+
+import java.io.IOException;
+
+import static org.junit.Assert.*;
+
+/**
+ */
+public class CheckRootIT {
+
+
+ @Rule
+ public final RetryRule retryRule = new RetryRule();
+
+ private DefaultHttpClient client;
+
+
+ @Before
+ public void setup() throws IOException {
+ client = new DefaultHttpClient();
+ }
+
+ @Test
+ @Retry(timeoutMsec=Models.LONG_TIMEOUT_MSEC, intervalMsec=Models.STD_INTERVAL)
+ public void testHttpRoot() throws Exception {
+ final HttpUriRequest get = new HttpGet(TestSuiteLauncherIT.crankstartSetup.getBaseUrl());
+ HttpResponse response = null;
+ try {
+ response = client.execute(get);
+ assertEquals("Expecting page not found at " + get.getURI(), 404, response.getStatusLine().getStatusCode());
+ } finally {
+ Models.closeConnection(response);
+ }
+ }
+
+
+}
diff --git a/src/test/java/org/apache/sling/jobs/it/Models.java b/src/test/java/org/apache/sling/jobs/it/Models.java
new file mode 100644
index 0000000..7fcd479
--- /dev/null
+++ b/src/test/java/org/apache/sling/jobs/it/Models.java
@@ -0,0 +1,27 @@
+package org.apache.sling.jobs.it;
+
+import org.apache.http.HttpResponse;
+import org.apache.http.util.EntityUtils;
+
+import java.io.IOException;
+
+/**
+ */
+public class Models {
+ public static final int LONG_TIMEOUT_SECONDS = 2; // TODO 10
+ public static final int LONG_TIMEOUT_MSEC = LONG_TIMEOUT_SECONDS * 1000;
+ public static final int STD_INTERVAL = 250;
+
+ static final String[] DEFAULT_MODELS = {
+ "/crankstart-model.txt",
+ "/provisioning-model/base.txt",
+ "/provisioning-model/jobs-runtime.txt",
+ "/provisioning-model/crankstart-test-support.txt"
+ };
+
+ static void closeConnection(HttpResponse r) throws IOException {
+ if(r != null && r.getEntity() != null) {
+ EntityUtils.consume(r.getEntity());
+ }
+ }
+}
diff --git a/src/test/java/org/apache/sling/jobs/it/TestSuiteLauncherIT.java b/src/test/java/org/apache/sling/jobs/it/TestSuiteLauncherIT.java
new file mode 100644
index 0000000..18c6662
--- /dev/null
+++ b/src/test/java/org/apache/sling/jobs/it/TestSuiteLauncherIT.java
@@ -0,0 +1,87 @@
+package org.apache.sling.jobs.it;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.client.methods.HttpUriRequest;
+import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.sling.crankstart.junit.CrankstartSetup;
+import org.junit.ClassRule;
+import org.junit.rules.ExternalResource;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/** Basic tests of the launcher, verify that we
+ * can start the Felix HTTP service and a few
+ * other things.
+ */
+@RunWith(Suite.class)
+@Suite.SuiteClasses(CheckRootIT.class)
+public class TestSuiteLauncherIT {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(TestSuiteLauncherIT.class);
+ private static final long classSetup = System.currentTimeMillis();
+ private static final long MAX_BACKOFF = 5000;
+ private static final long INITIAL_BACKOFF = 100;
+
+ @ClassRule
+ public final static CrankstartSetup crankstartSetup = new CrankstartSetup().withModelResources(Models.DEFAULT_MODELS);
+
+
+ @ClassRule
+ public final static ExternalResource R = new ExternalResource() {
+ @Override
+ protected void before() throws Throwable {
+ LOGGER.info("Waiting for Crankstart to start");
+ while(crankstartSetup.getTotalBundles() == 0) {
+ Thread.sleep(100);
+ }
+ if (crankstartSetup.getBundlesFailed() > 0) {
+ LOGGER.error("Bundles failed to start {} ",crankstartSetup.getBundlesFailed());
+ fail();
+ }
+ LOGGER.info("Crankstart to started {} bundles ", crankstartSetup.getBundlesStarted());
+ DefaultHttpClient client = new DefaultHttpClient();
+ final HttpUriRequest get = new HttpGet(crankstartSetup.getBaseUrl());
+ HttpResponse response = null;
+ long backoff = INITIAL_BACKOFF;
+ boolean noresponse = false;
+ long ttl = System.currentTimeMillis()+60000;
+ // try for no more than 60s
+ while(System.currentTimeMillis() < ttl) {
+ try {
+ response = client.execute(get);
+ if (noresponse) {
+ backoff = INITIAL_BACKOFF;
+ noresponse = false;
+ }
+ if (response.getStatusLine().getStatusCode() == 404) {
+ LOGGER.info("Sever up and responding to http requests, startup complete");
+ Thread.sleep(60000);
+ return;
+ }
+ LOGGER.info("Server not respoding as expected to http requests, waiting {} ms", backoff);
+ Thread.sleep(backoff);
+ backoff = Math.min((long)(backoff*1.5), MAX_BACKOFF);
+ } catch (Exception ex) {
+ noresponse = true;
+ LOGGER.info("Server not respoding waiting {} ms {} ", backoff, ex.getClass());
+ Thread.sleep(backoff);
+ backoff = Math.min(backoff*2, MAX_BACKOFF);
+ } finally {
+ Models.closeConnection(response);
+ }
+
+ }
+ fail("Unable to contact server");
+ }
+
+ };
+
+
+}
\ No newline at end of file
diff --git a/src/test/resources/crankstart-model.txt b/src/test/resources/crankstart-model.txt
new file mode 100644
index 0000000..c32cb3d
--- /dev/null
+++ b/src/test/resources/crankstart-model.txt
@@ -0,0 +1,46 @@
+#
+# 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.
+#
+
+# Test the crankstart launcher by setting up an HTTP
+# server with a few servlets that require specific OSGi configurations
+[feature name=:crankstart]
+
+[variables]
+ felix.framework.version=5.0.0
+ slf4j.version = 1.7.6
+ http.port = 8080
+ osgi.storage.path = CRANKSTART/felix
+ osgi.start.level = 42
+ osgi-core-packages=org.osgi.dto; version=1.0.0, org.osgi.framework; version=1.8.0, org.osgi.framework.dto; version=1.8.0, org.osgi.framework.hooks.bundle; version=1.1.0, org.osgi.framework.hooks.resolver; version=1.0.0, org.osgi.framework.hooks.service; version=1.1.0, org.osgi.framework.hooks.weaving; version=1.1.0, org.osgi.framework.launch; version=1.2.0, org.osgi.framework.namespace; version=1.1.0, org.osgi.framework.startlevel; version=1.0.0, org.osgi.framework.startlevel.dto; vers [...]
+ osgi-compendium-services=org.osgi.util.tracker; version=1.5.1
+ jre-1.8=javax.accessibility;uses:="javax.swing.text";version="0.0.0.1_008_JavaSE", javax.activity;version="0.0.0.1_008_JavaSE", javax.annotation.processing;uses:="javax.tools,javax.lang.model,javax.lang.model.element,javax.lang.model.util";version="0.0.0.1_008_JavaSE", javax.annotation;version="0.0.0.1_008_JavaSE", javax.crypto.interfaces;uses:="javax.crypto.spec,javax.crypto";version="0.0.0.1_008_JavaSE", javax.crypto.spec;uses:="javax.crypto";version="0.0.0.1_008_JavaSE", javax.crypt [...]
+ system-customise= javax.xml.namespace, javax.xml.parsers, javax.xml.xpath, javax.xml.transform, javax.transaction, javax.transaction.xa, javax.xml.transform.dom, javax.xml.transform.stream, org.xml.sax, org.w3c.dom
+
+
+[settings]
+ org.osgi.service.http.port = ${http.port}
+ org.osgi.framework.storage = ${osgi.storage.path}
+ org.osgi.framework.startlevel.beginning = ${osgi.start.level}
+ org.osgi.framework.system.packages=${osgi-core-packages}, ${osgi-compendium-services}, ${jre-1.8}, ${system-customise}
+
+
+[artifacts]
+ org.apache.felix/org.apache.felix.framework/${felix.framework.version}
+ org.slf4j/slf4j-api/${slf4j.version}
+ org.slf4j/slf4j-simple/${slf4j.version}
diff --git a/src/test/resources/provisioning-model/base.txt b/src/test/resources/provisioning-model/base.txt
new file mode 100644
index 0000000..751ad8a
--- /dev/null
+++ b/src/test/resources/provisioning-model/base.txt
@@ -0,0 +1,41 @@
+#
+# 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.
+#
+# This is a feature description
+#
+# A feature consists of variables and run mode dependent artifacts.
+#
+
+# Test our Sling extension commands, that add a bundle via the Sling installer
+# (which requires commons.json and jcr-wrapper)
+[feature name=crankstart.test.base]
+
+[variables]
+ felix.http.jetty.version=2.2.0
+
+[artifacts]
+ # artifacts that are usually provided by the Sling launchpad
+ org.apache.sling/org.apache.sling.launchpad.api/1.1.0
+ org.apache.felix/org.apache.felix.http.jetty/${felix.http.jetty.version}
+ org.apache.felix/org.apache.felix.eventadmin/1.3.2
+ org.apache.felix/org.apache.felix.scr/1.8.2
+ org.apache.felix/org.apache.felix.metatype/1.0.10
+ org.apache.sling/org.apache.sling.commons.osgi/2.2.0
+ org.apache.sling/org.apache.sling.commons.log/2.1.2
+ org.apache.felix/org.apache.felix.configadmin/1.6.0
+ org.apache.felix/org.apache.felix.webconsole/3.1.6
diff --git a/src/test/resources/provisioning-model/crankstart-test-support.txt b/src/test/resources/provisioning-model/crankstart-test-support.txt
new file mode 100644
index 0000000..e8b42d6
--- /dev/null
+++ b/src/test/resources/provisioning-model/crankstart-test-support.txt
@@ -0,0 +1,29 @@
+#
+# 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.
+#
+
+[feature name=crankstart.test.support]
+
+[artifacts]
+ org.apache.sling/org.apache.sling.jcr.jcr-wrapper/2.0.0
+ org.apache.sling/org.apache.sling.commons.json/2.0.6
+ org.apache.sling/org.apache.sling.junit.core/1.0.10
+ org.apache.sling/org.apache.sling.commons.mime/2.1.8
+ org.apache.sling/org.apache.sling.settings/1.3.6
+
+
diff --git a/src/test/resources/provisioning-model/jobs-runtime.txt b/src/test/resources/provisioning-model/jobs-runtime.txt
new file mode 100644
index 0000000..1649559
--- /dev/null
+++ b/src/test/resources/provisioning-model/jobs-runtime.txt
@@ -0,0 +1,42 @@
+#
+# 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.
+#
+# Load this bundle to run tests, it built with mvn clean install after each test.
+
+[feature name=sling.extensions.jobs]
+
+[artifacts]
+ com.google.code.gson/gson/2.2.4
+ org.apache.geronimo.specs/geronimo-j2ee-management_1.1_spec/1.0.1
+ org.apache.geronimo.specs/geronimo-jms_1.1_spec/1.1.1
+ org.ow2.asm/asm/4.1
+ com.google.guava/guava/16.0.1
+ org.apache.commons/commons-pool2/2.4.2
+ org.apache.sling/org.apache.sling.mom/0.0.1-SNAPSHOT
+ org.apache.sling/org.apache.sling.jobs/0.0.1-SNAPSHOT
+ org.apache.sling/org.apache.sling.jms/0.0.1-SNAPSHOT
+ org.apache.sling/org.apache.sling.jobs-it-services/0.0.1-SNAPSHOT
+
+[configurations]
+ # Configure a queue to listen to the queue used in the IT Services components.
+ # In general a queue should only be activated on an instance if the
+ # instance is configured with consumers for that queue.
+ # If consumers are not present, then the queue will dequeue and force a retry
+ # of each item it can process untill the retry limit is reached.
+ org.apache.sling.jobs.impl.JobQueueConsumerFactory
+ queue-name="org/apache/sling/jobs/it/services"
diff --git a/src/test/resources/sling-launchpad.txt b/src/test/resources/sling-launchpad.txt
new file mode 100644
index 0000000..5af8839
--- /dev/null
+++ b/src/test/resources/sling-launchpad.txt
@@ -0,0 +1,65 @@
+#
+# 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.
+#
+
+# Start the Sling Launchpad including whatever is required to
+# run the Sling integration tests.
+#
+# Currently all those 529 tests pass if started with
+# java -Xmx1G -XX:MaxPermSize=256m \
+# -Dsling.run.modes=:standalone,jackrabbit -Dsling.home=CRANKSTART \
+# -jar target/org.apache.sling.crankstart.launcher-1.9.9-SNAPSHOT.jar \
+# src/test/resources/crankstart-model.txt \
+# src/test/resources/sling-launchpad.txt
+
+[feature name=sling.launchpad]
+
+[settings]
+ org.apache.sling.commons.log.julenabled=true
+
+[artifacts]
+ # karaf bunde provides Sling Launchpad startup services
+ org.apache.sling/org.apache.sling.launchpad.karaf/0.1.1-SNAPSHOT
+
+ # artifacts that are usually provided by the Sling launchpad
+ org.apache.sling/org.apache.sling.launchpad.api/1.1.0
+
+ # The launchpad itself
+ org.apache.sling/org.apache.sling.launchpad/8/txt/slingfeature
+
+ # Sling integration tests support
+ # TODO problem with the test-service bundles with 2 run modes
+ # org.apache.sling/org.apache.sling.launchpad.test-bundles/0.0.1-SNAPSHOT/txt
+
+# TODO remove those once nested test-bundles model works
+[artifacts startLevel=2]
+ org.apache.sling/org.apache.sling.servlets.compat/1.0.3-SNAPSHOT
+ org.apache.sling/org.apache.sling.junit.core/1.0.11-SNAPSHOT
+ org.apache.sling/org.apache.sling.junit.remote/1.0.11-SNAPSHOT
+ org.apache.sling/org.apache.sling.junit.scriptable/1.0.11-SNAPSHOT
+ org.apache.sling/org.apache.sling.launchpad.test-fragment/2.0.9-SNAPSHOT
+ org.apache.sling/org.apache.sling.launchpad.test-services-war/2.0.8/war
+ org.apache.sling/org.apache.sling.launchpad.test-services/2.0.9-SNAPSHOT
+
+[configurations]
+ integrationTestsConfig
+ message="This test config should be loaded at startup"
+
+ org.apache.sling.servlets.resolver.SlingServletResolver
+ # Set the servlet resolver's cache size to zero for testing
+ servletresolver.cacheSize=I"0"
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.