fix:unarchive fails for user id != 1000 #240
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Refers to issue #239. If the
paperless_ngx_conf_usermap_uid
variable is set to an id different from 1000, the unarchive fails to unpack files and change their ownership. This seems to be because the user unpacking the archive is different from the one owning the files.This PR adds a lookup step to find out the correct user name with
id == 1000
in causepaperless_ngx_conf_usermap_uid != 1000
. The user name stored in the variable_paperless_ngx_untar_username
will then later be used as thebecome_user
in the unarchive step.Note that with this solution
paperless_ngx_conf_usermap_uid
is not definedthe lookup step will fail even though the user might perchance be created with the id 1000.
In order to prevent this one might to either have to move the system user creation step to an earlier stage or make
paperless_ngx_conf_usermap_uid
mandatory. I was not sure if it was okay to go down any of these routes.