Executa tarefa de compilação no Hudson com privilégios de root

4

Eu tenho um script de construção que executa o apt-get e, portanto, requer privilégios de root. Qual é a melhor maneira de executar este script no Hudson?

Atualmente, a única solução que encontrei é a de adicionar uma entrada para o arquivo sudoers para o usuário hudson da seguinte forma:

hudson  ALL=(ALL) NOPASSWD:ALL

No entanto, embora meu script de compilação agora seja executado sem erros no Hudson, não me sinto totalmente confortável com essa solução. Existe uma maneira melhor?

    
por jensendarren 13.05.2010 / 12:48

2 respostas

6

eu vou mais um, com o bloqueio de apt-get i bloquear quais parâmetros você pode usar, porque não queremos alguém instalando ou removendo algo.

%admins         ALL =  NOPASSWD:                   \
                    /usr/bin/apt-get update,        \
                    /usr/bin/apt-get dist-upgrade,  \
                    /usr/bin/apt-get upgrade

que dá ao grupo admins permissões para executar o apt-get update / dist-upgrade / upgrade sem fornecer uma senha.

    
por 13.05.2010 / 19:15
1

Você pode bloquear os comandos que o usuário hudson pode executar como root; altere a linha no seu arquivo sudoers para:

hudson   ALL=/usr/bin/apt-get  NOPASSWD:ALL

(Verifique o caminho para o seu binário apt-get - estou rodando no Fedora, então não tenha esse comando)

    
por 13.05.2010 / 18:56