Problema:
Estou obtendo o seguinte erro ao executar comandos via SSH para rodar a aplicação em GO no servidor EC2:
segue o link do meu repositório: https://github.com/luancardosoti/curso_ci
Já verifiquei todas as chaves secretas do github, já verifiquei as regras de entrada e saída dos grupos de segurança do banco e da máquina ec2.
Acessei a máquina do ec2 e instalei o postgres-client e executei o comando de conexão com o banco de dados "psql -h host -p 5432 -U postgres -d root", e consegui me conectar, ou seja, deduzo que a máquina EC2 tem acesso ao banco de dados. Porém não entendo o porque ao executar a partir do actions do github da erro...
Algum help?
No meu caso eu consegui encontrar a solução, segue abaixo:
Descobri o problema, pensava que eram as variáveis de ambiente que não estavam sendo criadas. Mas aparentemente o problema é que o banco do RDS por padrão as conexões exigem SSL ('Secure Sockets Layer') e no meu código de projeto a conexão está assim:
stringDeConexao := "host="+os.Getenv("DB_HOST") +" user="+os.Getenv("DB_USER") +" password="+os.Getenv("DB_PASSWORD") +" dbname="+os.Getenv("DB_NAME") +" port="+os.Getenv("DB_PORT") +" sslmode=disable"
reparem que o sslmode está com valor de "false", eu simplesmente removi o sslmode da string de conexão:
stringDeConexao := "host="+os.Getenv("DB_HOST") +" user="+os.Getenv("DB_USER") +" password="+os.Getenv("DB_PASSWORD") +" dbname="+os.Getenv("DB_NAME") +" port="+os.Getenv("DB_PORT") "
Não sei se deixei passar algum ponto na hora de criar o banco na aws ou se já estava assim, só sei que consegui resolver o problema kk.