aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/integration-sqlite.yml18
-rw-r--r--build/integration/config/behat.yml20
-rw-r--r--build/integration/features/bootstrap/LDAPContext.php5
-rw-r--r--build/integration/openldap_features/openldap-uid-username.feature (renamed from build/integration/ldap_features/openldap-uid-username.feature)0
-rw-r--r--build/integration/openldap_numerical_features/openldap-numerical-id.feature (renamed from build/integration/ldap_features/openldap-numerical-id.feature)0
5 files changed, 34 insertions, 9 deletions
diff --git a/.github/workflows/integration-sqlite.yml b/.github/workflows/integration-sqlite.yml
index 036e8770830..66b654561a1 100644
--- a/.github/workflows/integration-sqlite.yml
+++ b/.github/workflows/integration-sqlite.yml
@@ -2,10 +2,6 @@ name: Integration sqlite
on:
pull_request:
- paths:
- # Only running on PR for this file to save CI time (otherwise pgsql only)
- - '.github/workflows/integration-sqlite.yml'
-
push:
branches:
- main
@@ -63,6 +59,8 @@ jobs:
- 'federation_features'
- '--tags ~@large files_features'
- 'filesdrop_features'
+ - 'openldap_features'
+ - 'openldap_numerical_features'
- 'ldap_features'
- 'remoteapi_features'
- 'setup_features'
@@ -85,6 +83,8 @@ jobs:
- 6379:6379
openldap:
image: ghcr.io/nextcloud/continuous-integration-openldap:openldap-7
+ ports:
+ - 389:389
env:
SLAPD_DOMAIN: nextcloud.ci
SLAPD_ORGANIZATION: Nextcloud
@@ -129,15 +129,13 @@ jobs:
run: composer i --no-dev
- name: Set up Nextcloud
- env:
- DB_PORT: 4444
run: |
mkdir data
- ./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
+ ./occ maintenance:install --verbose ${{ contains(matrix.test-suite,'ldap') && '--data-dir=/dev/shm/nc_int' || '' }} --database=sqlite --database-name=nextcloud --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass admin
./occ config:system:set hashing_default_password --value=true --type=boolean
- name: Configure caching
- if: ${{ matrix.test-suite == 'ldap_features' }}
+ if: ${{ contains(matrix.test-suite,'ldap') }}
run: |
./occ config:system:set redis host --value=localhost
./occ config:system:set redis port --value=6379 --type=integer
@@ -147,12 +145,16 @@ jobs:
- name: Run integration
working-directory: build/integration
+ env:
+ LDAP_HOST: localhost
run: bash run.sh ${{ matrix.test-suite }} no-tail-log
- name: Print logs
if: always()
run: |
cat data/nextcloud.log
+ docker ps -a
+ docker ps -aq | while read container ; do IMAGE=$(docker inspect --format='{{.Config.Image}}' $container); echo $IMAGE; docker logs $container; echo "\n\n" ; done
summary:
permissions:
diff --git a/build/integration/config/behat.yml b/build/integration/config/behat.yml
index 080752a3d6f..8401b841cdd 100644
--- a/build/integration/config/behat.yml
+++ b/build/integration/config/behat.yml
@@ -192,6 +192,26 @@ default:
- admin
- admin
regular_user_password: 123456
+ openldap_numerical:
+ paths:
+ - "%paths.base%/../openldap_numerical_features"
+ contexts:
+ - LDAPContext:
+ baseUrl: http://localhost:8080
+ admin:
+ - admin
+ - admin
+ regular_user_password: 123456
+ openldap:
+ paths:
+ - "%paths.base%/../openldap_features"
+ contexts:
+ - LDAPContext:
+ baseUrl: http://localhost:8080
+ admin:
+ - admin
+ - admin
+ regular_user_password: 123456
remoteapi:
paths:
- "%paths.base%/../remoteapi_features"
diff --git a/build/integration/features/bootstrap/LDAPContext.php b/build/integration/features/bootstrap/LDAPContext.php
index e0315bce84e..fd4a448b5e9 100644
--- a/build/integration/features/bootstrap/LDAPContext.php
+++ b/build/integration/features/bootstrap/LDAPContext.php
@@ -104,7 +104,7 @@ class LDAPContext implements Context {
$this->asAn('admin');
$this->creatingAnLDAPConfigurationAt('/apps/user_ldap/api/v1/config');
$data = new TableNode([
- ['configData[ldapHost]', 'openldap'],
+ ['configData[ldapHost]', getenv('LDAP_HOST') ?: 'openldap'],
['configData[ldapPort]', '389'],
['configData[ldapBase]', 'dc=nextcloud,dc=ci'],
['configData[ldapAgentName]', 'cn=admin,dc=nextcloud,dc=ci'],
@@ -141,6 +141,9 @@ class LDAPContext implements Context {
$this->asAn('admin');
$configData = $table->getRows();
foreach ($configData as &$row) {
+ if (str_contains($row[0], 'Host') && getenv('LDAP_HOST')) {
+ $row[1] = str_replace('openldap', getenv('LDAP_HOST'), $row[1]);
+ }
$row[0] = 'configData[' . $row[0] . ']';
}
$this->settingTheLDAPConfigurationTo(new TableNode($configData));
diff --git a/build/integration/ldap_features/openldap-uid-username.feature b/build/integration/openldap_features/openldap-uid-username.feature
index 6793273e8c7..6793273e8c7 100644
--- a/build/integration/ldap_features/openldap-uid-username.feature
+++ b/build/integration/openldap_features/openldap-uid-username.feature
diff --git a/build/integration/ldap_features/openldap-numerical-id.feature b/build/integration/openldap_numerical_features/openldap-numerical-id.feature
index 75eb6827192..75eb6827192 100644
--- a/build/integration/ldap_features/openldap-numerical-id.feature
+++ b/build/integration/openldap_numerical_features/openldap-numerical-id.feature