An app for Nextcloud to allow an administrator to direct a user to an external site for changing their password. This is useful in conjunction with an app like user_external.
Find a file
2022-06-01 21:58:21 -07:00
appinfo Fix phpunit in composer; create Woodpecker CI pipeline file 2022-06-01 21:37:20 -07:00
css Create a Nextcloud app to send a user to an external URL to change their password 2022-05-16 23:04:44 -07:00
img Import generated app from Nextcloud Store 2022-05-08 21:56:29 -07:00
js Create a Nextcloud app to send a user to an external URL to change their password 2022-05-16 23:04:44 -07:00
lib Create a Nextcloud app to send a user to an external URL to change their password 2022-05-16 23:04:44 -07:00
templates Create a Nextcloud app to send a user to an external URL to change their password 2022-05-16 23:04:44 -07:00
tests Create a Nextcloud app to send a user to an external URL to change their password 2022-05-16 23:04:44 -07:00
.gitignore Add signing to Makefile, ignore build and dist directories 2022-06-01 18:17:44 -07:00
CHANGELOG.md Update the version number in CHANGELOG.md in accordance with SemVer 2022-05-16 23:08:37 -07:00
composer.json Fix phpunit in composer; create Woodpecker CI pipeline file 2022-06-01 21:37:20 -07:00
COPYING Import generated app from Nextcloud Store 2022-05-08 21:56:29 -07:00
Makefile Add signing to Makefile, ignore build and dist directories 2022-06-01 18:17:44 -07:00
phpunit.integration.xml Import generated app from Nextcloud Store 2022-05-08 21:56:29 -07:00
phpunit.xml Import generated app from Nextcloud Store 2022-05-08 21:56:29 -07:00
README.md Update README, correcting name and linking to user_external app 2022-05-17 15:28:23 -07:00

External Password

An app for Nextcloud to allow an administrator to direct a user to an external site for changing their password. This is useful in conjunction with an app like External User Authentication.

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:

"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 then run:

make && make appstore

The archive is located in build/artifacts/appstore and can then be uploaded to the App Store.

Running tests

You can use the provided Makefile to run all tests by using:

make test

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

Of course you can also install PHPUnit and use the configurations directly:

phpunit -c phpunit.xml

or:

phpunit -c phpunit.integration.xml

for integration tests