abntex/limarka

Utilização de 'guard' através do docker

edusantana opened this issue · 3 comments

Comportamento esperado: poder executar o guard

Warning: you have a Gemfile, but you're not using bundler or RUBYGEMS_GEMDEPS
11:48:08 - INFO - Guard is now watching at '/trabalho'
[1] guard(main)> 

Passos para reprodução:

$ docker run -it --entrypoint guard --mount src=`pwd`,target=/trabalho,type=bind limarka/limarka --no-bundler-warning
Warning: you have a Gemfile, but you're not using bundler or RUBYGEMS_GEMDEPS
/usr/local/bundle/gems/guard-2.15.0/lib/guard/guardfile/evaluator.rb:87:in `evaluate': invalid byte sequence in US-ASCII (ArgumentError)
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard.rb:134:in `_evaluate'
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard.rb:49:in `setup'
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard/commander.rb:32:in `start'
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard/cli/environments/valid.rb:16:in `start_guard'
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard/cli.rb:122:in `start'
	from /usr/local/bundle/gems/thor-0.20.3/lib/thor/command.rb:27:in `run'
	from /usr/local/bundle/gems/thor-0.20.3/lib/thor/invocation.rb:126:in `invoke_command'
	from /usr/local/bundle/gems/thor-0.20.3/lib/thor.rb:387:in `dispatch'
	from /usr/local/bundle/gems/thor-0.20.3/lib/thor/base.rb:466:in `start'
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard/aruba_adapter.rb:32:in `execute'
	from /usr/local/bundle/gems/guard-2.15.0/lib/guard/aruba_adapter.rb:19:in `execute!'
	from /usr/local/bundle/gems/guard-2.15.0/bin/_guard-core:11:in `<main>'

Este problema é uma consequência da configuração do locale, atualmente configurado como:

LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

Para quem está enfrentando esse problema uma solução simples é adicionar no Dockerfile:

FROM limarka/limarka:latest

# a linha abaixo que deve ser adicionada
ENV LANG C.UTF-8

E gerar a imagem customizada novamente:

docker build -t limarka:customizada - < Dockerfile

Oi @vital-edu eu desconfio que a configuração mais apropriada talvez seja a desse commit.

Você poderia testá-la também?

Acho que como utilizamos latex, alguns pacotes podem ler o valor de LANG para gerar textos traduzidos, por exemplo da palavra "Sumário", se estivesse em inglês talvez fosse gerado "Table of Contains"