Установка версии приложения GAE из свойства компьютера в Maven - PullRequest
0 голосов
/ 30 октября 2018

Я бы хотел получить версию для моего приложения AppEngine Standard из версии POM, используя цель maven-build-helper-plugin regex-property, чтобы превратить версию Maven POM в допустимую строку версии GAE (строчные буквы, только буквенно-цифровые символы и подчеркнуть).

Так что в POM я пытаюсь сделать это:

<groupId>foobar.tests</groupId>
<artifactId>version-test</artifactId>
<version>1.0-SNAPSHOT</version>

<packaging>war</packaging>

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>build-helper-maven-plugin</artifactId>
            <version>3.0.0</version>
            <executions>
                <execution>
                    <id>compute-gae-version</id>
                    <goals>
                        <goal>regex-property</goal>
                    </goals>
                    <configuration>
                        <name>gae.version</name>
                        <regex>[^A-Za-z0-9]+</regex>
                        <value>${project.version}</value>
                        <replacement>-</replacement>
                        <failIfNoMatch>false</failIfNoMatch>
                        <toLowerCase>true</toLowerCase>
                    </configuration>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>com.google.cloud.tools</groupId>
            <artifactId>appengine-maven-plugin</artifactId>
            <version>1.3.2</version>
            <configuration>
                <deploy.version>${gae.version}</deploy.version>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1</version>
        </plugin>

    </plugins>
</build>

<dependencies>
     [...]
</dependencies>

За исключением, конечно, не работает: приложение развертывается с меткой версии, рассчитанной по метке времени по умолчанию. Я понимаю, что это потому, что блок configuration для плагина AppEngine оценивается раньше, до запуска build-helper.

Есть ли способ это исправить?

1 Ответ

0 голосов
/ 02 ноября 2018

Я считаю, что это та же проблема, что и в этом посте.

Переместите блок конфигурации из блока исполнений и используйте mvn build-helper:regex-property appengine:deploy для развертывания версии приложения GAE, как предлагает fboulay.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...