andersonmnz antes mesmo de gerar esse fix eu tinha refatorado o CI do projeto, separando a parte de teste da parte de geração do container.
Para o funcionamento do OAuth2 precisa gerar um certificado, e na fase de testes há um passo para gerar esse certificado, que acabou sendo jogado para dentro da imagem na hora do build:
- name: Generate certificate
run: |
mkdir config/jwt
openssl genrsa -out config/jwt/private.pem 2048
openssl rsa -in config/jwt/private.pem -pubout -out config/jwt/public.pem
Você pode seguir o mesmo comando para gerar o seu certificado e mapear o volume no container:
docker run --rm \
-e DATABASE_URL="mysql://...." \
-p 8080:8080 \
-v './config/jwt:/var/www/html/config/jwt' \
novosga/novosga:2.2.3
Caso você gere um certificado com senha, é necessário passar a variável OAUTH_PASSPHRASE
também:
docker run --rm \
-e DATABASE_URL="mysql://...." \
-e OAUTH_PASSPHRASE=123456 \
-p 8080:8080 \
-v './config/jwt:/var/www/html/config/jwt' \
novosga/novosga:2.2.3
Onde ./config/jwt
é o caminho, da máquina host, para o diretório onde estão os arquivo pem
.