Download the PHP package helhum/typo3-crontab without Composer

On this page you can find all versions of the php package helhum/typo3-crontab. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package typo3-crontab

TYPO3 Command scheduling (crontab)

Disclaimer

This package is made with the intention to, at some point, replace the current functionality of TYPO3 scheduler extension. It is in early development stage, which means that not all features (especially UI wise) are implemented yet, but the implemented functionality is known to work reliably. This package currently does not work in Windows environments, as no POSIX functions (posix_getpgid) are available, which are required to check whether the processes are actually running.

Key features

Installation

  1. Add the extension to your TYPO3 Project: composer require helhum/typo3-crontab
  2. Configure the system cron to run the command: /path/to/vendor/bin/typo3cms crontab:run
  3. Configure tasks in your TYPO3 configuration file(s)

Configuring schedules for commands (and scheduler tasks)

Configuring schedules it purely done through configuration (aka. TYPO3_CONF_VARS), typically in LocalConfiguration.php or AdditionalConfiguration.php

This means:

  1. Extensions could add tasks as well (through ext_localconf.php files)
  2. It is possible to add different tasks in different environments (by providing different configuration for different environments)
  3. Deploy same tasks in all environments

Example (in yaml notation):

Current state

Concepts (especially in relation to TYPO3 scheduler)

Everything is a command or script

The main purpose of this extension is to execute different units of work as background task on a regular schedule. Similar to Unix crontab, a unit of work is limited to be a TYPO3 Console command or shell script. To provide backwards compatibility, Scheduler tasks are wrapped into a special command, so that they can be used as unit of work, too. So every command that is available as command in TYPO3 Console and every shell script, will be a valid unit of work to be scheduled. Whether it makes sense to do schedule certain commands, is up to you to decide.

Just a crontab

Just like with a Unix crontab, there is no possibility for defining start or end time or for setting a unit of work to only execute once.

It is possible to configure commands to be scheduled, but remove them from regular scheduled executions. Similar to adding commands to your crontab but commenting them out, so that they are ignored.

Such commands will appear in the UI as "disabled". On first deployment on a target system all configured commands are disabled and must be enabled to be scheduled, either through the UI, or by using the crontab:schedule command.

Security considerations

Since conceptually it is possible to execute any TYPO3 Console command, it becomes pretty clear, users with access to this module must be considered to have access to the complete TYPO3 installation (system maintainer) and to an extent also to the underlying OS. Just similar to having access to extension manager (which allows integrating PHP code) or install tool (where you can create admin users).

Contribution

Every contribution is valuable. Please check it out and test it, give feedback by creating feature requests or suggestions, create pull requests with change suggestions, reach out to me via Twitter or any other channel.


All versions of typo3-crontab with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
dragonmantank/cron-expression Version ^2.3
typo3/cms-core Version ^11.5 || ^12.4
typo3/cms-extbase Version ^11.5 || ^12.4
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package helhum/typo3-crontab contains the following files

Loading the files please wait ....