keitaroinc / docker-ckan

CKAN docker images, docker-compose and examples
Apache License 2.0
72 stars 51 forks source link

[BUG] Datapusher broken #114

Closed hbenkhay closed 10 months ago

hbenkhay commented 11 months ago

Describe the bug

Docker images affected CKAN 2.9

Logs

hbenkhay commented 11 months ago

duplicate of https://github.com/keitaroinc/docker-ckan/issues/111

stojanovskis1 commented 11 months ago

@hbenkhay I tried locally with image keitaro/ckan:2.9.9 and keitaro/ckan-datapusher:0.0.17, everything is working as expected, i can't recreate this error, can you share more information?

hbenkhay commented 11 months ago

thank you @stojanovskis1 for looking at this. if you pull the images from DockerHub, I would expect it to work fine, I can also run the services from my docker-compose without an error.

but when I try to build the ckan-datapusher myself from its Dockerfile , I ran into these issues, I think the reason might be in this line

the dockerfile refers to the master branch of another repo, which has been updated since, so even if the Dockerfile stays the same, the python requirements.txt has changed since.

my reason for doing that is to build these images for ARM platform (M1 machines for example), the images availables for ckan and the datapusher are only compatible with AMD.

I already built a CKAN image that support both amd64 and arm64.

so, to reproduce the issue, I would copy the datapusher Dockerfile locally, and build the image without cache.

stojanovskis1 commented 11 months ago

@hbenkhay i've changed the requirements.txt on branch change-requirements in datapusher repository. You can just change the branch in the Dockerfile locally to change-requirements instead of master and give it a try to see if the issue is resolved.

hbenkhay commented 11 months ago

I tried that, the container startup is looking good now (no timezone bug), but when I try to upload a dataset, I am getting

datapusher  | Error getting due jobs from job store 'default': columns argument to select() must be a Python list or other iterable
datapusher  | Error getting due jobs from job store 'default': columns argument to select() must be a Python list or other iterable

which I refer to in the issue description above and here , that's a sqlachemy issue (you may want to upgrade that, it worked for me using SQLAlchemy==1.3.19)

stojanovskis1 commented 10 months ago

@hbenkhay can you confirm that this issue is resolved with latest image?