Esta é uma questão de duas partes. No caso em que há várias máquinas para as quais os usuários obtêm um único diretório inicial - ou seja, inserindo em qualquer uma das máquinas, o usuário encontrará os mesmos arquivos em ~/
, independentemente de qual máquina eles foram criados - qual é a abordagem padrão para separar arquivos e executáveis para executar trabalhos diferentes em cada máquina?
Primeiro, como se pode saber se é necessário compilar o código separadamente para cada máquina? Existem testes abrangentes para garantir que um executável não seja executado de forma diferente em um servidor que não foi originalmente usado para compilar o código?
No caso em que o código ou as bibliotecas compilados não devem ser usados em todas as máquinas, qual é a maneira padrão de separá-lo no diretório pessoal compartilhado? É suficiente armazenar em subdiretórios separados e alterar $PATH
variáveis dependendo de qual servidor você está logado? Ou pode-se redefinir $HOME
para apontar em um desses subdiretórios e apenas operar com isso? Existem ferramentas disponíveis para lidar com esse tipo de situação de forma robusta? Algo como os contêineres do Docker seria uma boa escolha?