Closed labanca closed 1 year ago
Possível solução:
O DPM ao ser transformado em pacote incluiu os comandos de retroceder diretório na string da variavel dataset dir, conforme imagem a seguir:
Removê-los pode resolver o problema.
Mesmo alterando o projeto do DPM origional atualizando no docker e no projeto local testdpm, o erro ainda continua.
Ao debugar no pycharm o valor da string dataset_dir está correto, mas ao instanciar a variável os caraceters de retroceder para o diretorio parent continuam:
Pode ser um erro devido ao os.path.join estar executando no unix pelo docker.
Tentei mudar a string para/datapackages
, /datapackages
,./datapackages
e nenhuma mudou o comportamento ao salvar os pacotes do dpm. Agora os arquivos não são salvos nem na raiz do C:/
@labanca relata aqui qual era o problema e fecha esse issue.
Ao que tudo indica, quando o DPM foi transformado em pacote o uso do Twine e outras alterações feitas para prepará-lo para publicação no testepipy resultou nas mudanças dos caminhos relativos de pasta. Assim o caminho 'datapackages' se tornou '../../datapackages'.
Mesmo atualizando o pacote no github e no docker não corrigia o erro, pois a versão que estava sendo executada no container do Docker era a que ficava no diretório 'sites-packages' no linux do container . Após identificar isso e remover essa versão, as correções dos caracteres Unix indesejados desapareceram.
Ao importar o package DPM e tentar utilizá-lo, as resources estavam sendo salvas dois niveis acima do PWD do projeto:
O caminho
../../
é um comando unix para retroceder ao diretório parent duas vezes, o que está fazendo com que os arquivos sejam salvos na raiz do C:/ do Windows.