SLING-11937 add sleep between install und uninstall (#17)
Document asynchronous installation for WebConsole deployment
diff --git a/src/it/install-file-test/invoker.properties b/src/it/install-file-test/invoker.properties
index 3d2fb27..4c74892 100644
--- a/src/it/install-file-test/invoker.properties
+++ b/src/it/install-file-test/invoker.properties
@@ -15,7 +15,7 @@
# specific language governing permissions and limitations
# under the License.
-invoker.goals=install -Dsling.urlSuffix=/system/console -Dsling.bundle.name=org.apache.sling.commons.messaging -X
+invoker.goals=install -Dsling.urlSuffix=/system/console -Dsling.bundle.name=org.apache.sling.commons.messaging
invoker.goals.2=install -Dsling.deploy.method=WebDAV -Dsling.urlSuffix=/dav/default/apps/sling-it
invoker.goals.3=install -Dsling.deploy.method=SlingPostServlet -Dsling.urlSuffix=/apps/sling-it
# invalid URL must lead to build failure
diff --git a/src/it/install-file-test/pom.xml b/src/it/install-file-test/pom.xml
index 0ce29b1..029fcae 100644
--- a/src/it/install-file-test/pom.xml
+++ b/src/it/install-file-test/pom.xml
@@ -30,6 +30,7 @@
<properties>
<!-- this is either file name or BSN, for BSN overwrite via CLI params -->
<sling.bundle.name>org.apache.sling.commons.messaging-1.0.2.jar</sling.bundle.name>
+ <wait.time.ms>1500</wait.time.ms>
</properties>
<build>
<pluginManagement>
@@ -50,6 +51,10 @@
<artifactId>maven-install-plugin</artifactId>
<version>3.0.1</version>
</plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>3.1.0</version>
+ </plugin>
</plugins>
</pluginManagement>
<plugins>
@@ -63,7 +68,7 @@
<goals>
<goal>install-file</goal>
</goals>
- <phase>install</phase>
+ <phase>pre-integration-test</phase>
<configuration>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.commons.messaging</artifactId>
@@ -75,7 +80,25 @@
<goals>
<goal>uninstall</goal>
</goals>
- <phase>install</phase>
+ <phase>post-integration-test</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <configuration>
+ <target>
+ <sleep milliseconds="${wait.time.ms}" />
+ </target>
+ </configuration>
+ <executions>
+ <execution>
+ <id>sleep-for-a-while</id>
+ <phase>integration-test</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
</execution>
</executions>
</plugin>
diff --git a/src/it/install-test/pom.xml b/src/it/install-test/pom.xml
index 513a40a..9100f0a 100644
--- a/src/it/install-test/pom.xml
+++ b/src/it/install-test/pom.xml
@@ -29,6 +29,7 @@
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
+ <wait.time.ms>1500</wait.time.ms>
</properties>
<build>
<pluginManagement>
@@ -76,13 +77,32 @@
<goals>
<goal>install</goal>
</goals>
+ <phase>pre-integration-test</phase>
</execution>
<execution>
<id>bundle-uninstall</id>
<goals>
<goal>uninstall</goal>
</goals>
- <phase>install</phase>
+ <phase>post-integration-test</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <configuration>
+ <target>
+ <sleep milliseconds="${wait.time.ms}" />
+ </target>
+ </configuration>
+ <executions>
+ <execution>
+ <id>sleep-for-a-while</id>
+ <phase>integration-test</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
</execution>
</executions>
</plugin>
diff --git a/src/site/markdown/bundle-installation.md b/src/site/markdown/bundle-installation.md
index 3d4d072..7cec805 100644
--- a/src/site/markdown/bundle-installation.md
+++ b/src/site/markdown/bundle-installation.md
@@ -8,7 +8,7 @@
### Felix Web Console
-The plugin by default places an *HTTP POST* request to the [Felix Web Console](https://felix.apache.org/documentation/subprojects/apache-felix-web-console/web-console-restful-api.html#post-requests). This will achieve both upload and installation of the bundle in one request *synchronously*.
+The plugin by default places an *HTTP POST* request to the [Felix Web Console](https://felix.apache.org/documentation/subprojects/apache-felix-web-console/web-console-restful-api.html#post-requests). This will achieve both upload and installation/update of the bundle triggered by one request. The installation/update of the bundle happens *asynchronously*, though, in the Felix Web Console.
### WebDAV PUT