Open victornoel opened 5 years ago
@victornoel @g4s8 observation: the problem is not exclusive of CircleCI, it happens when building locally too. Exceptions causing the problem:
Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://get.enterprisedb.com/postgresql/postgresql-11.1-1-linux-x64-binaries.tar.gz
It seems that EnterpriseDB doesn't support these unauthenticated APIs for donwloading binaries anymore, I see no documentation and I get "access denied" on all of them.
The component we are using (postgresql-embedded) should update its internal working to fix this. Its README though says that the project is not actively maintained anymore, and that the official recommended alternative is Testcontainers. For this reason, I suggest we switch to Testcontainers.
I tried doing this modification, which the super powers of OOP should make pretty smooth. Too bad, I encountered a problem: Testcontainers' containers require username/password-based authentication, and the com.jcabi.jdbc.JdbcSession
class we are using doesn't allow to specify them in a connection.
I opened jcabi/jcabi-jdbc#73 to address this.
What do you think? Does it seem reasonable to make this transition?
@scristalli isn't the login/password specified at the datasource level?
@0crat wait for jcabi/jcabi-jdbc#73.
@0crat wait for jcabi/jcabi-jdbc#73. (here)
@scristalli The impediment for #52 was registered successfully by @scristalli/z
@scristalli as I told you above, this won't be solved by jcabi-jdbc since the login/password is given to the DataSource
, itself given to jcabi-jdbc. jcabi-jdbc does not care how the DataSource
is created.
@victornoel thanks for your comment, I was able to set username and password in the JDBC URL in my PR. I'm still a bit confused, everywhere I look in standard documentation (example) I see these parameters set when calling DataSource.getConnection(String username, String password)
, while I don't see any method to specify them in the DataSource
object, so I think that by Java's original semantics they are not intended to be a property of the datasource, but rather one of the single connection.
@0crat resign
Apparently running maven with -Pitcase fails the build because of some infrastructure problem.
See for example https://circleci.com/gh/g4s8/ghman/118 where it happens.
This should be fixed.