michael-rubel/artisan-release-command
| Install | |
|---|---|
composer require michael-rubel/artisan-release-command |
|
| Latest Version: | 2.0.2 |
| PHP: | ^8.1 |
| Laravel: | 10 · 11 |
| License: | MIT |
| Last Updated: | Nov 5, 2025 |
| Links: | GitHub · Packagist |
Artisan Release Command
Artisan command to create a GitHub release of your code.
Prerequisites
- GitHub Actions
- GitHub CLI
- Access to a version file (Linux permissions).
The package requires PHP 8.1 or higher and Laravel 10.8 or higher.
#StandWithUkraine
Installation
Install the package using composer:
composer require michael-rubel/artisan-release-command --dev
Publish the config if you need to customize the command:
php artisan vendor:publish --tag="artisan-release-command-config"
Usage
Setup the GitHub Actions workflow trigger with the following parameters:
on:
push:
tags:
- '[0-9]+.[0-9]+.[0-9]+'
Or alternatively:
on:
release:
types:
- created
Create a versioning file, for example:
<?php
namespace App;
abstract class Service
{
/**
* App version.
*/
final public const VERSION = '0.0.1';
}
Note: the version file should always contain a VERSION constant for the command to work. You can configure the constant name in the configuration file if you want to name it for example "APP_VERSION"
The command will bump version based on the SemVer 2.0 type you'll provide.
php artisan release {type}
It will pick the latest release you have in the versioning file, bump it a step further and push the change to the remote repository using your current Git setup. Make sure you're authorized to perform basic operations on your repository.
For example:
php artisan release major
Available options: major, minor, patch
Default value: patch
After the version is pushed, it will create a release using GitHub CLI and provide auto-generated notes.
Beta release
Creates the pre-release based on the given version type:
php artisan release major --beta
If you had 0.0.1 in your version file, after this command it will be 1.0.0-beta, and the release will be marked as "pre-release" on GitHub (deployment won't be triggered if you use [0-9]+.[0-9]+.[0-9]+ pattern in GitHub Actions).
Testing
composer test
License
The MIT License (MIT). Please see License File for more information.
Related Packages
A Laravel calendar table database migration and console command.
This scans your laravel project for used locale keys that aren't translated by y...
Provide more commands for more wholesome artisan experience
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 2.0.2 | ^8.1 | ^10.8| | MIT | |
| 2.0.1 | ^8.1 | ^10.8| | MIT | |
| 2.0.0 | ^8.1 | ^10.8 | MIT | |
| 1.1.0 | ^8.1 | ^10.8 | MIT | |
| 1.0.0 | ^8.1 | ^10.8 | MIT |