|
2 weeks ago | |
---|---|---|
.github/issue_template | 12 months ago | |
assets | 2 weeks ago | |
bin | 1 year ago | |
config | 5 months ago | |
migrations | 5 months ago | |
public | 1 year ago | |
src | 5 months ago | |
templates | 5 months ago | |
translations | 5 months ago | |
.env.sample | 11 months ago | |
.gitignore | 10 months ago | |
CHANGELOG.md | 5 months ago | |
LICENSE.md | 2 years ago | |
README.md | 9 months ago | |
composer.json | 1 month ago | |
composer.lock | 2 weeks ago | |
install.sh | 9 months ago | |
package-lock.json | 2 weeks ago | |
package.json | 1 month ago | |
symfony.lock | 9 months ago | |
version | 5 months ago | |
webpack.config.js | 9 months ago |
README.md
Webcron Management
(c) 2017-2018, 2021- Jeroen De Meerleer me@jeroened.be
Webcron management is an easy-to-use interface to manage cronjobs running on a publicly available http-location.
Building
Requirements for build-server
- php <= 8.1 (incl composer <= 2, ext-pcntl, ext-openssl, ext-intl)
- NodeJS <= 16.0 (incl. npm <= 8)
Building
Please run following command on the build server
$ composer install --no-dev --optimize-autoloader
$ npm install
$ npm run build
$ rm -rf node_modules # Node modules are only required for building
Installation
Requirements
- php <= 8.1
- ext-openssl
- ext-intl
- ext-pcntl (highly recommended)
- MariaDB
- SSH-access to the server
- Ability to change the webroot directory
- Ability to run a script as daemon (eg. supervisor or systemd units)
Installation
-
Create a build yourself or download the build from the releases page
-
Upload the build to the webserver.
-
Set up your webhosting to use the
/public
directory as web root -
Create the .env file by copying .env.sample to .env and change the values
-
Run
php bin/console doctrine:migrations:migrate
to create or migrate the database -
Create a first user by running
php bin/console webcron:user add
-
Set up the daemon script using systemd, supervisord or similar system
If this is not possible running the daemon using a cronjob is still possible using below gist (Not recommended)
0 * * * * cd /path/to/webcron/ && php webcron daemon --time-limit=3600 > /dev/null 1&>2
Upgrading
Requirements
Same requirements and deploying
Procedure
- Remove all files except .env from the webserver
- Upload the new build to the webserver
- Run
php bin/console doctrine:migrations:migrate
to migrate the database
Common pitfalls
I can't do an automatic system upgrade!
Doing a system upgrade requires sudo which has a certain number security measurements. To enable running anything with sudo (eg. sudo apt dist-upgrade -y
) the user needs to be able to run sudo without tty and password.
TL;DR