Установить PostgreSQL 9.5 CentOS 7

Установить PostgreSQL 9.5 CentOS 7

Я пытаюсь установить PostgreSQL 9.5 на CentOS 7.

Я поискал в Интернете и выяснил, что для доступа к 9.5 RPM требуется установка pgdg95 с помощью следующей команды:

sudo rpm -ivh http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm

Я устанавливаю PostgreSQL 9.5 через свой собственный PostgreSQL RPM. RPM, который я устанавливаю, содержит мои собственные скрипты, и я буду использовать rpm-maven-plugin для их сопоставления с сервером. Я также использую этот плагин для установки пакетов PostgreSQL 9.5, добавляя их в <requires>раздел конфигурации POM.xml.

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>rpm-maven-plugin</artifactId>
    <version>2.1.5</version>
    <extensions>true</extensions>
    <configuration>
        <license>GPL (c) 2005, SWWDC</license>
        <distribution>distro</distribution>
        <group>group</group>
        <requires>
            <require>postgresql95-server</require>
            <require>postgresql95-contrib</require>
            <require>postgresql95-plpython</require>
        </requires>

        <mappings>
        </mappings>

        <prepareScriptlet>
            <scriptFile>src/scripts/prepinstall.sh</scriptFile>
        </prepareScriptlet>
        <preinstallScriptlet>      
            <scriptFile>src/scripts/preinstall.sh</scriptFile>
        </preinstallScriptlet>
        <postinstallScriptlet>
            <scriptFile>src/scripts/postinstall.sh</scriptFile>
        </postinstallScriptlet>
    </configuration>
</plugin>

Как вы видите, я добавил в пакет как скрипт pre-install, так и скрипт prep-install, которые автоматически запускаются во время установки пакета с помощью YUM. Проблема в том, что require запускается до обоих этих скриптов, и они терпят неудачу, поскольку RPM pgdg95 не установлен.

Как мне запустить команду в начале вопроса до установки требуемых RPM? Скрипты Prep/Pre install, похоже, не работают, так как Requires запускается перед ними.

решение1

Решение, которое я реализовал, состояло в том, чтобы добавить репозиторий во время установки, используя следующую строку в кикстарте:

repo --name="PostgreSQL" --baseurl="http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/"

а затем добавить в POM.xml:

<requires>pgdg-centos95-9.5-2.noarch.rpm</requires>

Связанный контент