Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[stable-3.9] Documentation for mass deployment. #5857

Merged
merged 1 commit into from
Jul 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
10 changes: 10 additions & 0 deletions doc/advancedusage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ Options
.. index:: command line switches, command line, options, parameters
.. include:: options.rst

Mass Deployment And Account Creation
-------
.. index:: mass deployment
.. include:: massdeploymentcommandline.rst

Configuration File
------------------
.. index:: config file
Expand All @@ -28,3 +33,8 @@ Low Disk Space
--------------
.. index:: disk space
.. include:: lowdiskspace.rst

Wizard Account Setup Command-line Options
-------
.. index:: wizard accountsetup command-line
.. include:: wizardaccountsetupcommandline.rst
30 changes: 30 additions & 0 deletions doc/massdeploymentcommandline.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
It is possible to perform mass deployment of the Nextcloud desktop client by passing certain command-line parameters from the deployment step to Nextcloud desktop client executable after the initial setup.
This will allow desktop client to generate a config (.cfg) file that will be used during subsequent launches.
A config file will have a corresponding account written into it similar to if you have added it manually via the desktop client's UI.
The desktop client will exit with code 0 if account has been added successfuly, or 1 in case of failure.
Detailed failure message is printed to the desktop client logs.

The following parameters are supported:

``--userid``
(required) userId (username as on the server) to pass when creating an account via command-line.

``--apppassword``
(required) appPassword to pass when creating an account via command-line (see the ``login-flow`` section in server documentation on how to generate the app password).

``--localdirpath``
(optional) path where to create a local sync folder when creating an account via command-line. If skipped, then default local sync folder path (/home/<userid>/Nextcloud<n> for Linux/mac or C:/<userid>/Nextcloud<n> for Windows) will be generated by desktop client.

``--isvfsenabled``
(optional) whether to set a VFS or non-VFS folder (1 for 'yes' or 0 for 'no') when creating an account via command-line. Default is 0.

``--remotedirpath``
(optional) path to a remote subfolder when creating an account via command-line. e.g. If the server has folders "/Photos", "/Documents", "/Music" you can pass "/Music" and then this folder will get set up as remote root.

``--serverurl``
(required) a server URL to use when creating an account via command-line. (NOTE: There is another parameter supported by Nextcloud desktop client ``--overrideserverurl`` but it SHOULD NOT be used here as it is intended for setup via UI with wizard)

Examples:

- ``C:\Program Files\Nextcloud\nextcloud.exe" --userid admin --apppassword Jliy12356785jxnHa2ZCiZ9MX48ncECwDso95Pq3a5HABjY34ZvhZiXrPfpKWUg7aOHAX5 --localdirpath "D:\\Nextcloud-sync-folder" --remotedirpath /Music --serverurl "https://cloud.example.com" --isvfsenabled 1"`` - this will create a config file for user admin on the server https://cloud.example.com and set a remote root folder to "Music", the local sync folder will get created with VFS mode.
- For Linux and mac the same example as above will work but ``nextcloud.exe path`` and ``--localdirpath`` value should get changed to platform specific format (e.g. ``no .exe extension`` and ``/home/<user folder>`` format)
16 changes: 16 additions & 0 deletions doc/wizardaccountsetupcommandline.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
If you want to automate an Account Setup Wizard to allow the user skip entering server URL and local sync folder path in UI, you can use command-line parameters.
When you specify both, the desktop client's Account Setup Wizard will jump straight to opening a browser for account authentication/connection without the need of entering any of the connection details.
The local sync folder will also be selected to the one you specify instead of using default path (/home/Nextcloud)

The following parameters are supported:

``--overridelocaldir``
specify a local dir to be used in the account setup wizard (e.g.: /home/nextcloud-sync-folder)

``--overrideserverurl``
specify a server URL to use for the force override to be used in the account setup wizard (e.g.: https://cloud.example.com)

Examples:

- ``C:\Program Files\Nextcloud\nextcloud.exe" --overridelocaldir "D:/work/nextcloud-sync-folder" --overrideserverurl https://cloud.example.com
- For Linux and mac the same example as above will work but ``nextcloud.exe path`` and ``--overridelocaldir`` value should get changed to platform specific format (e.g. ``no .exe extension`` and ``/home/<user folder>`` format)