morningtrain/laravel-deployment

Easily extract version information from a deployment.json file

v1.2.0 2022-06-02 13:16 UTC

This package is auto-updated.

Last update: 2024-03-01 00:21:13 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

A package to parse a file for version/deployment information.

Installation

You can install the package via composer:

composer require morningtrain/laravel-deployment

You can publish the config file with:

php artisan vendor:publish --tag="deployment-config"

This is the contents of the published config file:

return [
    /*
    |--------------------------------------------------------------------------
    | Deployment JSON File
    |--------------------------------------------------------------------------
    |
    | This value is the path to your JSON file. This value is used by the deployment
    | parser to know which JSON file to parse and look for deployment information,
    | to use in your application or provide services like Bugsnag or CI/CD.
    |
    */

    'file' => env('DEPLOYMENT_JSON_FILE_PATH'),
];

Deployment.json file

The deployment.json we use, looks like this

{
    "revision": "123456789",
    "version": "v1.4.0",
    "repository": "http://url-to.repository",
    "username": "User Name"
}

The package expects the file to match the format, to be able to parse it.

Usage

Get the version number

use Morningtrain\Deployment\Facades\Deployment;

Deployment::version();

Get the username of the committer

Deployment::username();

Get the revision of the commit

Deployment::revision();

Get the repository URL

Deployment::repository();

Get all the data in a Version object

Deployment::get();

Testing

composer test

Changelog

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

Credits

License

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