OWL ITS + 탐지시스템(인터넷 진흥원)
이민희
2022-01-13 4545664bbece1b1b185945376b344b1660669a53
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
var changelog = require( "changelogplease" );
var gittags = require( "git-tags" ).get( function( error, tags ) {
    if ( error ) {
        throw error
    }
    console.log( tags[ 1 ] + ".." + tags[ 0 ] );
    var exclude = [ "Merge", "Whitespace", "Fixup", "Cleanup", "Formatting", "Ignore" ];
    changelog( {
        ticketUrl: "https://github.com/hammerjs/hammer.js/issues/{id}",
        commitUrl: "https://github.com/hammerjs/hammerjs/commit/{id}",
        sort: false,
        repo: "./",
        committish: tags[ 1 ] + ".." + tags[ 0 ]
    }, function( error, log ) {
        if ( error ) {
            throw error;
        }
        log = parseLog( log );
        console.log( log );
    } );
    function parseLog( log ) {
        var lines = log.split( "\n" );
        var newLog = [];
        var log = [];
        var currentComponent;
 
        
        lines.shift();
        lines.forEach( function( line ) {
            var newLine = parseLine( line );
            if ( newLine ) {
                log.push( line );
            }
        } );
        var log = log.join( "\n" );
        return log.replace( /\*/g, "-" ).replace( /__TICKETREF__,/g, "" );
    }
    function parseLine( line ) {
        var parts = getParts( line );
 
        if ( exclude.indexOf( parts.component ) > -1 ) {
            return false;
        }
        return parts;
    }
    function getParts( line ) {
        var parts = line.split( ":" );
        var component = "";
        var message;
        var commits = line.match( /\{\{([A-Za-z0-9 ]){0,99}\}\}/ )
 
        if ( parts.length > 1 && parts[ 0 ].length <= 20 ) {
            component = parts[ 0 ];
            parts.shift();
            message = parts.join( ":" );
        } else {
            parts = line.split( " " );
            component = parts[ 1 ];
            parts.shift();
            message = parts.join( " " );
        }
 
        if ( component ) {
            component = component.replace( /\* |,/, "" );
        }
        return {
            component: component,
            message: message
        };
    }
} );