LINUX.ORG.RU

История изменений

Исправление hummer, (текущая версия) :

Чтобы под Maven сделать подобную штуку нужно намного больше телодвижений.

Нужно всего лишь добавить один плагин, официально поддерживаемый проектом Spring Boot.

            <plugin>
                <groupId>io.github.git-commit-id</groupId>
                <artifactId>git-commit-id-maven-plugin</artifactId>
                <version>5.0.0</version>
                <executions>
                    <execution>
                        <id>get-the-git-infos</id>
                        <goals>
                            <goal>revision</goal>
                        </goals>
                        <phase>initialize</phase>
                    </execution>
                </executions>
                <configuration>
                    <generateGitPropertiesFile>true</generateGitPropertiesFile>
                </configuration>
            </plugin>

Затем нужно использовать его в коде и конкатенировать там же, а не заниматься ерундой с кастомными пропертями в BuildInfo

package com.example.demo.controllers;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.info.GitProperties;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoController {

    private final GitProperties gitProperties;

    @Autowired
    public DemoController(GitProperties gitProperties) {
        this.gitProperties = gitProperties;
    }

    @GetMapping("/revision")
    public String revision() {
        return gitProperties.getShortCommitId() + '_' + gitProperties.get("total.commit.count");
    }
}

Исходная версия hummer, :

Чтобы под Maven сделать подобную штуку нужно намного больше телодвижений. Нужно всего лишь добавить один плагин, официально поддерживаемый проектом Spring Boot.

            <plugin>
                <groupId>io.github.git-commit-id</groupId>
                <artifactId>git-commit-id-maven-plugin</artifactId>
                <version>5.0.0</version>
                <executions>
                    <execution>
                        <id>get-the-git-infos</id>
                        <goals>
                            <goal>revision</goal>
                        </goals>
                        <phase>initialize</phase>
                    </execution>
                </executions>
                <configuration>
                    <generateGitPropertiesFile>true</generateGitPropertiesFile>
                </configuration>
            </plugin>

Затем нужно использовать его в коде и конкатенировать там же, а не заниматься ерундой с кастомными пропертями в BuildInfo

package com.example.demo.controllers;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.info.GitProperties;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoController {

    private final GitProperties gitProperties;

    @Autowired
    public DemoController(GitProperties gitProperties) {
        this.gitProperties = gitProperties;
    }

    @GetMapping("/revision")
    public String revision() {
        return gitProperties.getShortCommitId() + '_' + gitProperties.get("total.commit.count");
    }
}