Commit Graph

145 Commits

Author SHA1 Message Date
Johannes Leuker
2796ef80ff Show group backends in occ group:list --info and group:info
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-03-01 16:02:08 +01:00
Christoph Wurst
8b64e92b92 Bump doctrine/dbal from 2.12.0 to 3.0.0
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-08 11:45:19 +01:00
Sean Molenaar
40595f3ee0 Command: Add app password generation
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
2021-01-05 13:05:17 +01:00
Christoph Wurst
d89a75be0b Update all license headers for Nextcloud 21
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-12-16 18:48:22 +01:00
MichaIng
7224db548d Register new command db:add-missing-primary-keys
Introduced with: d5df033ede

Signed-off-by: MichaIng <micha@dietpi.com>
2020-11-13 00:02:05 +01:00
Morris Jobke
dc479aae2d Improve CertificateManager to not be user context dependent
* removes the ability for users to import their own certificates (for external storage)
* reliably returns the same certificate bundles system wide (and not depending on the user context and available sessions)

The user specific certificates were broken in some cases anyways, as they are only loaded if the specific user is logged in and thus causing unexpected behavior for background jobs and other non-user triggered code paths.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-11-03 00:13:01 +01:00
Christoph Wurst
2a054e6c04 Update the license headers for Nextcloud 20
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-08-24 14:54:25 +02:00
Roeland Jago Douma
987f621173 Merge pull request #22331 from nextcloud/bugfix/noid/dont-use-deprecated-inigetwrapper
Don't use deprecated getIniWrapper() anymore
2020-08-20 19:45:47 +02:00
Morris Jobke
567e99abe2 Use the DI container also for the Install command registration
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-20 16:35:38 +02:00
Roeland Jago Douma
5340ab3a75 New SSE key format
* Encrypt the keys with the instance secret
* Store them as json (so we can add other things if needed)

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-08-20 15:42:43 +02:00
Morris Jobke
7506cbb1c4 Show disabled user count in occ user:report
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-19 09:31:41 +02:00
Morris Jobke
d7f66c36ac Fix "misplaced variables" warning of Psalm in PHPDoc statements
Ref #21787

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-17 17:46:57 +02:00
Morris Jobke
d8734b3b93 Add occ preview:migrate to migrate previews from the old flat structure to a subfolder structure
* `php occ preview:repair` - a preview migration tool that moves existing previews into the new location introduced with #19214
* moves `appdata_INSTANCEID/previews/FILEID` to `appdata_INSTANCEID/previews/0/5/8/4/c/e/5/FILEID`
* migration tool can be stopped during migration via `CTRL+C` - it then finishes the current folder (with the previews of one file) and stops gracefully
* if a PHP memory limit is set in the `php.ini` then it will stop automatically once it has less than 25 MiB memory left (this is to avoid hard crashes in the middle of a migration)
* the tool can be used during operation - possible drawbacks:
    * there is the chance of a race condition that a new preview is generated in the moment the folder is already migrated away - so the old folder with the newly cached preview is deleted and one cached preview needs to be re-generated
    * there is the chance of a race condition during access of a preview while it is migrated to the other folder - then no preview can be shown and results in a 404 (as of now this is an accepted risk)

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2020-08-06 22:05:46 +02:00
Morris Jobke
e57bca31ad Merge pull request #20005 from joeried/occ-remove-bruteforce-attempts-by-ip
Implement occ command to reset bruteforce attemps from a given IP address
2020-05-25 14:04:18 +02:00
Joas Schilling
720dc4e93d Add optional column oc_comments.reference_id
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-03-31 10:51:15 +02:00
Johannes Riedel
0c38569c83 Implement occ command security:bruteforceattemps:reset-for-ip
Signed-off-by: Johannes Riedel <joeried@users.noreply.github.com>
2020-03-19 16:20:22 +01:00
Christoph Wurst
5bf3d1bb38 Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Christoph Wurst
d180a98714 Make it possible to broadcast events to (web) clients
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-10-28 13:58:13 +01:00
John Molakvoæ (skjnldsv)
5d01850dce Add detailed users listing in occ user:info command
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-10-17 10:38:53 +02:00
Ruben Homs
98047e8c1c Stop decryption when maintenance mode is enabled, fixes #8311
Signed-off-by: Ruben Homs <ruben@homs.codes>
2019-05-21 09:24:50 +02:00
Daniel Kesselberg
08907ee3e9 Enable multiple apps at once
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-19 21:03:00 +01:00
Daniel Kesselberg
0b58b0faf3 Do not run getRepairSteps in register_commands
getRepairSteps is quite expensive (because every repair step is
initialized and their dependencies are injected). Should not
call it during register.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-13 23:06:46 +01:00
Michael Gerber
020a9add07 Add occ app:update command
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-11-01 17:13:12 +01:00
Patrik Kernstock
1973556346 Log exception using ILogger
Signed-off-by: Patrik Kernstock <info@pkern.at>
2018-10-05 21:09:13 +02:00
Patrik Kernstock
f27ce6b5a0 Inject AppManager and Installer, check for shipped app prior removing
Signed-off-by: Patrik Kernstock <info@pkern.at>
2018-10-05 19:51:50 +02:00
Patrik Kernstock
d9469a6b72 Add occ app:remove CLI command
Signed-off-by: Patrik Kernstock <info@pkern.at>
2018-10-05 03:08:03 +02:00
Christoph Wurst
259c0ce11d Add mandatory 2FA service/class
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-09-30 11:47:29 +02:00
Christoph Wurst
7586b19e52 Only allow 2FA state changs if providers support the operation
Ref https://github.com/nextcloud/server/issues/11019.

