summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2018-02-07 17:16:54 +0100
committerRoeland Jago Douma <roeland@famdouma.nl>2018-02-08 15:18:25 +0100
commitdf6e23c98ce3d5a50c417a085f2095f42b663efa (patch)
tree41521501d43b210e53767f362fbf517b67ead485
parent26e0c14c6d90adae72797e759024d140047b827c (diff)
downloadnextcloud-server-df6e23c98ce3d5a50c417a085f2095f42b663efa.tar.gz
nextcloud-server-df6e23c98ce3d5a50c417a085f2095f42b663efa.zip
add ci for swift primary storage
Signed-off-by: Robin Appelman <robin@icewind.nl>
-rw-r--r--.drone.yml11
-rwxr-xr-xautotest.sh3
-rwxr-xr-xtests/drone-wait-objectstore.sh10
-rw-r--r--tests/lib/Files/ObjectStore/SwiftTest.php3
-rw-r--r--tests/preseed-config.php16
5 files changed, 43 insertions, 0 deletions
diff --git a/.drone.yml b/.drone.yml
index 385138d6c86..614c0dc40c2 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -596,6 +596,7 @@ pipeline:
image: nextcloudci/php7.0:php7.0-19
commands:
- phpenmod xdebug
+ - ./tests/drone-wait-objectstore.sh
- TEST_SELECTION=PRIMARY-${OBJECT_STORE} ./autotest.sh sqlite
- wget https://codecov.io/bash -O codecov.sh
- sh -c "if [ '$DRONE_BUILD_EVENT' = 'pull_request' ]; then bash codecov.sh -B $DRONE_BRANCH -C $DRONE_COMMIT -P $DRONE_PULL_REQUEST -t 117641e2-a9e8-4b7b-984b-ae872d9b05f5 -f tests/autotest-clover-sqlite.xml; fi"
@@ -743,6 +744,8 @@ matrix:
- TESTS: carddavtester-old-endpoint
- TESTS: object-store
OBJECT_STORE: s3
+ - TESTS: object-store
+ OBJECT_STORE: swift
- TESTS: sqlite-php7.0-samba-native
- TESTS: sqlite-php7.0-samba-non-native
- TEST: memcache-memcached
@@ -838,6 +841,14 @@ services:
when:
matrix:
OBJECT_STORE: s3
+ dockswift:
+ image: icewind1991/dockswift
+ environment:
+ - INITIALIZE=yes
+ - IPADDRESS=dockswift
+ when:
+ matrix:
+ OBJECT_STORE: swift
selenium:
image: selenium/standalone-firefox:2.53.1-beryllium
environment:
diff --git a/autotest.sh b/autotest.sh
index 7a91b077193..ff59386e1bc 100755
--- a/autotest.sh
+++ b/autotest.sh
@@ -369,6 +369,9 @@ function execute_tests {
if [ "$TEST_SELECTION" == "PRIMARY-s3" ]; then
GROUP='--group PRIMARY-s3'
fi
+ if [ "$TEST_SELECTION" == "PRIMARY-swift" ]; then
+ GROUP='--group PRIMARY-swift'
+ fi
COVER=''
if [ -z "$NOCOVERAGE" ]; then
diff --git a/tests/drone-wait-objectstore.sh b/tests/drone-wait-objectstore.sh
new file mode 100755
index 00000000000..1e5a13ee55e
--- /dev/null
+++ b/tests/drone-wait-objectstore.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+if [ "$OBJECT_STORE" == "swift" ]; then
+ echo "waiting for swift"
+ until curl -I http://dockswift:5000/v3
+ do
+ sleep 2
+ done
+ sleep 30
+fi
diff --git a/tests/lib/Files/ObjectStore/SwiftTest.php b/tests/lib/Files/ObjectStore/SwiftTest.php
index f2aeace769c..1ea55a84628 100644
--- a/tests/lib/Files/ObjectStore/SwiftTest.php
+++ b/tests/lib/Files/ObjectStore/SwiftTest.php
@@ -23,6 +23,9 @@ namespace Test\Files\ObjectStore;
use OC\Files\ObjectStore\Swift;
+/**
+ * @group PRIMARY-swift
+ */
class SwiftTest extends ObjectStoreTest {
/**
* @return \OCP\Files\ObjectStore\IObjectStore
diff --git a/tests/preseed-config.php b/tests/preseed-config.php
index 7c080038734..5fbdc565417 100644
--- a/tests/preseed-config.php
+++ b/tests/preseed-config.php
@@ -34,3 +34,19 @@ if (getenv('OBJECT_STORE') === 's3') {
)
];
}
+if (getenv('OBJECT_STORE') === 'swift') {
+ $swiftHost = getenv('DRONE') === 'true' ? 'dockswift' : 'localhost';
+ $CONFIG['objectstore'] = [
+ 'class' => 'OC\\Files\\ObjectStore\\Swift',
+ 'arguments' => array(
+ 'autocreate' => true,
+ 'username' => 'swift',
+ 'tenantName' => 'service',
+ 'password' => 'swift',
+ 'serviceName' => 'swift',
+ 'region' => 'regionOne',
+ 'url' => "http://$swiftHost:5000/v2.0",
+ 'bucket' => 'nextcloud'
+ )
+ ];
+}