Download the PHP package websolutionfalcon/lockable-command without Composer

On this page you can find all versions of the php package websolutionfalcon/lockable-command. 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 lockable-command

Laravel Lockable Command

Latest Version on Packagist Total Downloads

A simple Laravel package that allows you to lock and unlock command execution. Perfect for scenarios where you have commands running via cronjobs and need to temporarily disable them without deploying code changes. For example, if your server is overloaded by a scheduled command, you can simply lock it to prevent further executions until the issue is resolved.

Installation

You can install the package via composer:

Optionally, you can publish the config file with:

This will create a config/lockable-command.php file where you can customize the lock file path and extension.

Usage

1. Creating a Lockable Command

To make your command lockable, extend the LockableCommand class instead of the default Laravel Command class:

2. Locking and Unlocking Commands

Use the command:locker command to lock or unlock any lockable command:

Lock a command:

Unlock a command:

When a command is locked, attempting to run it will display an error message and prevent execution:

3. Configuration

The package uses a configuration file to customize behavior. Publish it to modify:

You can also set these values in your .env file:

How It Works

When you lock a command, the package creates a lock file in the configured directory. Before executing, any LockableCommand checks for the existence of its lock file. If found, execution is prevented. Unlocking simply removes the lock file, allowing the command to run normally.

The lock files are named based on the command signature with colons replaced by underscores (e.g., reports:process becomes reports_process.lock).

Use Cases

Testing

The package includes comprehensive tests. First, install dependencies:

Then run the tests:

Run tests with coverage:

Run code quality checks:

Requirements

API Reference

LockableCommand

Your commands should extend this class to make them lockable.

Methods:

CommandLocker

The artisan command for locking/unlocking commands.

Signature:

Arguments:

Example:

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Contributions are welcome! Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.


All versions of lockable-command with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
illuminate/collections Version ^11.0
illuminate/console Version ^11.0
illuminate/support Version ^11.0
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 websolutionfalcon/lockable-command contains the following files

Loading the files please wait ...