zenozeng/gitlab-changelog

A simple php script to generate changelog via gitlab API v3

Installs: 5

Dependents: 0

Stars: 6

Watchers: 1

Forks: 2

Language: PHP

v0.2.0 2015-06-26 02:53 UTC

README

A php script to generate changelog via gitlab api v3

Usage

composer.json:

{
    "require": {
        "zenozeng/gitlab-changelog": "0.1.1"
    }
}

index.php:

<?php
require "vendor/autoload.php";

use GitlabChangelog\GitlabChangelog;

$changelog = new GitlabChangelog();
$changelog->url = "http://gitlab.alibaba-inc.com/";
$changelog->repo = "ata/atatech-kb";
$changelog->token = "YOUR PRIVATE TOKEN";

$changelog->milestoneFilter = function($milestone) {
    $ignore = array("todo", "long running task", "team", "next release");
    return !in_array($milestone->title, $ignore);
};
$changelog->getLabels = function($issue) {
    $label = "Fixed";
    $map = array(
        "bug" => "Fixed",
        "enhancement" => "Improved",
        "feature" => "Added"
    );
    foreach($map as $k => $v) {
        if(strripos(implode(',', $issue->labels), $k) !== FALSE) {
            $label = $v;
            break;
        }
    }
    return array($label);
};

$changelog->debug = true;

$markdown = $changelog->markdown();

file_put_contents("changelog.md", $markdown);
?>

Run:

composer install
php index.php

About PSR-4

http://culttt.com/2014/05/07/create-psr-4-php-package/