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

Dennis Kliban dkliban at redhat.com
Tue Mar 20 14:51:43 UTC 2018

The article you link to just says that "a snapshot is the state of a system
at a particular point in time". The point in time can be now or in the

The current state of a repository's content would be described as the
latest or most recent snapshot of a repository.

I am not too worried about the pain of doing the refactoring across
multiple repos.

On Tue, Mar 20, 2018 at 10:20 AM, David Davis <daviddavis at redhat.com> wrote:

> 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
> David
> On Tue, Mar 20, 2018 at 10:05 AM, Austin Macdonald <austin at redhat.com>
> wrote:
>> "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/45e5c36b/attachment.htm>

More information about the Pulp-dev mailing list