Fileset Revisions Fileset Revisions Overview What Fileset revisions let you keep two or more versions of the same fileset or payload inside a single FileWave fileset object. When/Why Revisions are useful when a payload changes over time, especially for application upgrades. For example, assume you are deploying Firefox v79 and need to test Firefox v80. Without revisions, you might duplicate the fileset or create a new one, move test devices from the v79 association to a new v80 association, and then, after testing, remove the old production association and replace it with the new one. That production cutover can become a timing problem. If removing the old association also removes the old app before the new one is ready, admins may have to carefully overlap or sequence the old and new associations so users are not interrupted during the upgrade. With fileset revisions, v80 can live in the same fileset that already contains v79. You can then choose which revision an association uses, instead of replacing the whole fileset or rebuilding the association from scratch. How When a fileset has multiple revisions, the association workflow includes a revision choice. In the example below, the association can use the default revision, the initial revision, or the newer v80 revision: You do not have to use fileset revisions. If you ignore revisions, filesets continue to work the way they always have. When you do need staged application updates or controlled testing, revisions can make that workflow cleaner. Related Content Associating a Fileset Revision Editing Filesets that have Revisions Managing Revisions Associating a Fileset Revision What When you attempt to associate a fileset that has revisions, you'll notice a slightly different workflow, where you are asked to select a revision to associate.  (Associating a fileset that has no revisions functions as it always has) When/Why Assume our same Firefox fileset, containing two revisions for v79 and v80.  When we create a new association for this fileset, we need to tell the system which revision (v79 or v80) that we want to use. How Selecting the revision we want to do is very simple, since the FileWave admin just asks us which one we want to use as you'll see below: You may ask yourself, "What is the 'default' option I see in that menu?"  That is a great question and we'll talk about that super-helpful option in another article you'll find linked below. Related Content "Default" Revisions Associating a Fileset Revision Editing Filesets that have Revisions Managing Revisions Editing Filesets that have Revisions What Of course from time to time you want to edit your pre-existing filesets.  How does editing a fileset change if you have multiple revisions? When/Why Assume again that we have a Firefox fileset that has two revisions...one v79 and the other v80.  Assume that we want to change a file in the v80 fileset, or even change a file in both.  How do we know which fileset revision we are changing? How In both the fileset editor and the script editor you will now see a new drop down menu that allows you to identify which revision of the fileset you are working on.  See below, where we are looking at v79 in the fileset window, and v80 in the script editor: Switching which fileset you are editing in either window is as simple as changing the value in the drop-down.  And, if you just want to do filesets the same way you always have, you can safely ignore that drop-down altogether. Related Content Associating a Fileset Revision Editing Filesets that have Revisions Managing Revisions Managing Revisions What There are quite a number of things we can do to "manage" revisions.  We can create new revisions, edit them, delete them, and set default revisions. When/Why Our management options breakdown as follows: Editing revisions (different from editing the contents of the revision) allows us to change the names and descriptions of revisions Creating them allows us to create additional revisions in the current fileset Deleting a revision, as the name implies, allows us to remove a revision from a fileset Setting a revision as the "Default" allows us to easily deal with associations for testing and production in different ways  How The thing that all of the options listed above have in common is they are all accessed in the same way, through the "Manage Revisions" button in the Fileset Editor, the Script Editor, or the Fileset Properties window, as shown below: Each of the management options is detailed in the articles linked below. Related Content "Default" Revisions Creating a New Revision Editing Fileset Revisions Removing/Deleting a Revision "Default" Revisions What What are default revisions?  An excellent question indeed.  Default revisions are a way of marking a specific revision of a Fileset as the "default", regardless of what it is called.  Keep reading, and you'll see how very useful this is, and how our great developers try to make your job easier on an everyday basis. When/Why We are going to use our example again of v79 and v80 of Mozilla Firefox.  Assume for a moment that we have v79 assigned to all devices right now in two associations as shown below:.: If you'll look closely, you'll see that the "Production" group has an association to the revision (v79) and the "Beta Testers" group is associated to v79.  Effectively, this is exactly the same for both groups...v79 is installed.  But, let's take a look below at what happens when we want to upgrade to v80 in the environment. How We aren't just going to assign v80 to all devices right away...as always, we want to test first, so with our patch testers group we'll edit their association as follows: Once we save this association and update the model, all patch testers will get the new version.  No deleting of the association or creating a new one is required. Now, assume that all testing goes well, and we are ready to release to production.  Now, we could edit the association for "production", but assume for a second that we had ten such associations...would we want to edit all ten of them?  In a word, no.  But, if you remember, the association above to production was not v79, but rather Default v79...which means the association is just to the "default" revision of the fileset. So, we can simply edit the properties of the fileset itself and change the "default" to v80 instead. Once we save that change, and update the model, you'll see the change reflected in the association: And, upon next check-in, all "Production" devices will upgrade to v80. Remember, we take care of the timing of this transition between versions...so you don't have to worry about the transition timing. Related Content Managing Revisions "Default" Revisions Creating a New Revision Editing Fileset Revisions Removing/Deleting a Revision Creating a New Revision What Creating a new fileset is the same as it always has been, but in some way, shape or fashion we need the ability to create new fileset revisions before we can use them. When/Why Typically, we'll want to use fileset revisions whenever we expect to continually upgrade an application...so, in most cases basically.  In this case, we'll look at how to create a v81 revision of Firefox. How Adding a new revision is done from the "Manage Revisions" view by clicking the plus icon: Note that in this case, we chose "Empty" because we don't want the files from the previous revision.  But, if we had custom scripts or anything else like that, we would probably duplicate the previous revision instead.  Once the revision is created, you edit it like you would any fileset. When creating a new revision, you can create it as empty, duplicate an earlier revision entirely, or duplicate only the properties of that revision: Fileset Revisions can also be created by drag and drop operation from the file system onto an existing Fileset.  You'll be prompted about making a new Fileset, or adding a revision as shown: If adding a revision, you will also be prompted about setting the default revision: Related Content Managing Revisions "Default" Revisions Creating a New Revision Editing Fileset Revisions Removing/Deleting a Revision Editing Fileset Revisions What Revisions themselves have some properties that can be edited: namely the name and the description of the revision. When/Why Editing the properties of a revision is also done from the "Manage Revisions" window...we'll use it if we want to edit the name.  For instance, every time the first revision is created, it is called "Initial Revision"...which is helpful to know, but not very descriptive.  Below is how we change that. How First, we'll go into the "Manage Revisions" view for a particular fileset, then choose "Edit" with a revision selected: There are only two fields to set, but setting them descriptively does help later when creating associations. Related Content   Managing Revisions "Default" Revisions Creating a New Revision Editing Fileset Revisions Removing/Deleting a Revision Removing/Deleting a Revision Removing/Deleting a Revision (v14+) What We can create revisions, so of course we want to be able to delete them as well. When/Why We'll usually want to delete revisions whenever the revision is no longer pertinent.  We would probably always leave the N-1 version of our fileset, but if we have older revisions, we would certainly want to clean up to save on disk space. How If we go into the "Manage Revisions" view, we can select a revision and hit the minus sign to remove it.  If no associations exist for that revision, we'll simply get a prompt to confirm: But, if there is an association, we can choose to remove the association outright, or switch it to another revision: Related Content   Managing Revisions "Default" Revisions Creating a New Revision Editing Fileset Revisions Removing/Deleting a Revision