[Pulp-dev] let's rename RepositoryVersion to Snapshot

David Davis daviddavis at redhat.com
Tue Mar 20 14:20:18 UTC 2018

I have some reservations about using the name Snapshot. Specifically, I
don’t think the snapshot term is a good fit. As wikipedia says [0], in CS a
snapshot represents a state of something "in the past.” How would we
describe the current state of the repository’s content then? I think
"current version" would make sense but not "current snapshot.”

Also, changing the code in pulpcore and plugins is going to be a pain.
Especially with the other things we have planned like renaming Importers to
Remotes. I think this should factor into our decision as well.

[0] https://en.wikipedia.org/wiki/Snapshot


On Tue, Mar 20, 2018 at 10:05 AM, Austin Macdonald <austin at redhat.com>

> "Snapshot" is a nice way to explain what a RepositoryVersion is,
> especially in the context of Publications. "Publish a snapshot."  I like
> the idea, and I informally floated it around PulpCon but decided not to
> propose it because:
>    - Snapshot is a little misleading about the actual data we store.
>    Specifically, since RepositoryVersions are stored as diffs, when a user
>    views the "content in a version", this is calculated. This is a subtle
>    point, and hopefully not user facing at all, but I think snapshot implies a
>    little bit more certainty than we can offer.
>    - A snapshot also implies a slightly different workflow to me. The
>    workflow I expect with snapshots is to change Repositories "willy nilly",
>    and when you are satisfied, you "take" an snapshot. Versions imply the
>    workflow we have, which is that any time the content set of a Repository is
>    changed, a new version is created.
> However, I think those concerns are minor and are overshadowed by the
> potential benefits. Also, I see a direct connection to the thread "Plugin
> relationship to tasks". The name Snapshot/RepositoryVersion is part of the
> choice of how we portray the changing of content set of a repo.
>    1. We can "change a repo" which creates a new version.
>    2. We can "create a new version" which has different content.
> To me (1) implies "dispatching a task that has the side effect of creating
> a new repository version. It would lend itself well to the concept of
> "managing repositories" rather than "managing versions/snapshots". If we
> choose this way, I think the name Snapshot conceptually makes sense.
> (2) implies a POST to create a new RepositoryVersion. As explained in the
> plugin tasks thread, there are some problems with this, but it is similar
> to the concept of creating a git commit. I think we wouldn't think of
> "creating a new Snapshot" to change the content.
> On Tue, Mar 20, 2018 at 9:33 AM, Dennis Kliban <dkliban at redhat.com> wrote:
>> I propose that we rename the RepositoryVersion model in Pulp 3 to
>> Snapshot. The REST API would also change to use
>> /api/v3/repositories/<uuid>/snapshot/
>> The Snapshot name is a better description of what a repository version is
>> and it is also much shorter in length.
>> Thoughts?
>> -Dennis
>> _______________________________________________
>> Pulp-dev mailing list
>> Pulp-dev at redhat.com
>> https://www.redhat.com/mailman/listinfo/pulp-dev
> _______________________________________________
> Pulp-dev mailing list
> Pulp-dev at redhat.com
> https://www.redhat.com/mailman/listinfo/pulp-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pulp-dev/attachments/20180320/02d3566d/attachment.htm>

More information about the Pulp-dev mailing list