Commit graph

14 commits

Author SHA1 Message Date
ca8d31d9ed add badge 2023-11-08 13:25:03 +01:00
Robert Dailey
f2ce54653b Fix various custom script processing issues
The following issues were addressed. Note that these are edge cases.

* If an empty `/cron-scripts` directory was mounted in the container, an
  error would occur.
* If files in the `/cron-scripts` directory had spaces in the name, this
  would cause issues.
* stdin was held open when running `docker exec` which would cause hangs
  and other issues. The `exec` command is now run non-interactively.
* Custom scripts that failed would interrupt processing of scripts after
  it, if any.
2020-10-27 16:48:34 -05:00
Robert Dailey
ff71477632 Do not replace built-in scripts
When the user mounts /cron-scripts in the container, this replaced the built-in
scripts. The built-in scripts are now shipped in /cron-scripts-builtin now.
2020-10-26 13:55:10 -05:00
Robert Dailey
d13a18876a Links & build status added to README 2020-09-18 12:36:27 -05:00
Robert Dailey
6bd173f22e Add troubleshooting section to README
Initial troubleshooting topics are related to errors seen when there is
no bash available in the Nextcloud container. Relates to issue #6.
2020-08-28 15:39:15 -05:00
Robert Dailey
faa77b77c8 Support for custom shells
It is now possible to override and explicitly specify the shell you
would like used when executing cron tasks. This is accomplished with the
NEXTCLOUD_EXEC_SHELL environment variable, which defaults to bash. You
can also override and customize the arguments provided to that shell
executable via NEXTCLOUD_EXEC_SHELL_ARGS, which defaults to "-c".

See documentation for more detail and examples.

Fixes #6
2020-08-28 15:23:33 -05:00
Robert Dailey
08ec92f509 Add extra logs and debugging features
* New DEBUG environment variable enables `set -x` in shell scripts for
  extra verbose output for debugging custom cron scripts and to assist
  with development of the core scripts.
* Verify if we can find the Nextcloud container on start up. Fail if
  not.
* Print information about how we will search for Nextcloud on start up.
* During cron task execution, the ID of the Nextcloud container is
  printed, if found.
2020-08-28 14:52:00 -05:00
Robert Dailey
9eedf6f503 README: Multiple custom task script support
Explain in the README that multiple shell scripts are supported for
custom cron tasks.
2020-01-15 09:06:56 -06:00
Robert Dailey
241d96828d Clarify some aspects of the setup instruction example
An example is provided for the path to the YML file so that `NEXTCLOUD_PROJECT_NAME`
in the example makes sense.
2019-10-28 08:05:53 -05:00
Robert Dailey
6416dd8731 Cronjob works now between Nextcloud container recreation
If the Nextcloud container is recreated while the cronjob container is still running, the ID of the
container is obtained each time the cron tasks are executed. Previously it was cached on entrypoint,
so if the ID changed this container would fail.
2019-06-20 19:34:58 -05:00
Robert Dailey
0bfd68a109 Fix markdown lint issues and incorrect image name 2019-05-25 12:23:35 -05:00
Robert Dailey
e9b5772dae
Allow configuration of user used for task execution
New NEXTCLOUD_EXEC_USER environment variable added which allows control over which
user is used to execute cron tasks inside the Nextcloud container. By default, the
user is `www-data`. If the environment variable is specified but empty, no `--user`
option is provided to `docker exec`.
2019-01-11 21:08:39 -06:00
Robert Dailey
ab6372fa79 Provide the ability to run user-defined cron tasks
Mount individual shell scripts (with the `*.sh` extension) inside `/cron-scripts/` in the
container. The cron daemon will automatically run these scripts inside the Nextcloud
container for you. Write the scripts as if they will run in the Nextcloud container
itself.
2018-12-06 17:58:26 -06:00
Robert Dailey
a48d069b3e Add README 2018-12-01 21:35:08 -06:00