Deffiss / testenvironment-docker

MIT License
117 stars 30 forks source link

Adds Oracle and Firebird containers with associated tests #41

Open PhenX opened 3 years ago

PhenX commented 3 years ago

This project may be a good option for integration tests for the https://github.com/fluentmigrator/fluentmigrator so I started working a on new containers types, please tell me if everything is ok in my code :)

Deffiss commented 3 years ago

Hi @PhenX , awesome contribution, let us review and merge!

Deffiss commented 3 years ago

I've just noticed Oracle test is failed on AppVeyor, let's try to find out the reason.

jzabroski commented 3 years ago

One thing to check and be mindful of with timezones is whether you're using a linux distribution that ships time zones and locales. Time zones in Alpine Linux require installing tzdata otherwise you just get UTC

jzabroski commented 3 years ago

https://serverfault.com/questions/949991/how-to-install-tzdata-on-a-ubuntu-docker-image I see in your yaml that you have ubuntu

dgvives commented 3 years ago

@PhenX , in case you haven't solved it yet. it might be the image being used by the CI/CD agent doesn't have time zones initialized. This is the case when using MySQL image for Windows. I had to build my own images and upload to docker hub but it worked. It is worth the pain

jzabroski commented 3 years ago

@PhenX , in case you haven't solved it yet. it might be the image being used by the CI/CD agent doesn't have time zones initialized. This is the case when using MySQL image for Windows. I had to build my own images and upload to docker hub but it worked. It is worth the pain

Thanks for your help, David! @dgvives We're hoping to use TestEnvironment.Docker in FluentMigrator repo to do large integration tests against all the various database drivers available in .NET Core.

dgvives commented 3 years ago

@PhenX it seems downgrading package Oracle.ManagedDataAccess.Core to version 2.12.0-beta3 solves this issue https://github.com/Deffiss/testenvironment-docker/pull/48/commits/c8c068bd7b916a8c370360a8e22f42c6e017ac1f https://ci.appveyor.com/project/Deffiss/testenvironment-docker/builds/37139506

Also, using Oracle.DataAccess.Core may solve this, but I haven't found this package. Same for setting TZ environment variable within the container.

Hope this brings some help for this fine contribution.

Edit:

Just dll from package is required. https://github.com/Deffiss/testenvironment-docker/pull/48/commits/2d39e9b669abb26d516ef8d3e237d9f6d885a789 https://ci.appveyor.com/project/Deffiss/testenvironment-docker/builds/37140305