Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>tags/v14.0.0beta4
@@ -562,6 +562,16 @@ pipeline: | |||
when: | |||
matrix: | |||
TESTS: integration-ldap-features | |||
integration-ldap-openldap-features: | |||
image: nextcloudci/integration-php7.0:integration-php7.0-6 | |||
commands: | |||
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int | |||
- ./occ app:enable user_ldap | |||
- cd build/integration | |||
- ./run.sh ldap_features/ldap-openldap.feature | |||
when: | |||
matrix: | |||
TESTS: integration-ldap-openldap-features | |||
integration-trashbin: | |||
image: nextcloudci/integration-php7.0:integration-php7.0-8 | |||
commands: | |||
@@ -828,6 +838,8 @@ matrix: | |||
- TESTS: integration-filesdrop-features | |||
- TESTS: integration-transfer-ownership-features | |||
- TESTS: integration-ldap-features | |||
- TESTS: integration-ldap-openldap-features | |||
ENABLE_OPENLDAP: true | |||
- TESTS: integration-trashbin | |||
- TESTS: integration-remote-api | |||
- TESTS: integration-download | |||
@@ -1007,5 +1019,15 @@ services: | |||
when: | |||
matrix: | |||
TESTS: acceptance | |||
openldap: | |||
image: nextcloudci/openldap:openldap-4 | |||
environment: | |||
- SLAPD_DOMAIN=nextcloud.ci | |||
- SLAPD_ORGANIZATION=Nextcloud | |||
- SLAPD_PASSWORD=admin | |||
- SLAPD_ADDITIONAL_MODULES=memberof | |||
when: | |||
matrix: | |||
ENABLE_OPENLDAP: true | |||
branches: [ master, stable* ] |
@@ -82,4 +82,26 @@ class LDAPContext implements Context { | |||
public function settingTheLDAPConfigurationTo(TableNode $configData) { | |||
$this->sendingToWith('PUT', $this->apiUrl . '/' . $this->configID, $configData); | |||
} | |||
/** | |||
* @Given /^having a valid LDAP configuration$/ | |||
*/ | |||
public function havingAValidLDAPConfiguration() { | |||
$this->asAn('admin'); | |||
$this->creatingAnLDAPConfigurationAt('/apps/user_ldap/api/v1/config'); | |||
$data = new TableNode([ | |||
['configData[ldapHost]', 'openldap'], | |||
['configData[ldapPort]', '389'], | |||
['configData[ldapBase]', 'dc=nextcloud,dc=ci'], | |||
['configData[ldapAgentName]', 'cn=admin,dc=nextcloud,dc=ci'], | |||
['configData[ldapAgentPassword]', 'admin'], | |||
['configData[ldapUserFilter]', '(&(objectclass=inetorgperson))'], | |||
['configData[ldapLoginFilter]', '(&(objectclass=inetorgperson)(uid=%uid))'], | |||
['configData[ldapUserDisplayName]', 'displayname'], | |||
['configData[ldapEmailAttribute]', 'mail'], | |||
['configData[ldapConfigurationActive]', '1'], | |||
]); | |||
$this->settingTheLDAPConfigurationTo($data); | |||
$this->asAn(''); | |||
} | |||
} |
@@ -0,0 +1,10 @@ | |||
Feature: LDAP | |||
Background: | |||
Given using api version "2" | |||
Scenario: Test valid configuration by logging in | |||
Given having a valid LDAP configuration | |||
When Logging in using web as "alice" | |||
#When As an "alice" | |||
And sending "GET" to "/cloud/user" | |||
Then the HTTP status code should be "200" |
@@ -22,6 +22,7 @@ else | |||
exit 1 | |||
fi | |||
fi | |||
NC_DATADIR=$($OCC config:system:get datadirectory) | |||
composer install | |||
@@ -48,6 +49,7 @@ if [ "$INSTALLED" == "true" ]; then | |||
#Enable external storage app | |||
$OCC app:enable files_external | |||
$OCC app:enable user_ldap | |||
mkdir -p work/local_storage | |||
OUTPUT_CREATE_STORAGE=`$OCC files_external:create local_storage local null::null -c datadir=$PWD/work/local_storage` | |||
@@ -70,10 +72,11 @@ if [ "$INSTALLED" == "true" ]; then | |||
#Disable external storage app | |||
$OCC app:disable files_external | |||
$OCC app:disable user_ldap | |||
fi | |||
if [ -z $HIDE_OC_LOGS ]; then | |||
tail "${OC_PATH}/data/nextcloud.log" | |||
tail "${NC_DATADIR}/nextcloud.log" | |||
fi | |||
echo "runsh: Exit code: $RESULT" |