Как автоматизировать развертывание микросервисов в литейном облачном хранилище после его сборки с помощью maven - PullRequest
0 голосов
/ 12 июня 2018

Я создал микросервис с использованием Springboot 2 и Spring 5. Я могу построить с помощью Maven и успешно запустить приложение Springboot.Я даже могу сделать ручной переход к основному литейному облаку с помощью команд cf.Тем не менее, я хотел бы автоматизировать этот процесс.Как всякий раз, когда моя сборка Maven успешна, процесс автоматизации должен прочитать мой файл манифеста и развернуть jar из целевой папки в среду облачного литейного производства.Я не понимаю, как этого добиться.Должен ли я настроить свой файл settings.xml внутри репозитория maven ->. M2 с подключением к облачному литейному цеху, чтобы протолкнуть артефакт или написать несколько сценариев maven и cf для его автоматизации.

Пожалуйста, помогите мне посоветовать и предоставить любыесправочный материал или ссылка для автоматизации этого.

Спасибо

1 Ответ

0 голосов
/ 12 июня 2018

Pivotal производит плагины maven и gradle, которые позволяют cf push вашему приложению.

Для maven вы можете добавить и настроить плагин следующим образом:

<project …>
    …
    <build>
        <plugins>
        …
            <plugin>
                <groupId>org.cloudfoundry</groupId>
                <artifactId>cf-maven-plugin</artifactId>
                <version>1.0.1</version>
                <configuration>
                    <server>pivotal-cloud-foundry</server>
                    <target>https://api.run.pivotal.io</target>
                    <space>development</space>
                    <appname>my-java-app</appname>
                    <url>my-java-app.cfapps.io</url>
                    <memory>512</memory>
                    <instances>3</instances>

                    <env>
                        <greeting>Hello</greeting>
                    </env>

                    <services>
                        <service>
                            <name>app-db</name>
                            <label>elephantsql</label>
                            <provider>elephantsql</provider>
                            <version>n/a</version>
                            <plan>turtle</plan>
                        </service>
                    </services>
                </configuration>
            </plugin>
        </plugins>
    <build>
<project> 

Это позволит вам:

mvn clean package cf:push cf:start

HTH

...