Add `twofactorauth:cleanup` command

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-09-25 09:54:20 +02:00
Denis Mosolov
0b18e2c75d Add an options to create and remove groups via occ
Signed-off-by: Denis Mosolov <denismosolov@gmail.com>
2018-08-16 10:31:20 +03:00
Christoph Wurst
13d93f5b25 Make 2FA providers stateful
This adds persistence to the Nextcloud server 2FA logic so that the server
knows which 2FA providers are enabled for a specific user at any time, even
when the provider is not available.

The `IStatefulProvider` interface was added as tagging interface for providers
that are compatible with this new API.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-06-20 08:30:26 +02:00
Roeland Jago Douma
80cc8d0028 Emit event when running ./occ db:add-missing-indices
This allows apps to listen to this event in order to also update
indecies there.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-24 18:03:10 +02:00
Joas Schilling
f772b7b4dd Add autocomplete to migration commands
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-05-03 16:52:56 +02:00
Joas Schilling
17a26dfcc1 Validate the info.xml against the appstore schema file
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-16 10:23:51 +01:00
Bjoern Schiessle
41ee23a054 make occ command more generic
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-12-18 21:14:45 +01:00
Bjoern Schiessle
fda98ee917 add occ command to add a index to share_with at the share table
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-12-18 21:14:45 +01:00
Morris Jobke
0e2f00ec59 Get the Installer via DI
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-25 12:00:57 +01:00
Morris Jobke
0eebff152a Update license headers
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Morris Jobke
dd192e5df9 Use proper DI for repair command
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-10-24 14:13:45 +02:00
Joas Schilling
e2ec6b33ea Add a command to manually migrate to big ints
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-13 11:42:15 +02:00
sualko
3e62a25155 add occ app:install command
Signed-off-by: Klaus Herberth <klaus@jsxc.org>
2017-07-26 14:35:42 +02:00
Joas Schilling
0a0dbbdf15 Remove generate change script which doesnt work with migrations anymore
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:47:39 +02:00
Joas Schilling
f6c48b1548 Add a script to generate a migration from database.xml
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-25 12:45:38 +02:00
Joas Schilling
8c39e66619 Do not allow to go back on productive systems
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Joas Schilling
15eec7b83c Start migrations
Fixme:
- Install and update of apps
- No revert on live systems (debug only)
- Service adjustment to our interface
- Loading via autoloader

Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-05 13:01:19 +02:00
Julius Härtl
2e47210d6f Add command to apply updates to custom themes
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-07-05 12:38:07 +02:00
Morris Jobke
713f684a8b Adding tests for 4 byte unicode characters
* success on SQLite and Postgres
* failure on MySQL due to the limited charset that only supports up to 3 bytes

Add config option to update charset of mysql to utf8mb4

* fully optional
* requires additional options set in the database

only disable unicode test on mysql

Fixing ctor call

Adding docker based unit test execution for mysql utf8mb4

Add mysqlmb4 test configuration to Jenkinsfile

fix collation on utf8mb4

Properly setup charset and collation in the doctrine connection

Allow files containing 4-byte chars in case the database supports it

During setup of a mysql database we try to detect if charset 'utf8mb4' can be used

Fix mysql settings

Add console command to migrate the charset

Set ROW_FORMAT before setting collation to mb4

Also select tables with wrong collation

Faster MySQL docker

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-21 16:42:12 -06:00
Morris Jobke
edd55b0ea9 Use SystemConfig instead of AllConfig for DB stuff
* preparation for followup PRs to clean up the DB bootstrapping

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-19 15:53:49 -06:00
Morris Jobke
9533f4e5ed Clean up single user mode
Single user mode basically disables WebDAV, OCS and cron execution. Since
we heavily rely on WebDAV and OCS also in the web UI it's basically useless.
An admin only sees a broken interface and can't even change any settings nor
sees any files. Also sharing is not possible.

As this is at least the case since Nextcloud 9 and we haven't received any
reports for this it seems that this feature is not used at all so I removed it.

The encryption commands now rely on the well tested maintenance mode.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-02-22 23:02:31 -06:00
Jörn Friedrich Dreyer
817729dc3f add upgrade command before repair, handle NeedsUpgradeExcaption better 2016-10-24 17:52:49 +02:00
Thomas Müller
a7245ea082 Fixing ctor call 2016-10-19 00:15:01 +02:00