Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
*~
*.egg-info
11 changes: 7 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
FROM eclipse-temurin:21
ARG VERSION=v1.2.1
FROM python:3.13-slim
WORKDIR /opt/app
ADD https://github.com/GlobalDataverseCommunityConsortium/dataverse-uploader/releases/download/$VERSION/DVUploader-$VERSION.jar DVUploader.jar
ENTRYPOINT ["java", "-jar", "DVUploader.jar"]

# Install python-dvuploader dependencies
COPY requirements.txt /tmp
RUN pip install -r /tmp/requirements.txt

ENTRYPOINT [ "dvuploader" ]
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# DVUploader Docker Wrapper

This wraps the Python [dvuploader](https://github.com/gdcc/python-dvuploader/) package that provides parallel direct upload to Dataverse.

## Volumes

The wrapper needs both Digital Assets and the Dataverse Prod volumes mounted at the following locations:
Expand Down Expand Up @@ -33,8 +35,8 @@ Defaults!/usr/local/sbin/dvuploader.sh !always_set_home
%dpgdil ALL=(root) NOPASSWD: /usr/local/sbin/dvuploader.sh

# Then members of dpgdil can run your script like so
dvuploader -key=$key -server=$server da/path/to/some/datadir
dvuploader -key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx -server=https://datasets.lib.berkeley.edu -did=doi:10.60503/D3/XXXXX /srv/dataverse/XXXXX
dvuploader da/path/to/some/filepaths --api-token $key --dataverse-url $server
dvuploader /srv/dataverse/XXXXX --api-token xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx --dataverse-url https://datasets.lib.berkeley.edu --pid doi:10.60503/D3/XXXXX --recurse

# Note that the local directory /srv/dataverse-prod/dvsantee/etl/processing/ is mapped to /srv/dataverse when you run the dvuploader script
```
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ services:
image: ghcr.io/berkeleylibrary/dvuploader:${USER:-default}-development
volumes:
- /srv/da:/opt/app/da:ro
- /srv/dataverse-prod/dvsantee/etl/processing:/opt/app/dataverse:ro
- /srv/dataverse-prod/dvsantee/etl/processing:/opt/app/dataverse:ro
2 changes: 2 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# once dvuploader 0.3.0 is out, point this to a proper release spec
dvuploader @ https://github.com/BerkeleyLibrary/python-dvuploader/archive/refs/heads/include-tab-ingest-rebased.zip