Improves README.
This commit is contained in:
parent
8b538414ae
commit
d604ca685a
1 changed files with 10 additions and 60 deletions
68
README.md
68
README.md
|
@ -1,72 +1,22 @@
|
||||||
# S C I M Server
|
# SCIM Service Provider
|
||||||
Place this app in **nextcloud/apps/**
|
|
||||||
|
|
||||||
## Building the app
|
|
||||||
|
|
||||||
The app can be built by using the provided Makefile by running:
|
|
||||||
|
|
||||||
make
|
|
||||||
|
|
||||||
This requires the following things to be present:
|
|
||||||
* make
|
|
||||||
* which
|
|
||||||
* tar: for building the archive
|
|
||||||
* curl: used if phpunit and composer are not installed to fetch them from the web
|
|
||||||
* npm: for building and testing everything JS, only required if a package.json is placed inside the **js/** folder
|
|
||||||
|
|
||||||
The make command will install or update Composer dependencies if a composer.json is present and also **npm run build** if a package.json is present in the **js/** folder. The npm **build** script should use local paths for build systems and package managers, so people that simply want to build the app won't need to install npm libraries globally, e.g.:
|
|
||||||
|
|
||||||
**package.json**:
|
|
||||||
```json
|
|
||||||
"scripts": {
|
|
||||||
"test": "node node_modules/gulp-cli/bin/gulp.js karma",
|
|
||||||
"prebuild": "npm install && node_modules/bower/bin/bower install && node_modules/bower/bin/bower update",
|
|
||||||
"build": "node node_modules/gulp-cli/bin/gulp.js"
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
## Publish to App Store
|
|
||||||
|
|
||||||
First get an account for the [App Store](http://apps.nextcloud.com/) then run:
|
|
||||||
|
|
||||||
make && make appstore
|
|
||||||
|
|
||||||
The archive is located in build/artifacts/appstore and can then be uploaded to the App Store.
|
|
||||||
|
|
||||||
## Running tests
|
## Running tests
|
||||||
You can use the provided Makefile to run all tests by using:
|
|
||||||
|
|
||||||
make test
|
To run the test, you can use [insomnia UI](https://docs.insomnia.rest).
|
||||||
|
|
||||||
This will run the PHP unit and integration tests and if a package.json is present in the **js/** folder will execute **npm run test**
|
![screenshot insomnia ui](./screenshots/insomnia.png)
|
||||||
|
|
||||||
Of course you can also install [PHPUnit](http://phpunit.de/getting-started.html) and use the configurations directly:
|
For CI, there is still [a bug](https://github.com/Kong/insomnia/issues/4747) we need to find a fix.
|
||||||
|
|
||||||
phpunit -c phpunit.xml
|
## TODO
|
||||||
|
|
||||||
or:
|
|
||||||
|
|
||||||
phpunit -c phpunit.integration.xml
|
|
||||||
|
|
||||||
for integration tests
|
|
||||||
|
|
||||||
# TODO
|
|
||||||
|
|
||||||
- [x]attribute active
|
|
||||||
- group mgmt
|
|
||||||
- list user
|
|
||||||
- add/remove user from groups
|
|
||||||
- update, displayName
|
|
||||||
- Erreur/Exception
|
|
||||||
- [x] json
|
|
||||||
- [x] status code
|
|
||||||
- [x] escaped location - JSON_UNESCAPED_SLASHES
|
|
||||||
|
|
||||||
|
## Quick "Deploy" to test
|
||||||
|
|
||||||
|
```
|
||||||
cd apps
|
cd apps
|
||||||
wget https://lab.libreho.st/libre.sh/scim/nextcloud-scim/-/archive/test-branch/nextcloud-scim-main.zip
|
wget https://lab.libreho.st/libre.sh/scim/nextcloud-scim/-/archive/test-branch/nextcloud-scim-main.zip
|
||||||
unzip nextcloud-scim-main.zip
|
unzip nextcloud-scim-main.zip
|
||||||
rm nextcloud-scim-main.zip
|
rm nextcloud-scim-main.zip
|
||||||
rm -rf scimserviceprovider
|
rm -rf scimserviceprovider
|
||||||
mv nextcloud-scim-test-branchxxx scimserviceprovider
|
mv nextcloud-scim-main scimserviceprovider
|
||||||
|
```
|
Loading…
Reference in a new issue