[Comparison][Discussion] __staged_file vs __download #44
Labels
No Label
bugfix
cleanup
discussion
documentation
doing
done
feature
improvement
packaging
Stale
testing
TODO
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: ungleich-public/cdist#44
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Here I want to compare two types,
__staged_file
and__download
.When to use one and when the other?
Do we need both?
nice table 🙏
if you want to deploy same file to multiple hosts, then you should fly with
$__files
and__file
. download caching and parallel execution introduces race condition and broken file. of course we can make type non-parallel, but then it becomes slow and then again this type isn't mass-deploy use case and we can actually turn this type non-parallel and add caching.use
__file
after__download
😉yes, I think it will probably land in cdist-contrib, because I'm not too much into prolonged debate, tho @poljakowski already merged initial version 😆
I've had a look at both types. The differences I could see:
__staged_file
__download
--stage-dir
(usually/var/tmp
) so that it will not have to redownload the file if another target is to be configured.cksum(1)
hash.__unpack
for that (cf. !893). Requires to indefinitely store the archive on the target.(Note: I compared against the
__download
type in master. I didn't take the changes in !895 into account.)@ander: While I am all for diversity since that's what makes Unix/Linux so awesome, I really consider cdist core types the wrong place for that.
Having very similar types in core can be confusing for new users when they first have to work out the differences between the types and having two types essentially requires double the maintenance.
I don't vote for one of the two, but I'd really like if we could decide for one of the types and deprecate the other.
I don't have anything against either of the types and IMO the deprecated type can continue to live on in a different repository, e.g.
cdist-contrib
.at first I started to write
__unpack
and then__download
just happened, because I didn't like the interface and solution of__staged_file
.and in long run I wanted
__download
to be bit smarter and make some decisions for me (coming up in second MR).I think we can have both, because diversity is important.
@ander Can you compare those two types, since you have wroten download over the staged file type?
changed the description