Como referir-se a quaisquer arquivos ou scripts incluídos no RPM de% pre% post scriptlets

1

Estou construindo um pacote RPM que empacota os vários arquivos que incluem arquivos de propriedades, arquivos de configuração, scripts, JARs etc. Agora, ao escrever os% pre,% post,% preun e% postun scritptlets, eu preciso fazer uso de alguns dos scripts que eu tenho em scripts / pasta (que foram empacotados no RPM). Então, eu quero ser capaz de fazer algo assim:

%pre
export scripts/important.sh
someFunctionFromImportant parameter
%post
. scripts/anotherScript.sh
someFuncFromAnotherScript parameters

Agora, como quero copiar apenas, cole este RPM em qualquer sistema e instale-o, e os% script %pre e %post devem ser executados. Já passei por tantos tutoriais e ainda estou procurando uma maneira de conseguir isso. Nota: Meus requisitos não permitem que eu tenha esses scripts já presentes no sistema em que o RPM está sendo instalado. É como a partir do próprio arquivo RPM, tudo deve acontecer de forma limpa, a instalação junto com os scripts pré e pós instalação.

    
por iamharish15 22.02.2016 / 20:07

2 respostas

1

O que você quer fazer não é possível do jeito que eu entendi sua pergunta. O script %pre é executado antes que qualquer coisa do RPM esteja disponível no disco, portanto, não pode referenciar nada do pacote. O script %post , por outro lado, é executado depois que a carga útil do pacote foi colocada no lugar, portanto, essa parte está correta. Para mais detalhes sobre a ordem em que as operações ocorrem para instalação / atualização / remoção de pacotes RPM, você pode ver o link . Embora esta URL seja específica do projeto Fedora, as informações nela contidas devem ser válidas para qualquer distribuição linux baseada em RPM.

    
por 22.02.2016 / 20:18
0

Se você tiver pré-requisitos que precisam estar disponíveis em %pre , crie outro rpm e dependa dele. É isso ou você faz algo terrível como curl ing nos arquivos que você precisa. Eu acho que um my-project-tools rpm ou algo parecido contendo seus pré-requisitos é melhor.

    
por 27.06.2018 / 00:53

Tags