The Raynet Packaging Suite represents an impressive set of integrated features. For this product review, I have also created an accompanying walk-through video of the product. In both the case of the video and this written review, I am attempting to cram a lot of information into a digestible size so I’ll get right into it.
Setup was straight forward and actually looks really nice. RayQC Advanced and PackBench require a database, so I installed MS SQL Express 2016. I did encounter one speedbump: if you are using MS SQL Express as I am, you’ll need to ensure the SQL Server Browser service is running in SQL Config Manager in order to select the instance during setup (it is not running by default).
I want to kick this review off with one application that is actually not in the Packaging Suite (but of course available separately) and that is RayFlow. RayFlow is a workflow management solution that connects the functionality offered by all the Raynet products. This starts with software and license management capabilities delivered via RayVentory and RaySAM and its web portal RayDemand. The capabilities provided by Raynet products continue on through the application lifecycle to cover the packaging process (which we will cover here in detail), deployment (RayManageSoft) and even mobile management (RayMobile). Forgiving the odd naming convention of these products, this is unquestionably a broad and powerful set of products. Having RayFlow connect them all is helpful to establishing a process that incorporates the desired functionality of each. It even goes so far as to pass pertinent information and related files from application to application as you complete your defined processes.
As we are focusing on the Raynet Packaging Suite, we will focus on the specific features and functions below. RayFlow and the components that fall outside of the Packaging Suite are available as a complete suite (Raynet Suite) or even individually as separately licensed products.
- RayQC Advanced – Compatibility testing, collision management
- RayEval – Documentation
- RayPack – Packaging; creation and editing
- RayQC – Quality assurance; checklists
Note that (despite what the names may imply) RayQC and RayQC Advanced are two different products. I’ll also cover PackBench which is available as part of RayPack.
In the Rayflow Client, we can see the workflow and components that come with the Packaging Suite out of the box. You can add other tools (from Raynet or not) to each phase of the customizable process, but for the sake of this review, I’ll stick with the defaults as provided by Raynet. The workflow breaks down like this:
- PO – Package Order interface (delivered by RayFlow)
- POA – Package Order Acceptance (delivered by RayQC Advanced)
- EVAL – Package Documentation and Evaluation (delivered by RayEval)
- PKG – Application Packaging and customization (delivered by RayPack and its components PackRecorder, PackDesigner and PackBench)
- QA – Quality Assurance (delivered by RayQC and RayQC Advanced)
- UAT – User Acceptance Testing (delivered by RayQC Advanced and RayQC)
- DEP – Package Deployment (delivered by RayPack for SCCM and ManageSoft or RayFlow using connectors for other systems such as Altiris and ServiceNow)
Package Order (PO) via RayFlow
The task of defining what packages need to be managed is handled by RayFlow. Packages are entered into your backlog or task list. As a role based system, you might provide only the ability to enter and view status of packages to common users. This screen shot represents the default information collected, but you can add other fields and customize those here at will. This information can even be automatically collected from a supplied setup file. All information is available to the packager at each step of the defined process and can be passed to applications via command line variables if desired.
Package Order Acceptance (POA) via Rayflow and RayQC Advanced
This phase is where one would review the list of requested/pending packages and choose to accept one as a task. In a multi-packager environment, this has value in helping the team share the load, but it also provides status on the package; it records that someone has picked it up and accepted the package for development. As a packager, you would want to make sure you have what you need before accepting it such as installation media, documentation, a point of contact, purchase or license information, etc.
The tool associated with this phase in Rayflow is the first tool in the Packaging Suite, RayQC Advanced, so this will be the first tool in the Packaging Suite we fire up. Raynet created this long ago and its original code was purchased by Flexera as an AdminStudio feature. Flexera and Raynet have both developed it since then as independent products adding things like Windows 10 and browser testing support. Raynet reports to have enhanced it further to run faster and provide additional information.
In this standard workflow, one would right-click on the task and under tools choose “Test in RayQC Advanced”. At this point, all the details of the package are passed to RayQC Advanced and it automatically checks it for conflicts, creates a transform that contains fixes, and produces a nice-looking PDF report which documents findings and remediation. Such files are automatically added to the Rayflow packaging task as assets for easy access in the future.
Out of the box, this is all very automated and you might never need to launch RayQC Advanced interactively. But we want to take a close look; launching the tool outside of Raynet we get a clear idea of the value this tool adds to the suite. It detects and remediates possible conflicts with your OS or other packages, testing for Windows compatibility and virtualization readiness.
When making changes to an MSI in order to fix issues, results are provided via a MST file for so you need not edit your (or a vendor) MSI to address detected issues. It also generates very nice looking PDF reports for your records.
In RayFlow, we now right-click on the task (the packaging we are working on) and choose Status > Finished to mark it as accepted and move the task to the next phase, Evaluation…
Evaluation (EVA) via RayEval
Running through an installation in RayEval helps you quickly and easily document responses to the setup wizard (and any prior or post actions necessary). It can be used to document a test procedure, and really anything you want to document visually. In addition to screen shots, a description of actions performed are also generated making documentation as simple and verbose as possible.
Execution of the setup will result in an actual installation, so you’ll want to be on a clean system or virtual machine separate from that on which you will perform your packaging work. I had to dust off an old mouse as I am a touchpad guy and choosing what you want to document is best communicated via configurable mouse clicks. By default, the center button means capture the screen and the alt key and center button means capture the whole window.
Results be saved as PDF, Word, or in its native RayEval format (a REX file) for easy editing in the future. Obviously, it can be saved to disk, but when using RayFlow you also the option to save it directly to the Rayflow packaging task as a file attachment.
Of course it helps you to record the basic information about the setup, but it also provides a means to document notes about the package you are building, whether it contains drivers or requires admin privileges, who is authoring the package and even details about the environment on which the documentation is being created.
The documentation session is launched by clicking the film icon at the bottom left of the screen. You can then run the application using the play button located at the bottom right. When you middle click a button, the button is captured. Middle clicking a checkbox, captures the checkbox. However, these middle button clicks don’t actually select items so running through the documentation is performed by middle clicking something to document it, then left clicking that same thing to actually do it. When done, you can easily rearrange the documented steps or remove them as needed.
What I am describing here is what you get out of the box, but those that like to customize will be happy to hear that most every aspect of this is configurable (categories for example) in a simple XML file.
To wrap this up, we close RayEval and return to Rayflow where you can mark this phase complete by right clicking on the packaging task and choosing “Change Status > Finished”. Doing so moves the package to the next phase: Packaging.
Packaging (PKG) via RayPack
When you right click on a task in Rayflow for the packaging phase, you’ll see that RayPack can be launched to perform to key tasks…
- PackDesigner – which can be run to open an existing MSI file.
- PackRecorder – which can be run to repackage a legacy setup.
When you’ve created or customized a package to your liking, you can build the results into any of several supported formats including a Windows Installer Patch, an App-V Symantec Workspace Virtualization Layer, a Thin-App package or Raynet’s native package project format.
RayPack also provides a packaging-focused set of steps and tools called PackBench. If you ever used Wise Package Studio and recall its workbench feature, the concept is the same. This isn’t a task in the process that would be triggered by RayFlow, so to get at it you’ll have to launch it directly via its own installed shortcut.
From here you can associate tools for your packaging process as well as checklists and automations for your team to follow when creating packages.
A “Run” is a job. Out of the box, there are two workflows to choose from: one to repackage a legacy setup into a MSI and one to customize an existing MSI by creating a response transform. Again, highly customizable, you can add additional tools and steps or modify those provided by default for your own needs.
PackDesigner is a very good looking MSI editor. It offers a Visual Designer which hides all the complexity and an Advanced View which is the table editor. This is another concept familiar to most MSI editors on the market, though this about the nicest looking I’ve seen.
Even the table editor is impressive. To name two features that stood out for me: it is smart about automatically updating and then highlighting relational changes based on modifications you make and it also simplifies entry of values for which you’d normally need to reference documentation (such as Bitwise values).
PackRecorder, as you might expect, is RayPack’s repackaging feature. It is a standard before/after snapshot solution familiar to most all repackaging solutions. Therefore, I don’t want to waste much space on this aspect of the suite. I’ll simply say that it does what you’d expect it to do, and it looks good doing it.
A couple of standout features worth pointing out: it can optionally detect changes to permissions to the file system or registry as well as changes to services. And it also comes with a couple different exclusion lists, which can be layered so you need not choose just one.
Once the capture wizard is complete, the results are opened in PackDesigner by default for review and editing as needed. Once you are done and close RayPack, RayFlow is ready for you to mark the Packaging step as finished to move on to the Quality Assurance (QA) phase…
Quality Assurance (QA) and User Acceptance Testing (UAT) via RayQC and RayQC Advanced
Having completed building your package, you’ll want to add it to your RayQC Advanced database for consideration in future collision tests where you can also generate a report for documentation while confirming (and if necessary, correcting) any issues detected.
We’ve already discussed RayQC Advanced earlier, so here we’ll instead focus on the last piece of the Packaging Suite that I’ve not yet covered and that is RayQC.
This tool is more about replacing manual checklists. It supports a long list of input types, conditions and plug-ins. System variables can even be pulled in to automatically fill in fields. Like the other tools in the suite it follows a similar look and feel and comes across as a very polished solution. You could create check lists for QA, UAT, or really—anything you feel could benefit from a smart checklist. The end result is that you encourage the following of prescribed checks and actions, and get a record of such for future reference.
Deployment (DEP) via RayPack or RayFlow
RayPack can pass packages to SCCM and to Raynet’s own RayManageSoft systems management solution. RayFlow extends that to other solutions like Altiris CMS and Matrix42. In fact, because the passing of packages to third party tool for deployment is a command line action, RayFlow can be configured to pass packages on to any systems that support this capability.
That’s the suite! It is pretty impressive and competitively priced as compared to Flexera AdminStudio. For all it does, it is naturally priced higher than repackaging tools like PACE, X or X. It is clear that Raynet would love to take the place of Wise Package Studio as a stand-out challenger to AdminStudio and it’s easy to argue they are well positioned to be just that.
I do think a lot of these tools, but I’ve made it clear that any review I write will need to include areas I see would benefit from improvement. After all, no tool is perfect. For the Raynet Packaging Suite, here are some things I’d love to see addressed:
- You’ll need to do some preliminary research to determine what kind of setup it is you are dealing with. In this workflow for example, tasks such as testing the product in RayQC Advanced will naturally fail if performed on non-Windows Installer setups. Unfortunately, the tool does not make that determination for you. Therefore, you’ll need to extract an MSI from an executable if it is compressed in a Setup. If you are dealing with a legacy setup, you actually need to jump around the workflow (or modify it) a bit as you’d want to create a preliminary package in the POA phase in order to run it through RayQC Advanced to determine potential conflicts with other packages or images. One solution would be to create two processes and choose the right one based upon the type of setup, but then you’d have to backlogs.
- With RayQC and RayQC Advanced distinctly separate products, it seems unnecessarily confusing that they share a name and use the same icon. It would seem renaming RayQC Advanced to something new would easily eliminate some confusion.
- Some other observations I reported have been created as feature requests or improvements for future consideration:
- Rayflow should auto-refresh files and properties after running a tool. Right now it does so inconsistently requiring a manual refresh in some cases in order to confirm an action completed as expected (such as running RayQC Advanced).
- RayQC Advanced should provide the number of passed, fixed, approved, warnings, errors, etc. in RayFlow for easy reference. Right now, one needs to open the full PDF report to see even a summary of this information.
- Other minor suggestions to improve certain aspects of the user interface.