Centero has been a Microsoft Intune expert and service provider practically ever since Microsoft published its first versions of Intune. Throughout the years, we have implemented several Intune projects for our customers, covering data security, content protection, and end-point management (including mobile device management), among other things.
This is why we’ve anxiously waited for Microsoft to release Intune API which would allow us to develop a Centero Software Manager (CSM) version that integrates into Microsoft Intune. This way, Intune users get an automatic third-party application upgrade process (patch management). When Microsoft finally released Graph API and the necessary features, we got to work and started developing an Intune-integrated CSM product in addition to CSM Cloud, CSM for SCCM, and CSM for WSUS.
In this blog, our expert in charge of the product development process, Janne Tjäder, will explain how the development of CSM for Intune has progressed. Tjäder will also elaborate more technically about the software packaging for CSM for Intune and other CSM products, which is performed as a background process.
We have developed CSM for Intune throughout summer and fall, and the product has been in internal testing since June. Now, we reached the point where the entire pipeline is working, meaning that the software that we have packaged is loaded automatically into Intune, and deployments are created automatically for the desired Azure AD groups.
Practically the only work still in progress is finishing up the management portal UI. It is still being enhanced. Technically, it is already functional, but we want to make it more customer friendly. During the next few weeks, it will be published in the management portal, after which we are ready for the next step: to make the product available for customers that have enrolled in our preview program. You can still apply for the preview program from here. You can also enroll for the production version trial in advance from here. This way, we will inform you via email as soon as the product version is ready for trial use.
Easy-to-Use Solution with Smart Functionality
Customer experience is a central part of our development work, and we have aimed to make the deployment of CSM for Intune as easy as possible to prove that. The only requirement is that the customer grants access to its Azure AD for specific credentials and configures the deployment process in the management portal.
For the deployment process, the customer specifies which applications are deployed for which Azure AD groups. The management portal also has a built-in scheduling system which allows for separate testing and deployment to the product environment, allowing, for example, 2 days testing time for test groups. The old versions are also removed automatically, meaning that the old version is swept up away when a new software version is released. This way, the customer always sees the latest software version in Intune when CSM for Intune is enabled.
As software packaging experts, we didn’t take the shortest route, which would have meant creating software packages for CSM for Intune, for example, based on scripts. We could have taken a shortcut
when implementing packages: if, for example, a software program would consist of four MSI packages, i.e. one master package and three prerequisites, we could have packaged them all in one and ran an installation command in Intune. We have implemented our solution so that each prerequisite application is deployed separately, and they are installed through the main application’s dependency list. Our CSM for SCCM and CSM for WSUS solutions work with the same principal. When deploying packages manually, this is not the easiest or the fastest way to do things, but it is definitely the best and the most recommended method because it ensures the most reliable outcome in different situations.
One thing that we have to mention for software packages is the MSI technology’s repair feature, which requires the installation source to be available in repair situations. Simply put, this means that if you press the Repair button in the Programs & Features view, the repair will not work if the original installation source is not found.
The installation source is also sometimes required when upgrading an application. Intune deployment does not support this feature natively, meaning that the packages do not remain on the target device’s hard disk, even if it is often necessary for functionality. In Centeros’ application packages, a local cache is built separately, and the installation source is fixed to point there. The cache is cleaned constantly so that only installation sources of installed applications remain on the disk. The cache of old removed versions is deleted when the software is removed in order to make room for the new version.
The packages are not so large that storing the latest version’s cache on the disk would have any negative effects. However, it would be a major disadvantage if an application needs repairing during booting because the application will not launch when an installation source is not found from the computer.
Product Trial Coming Soon
The CSM for Intune service excellently combines several of Centero’s areas of expertise. We have extensive experience in application deployment, Azure, Intune, and software packaging. Combined with our expertise on software development and understanding our customers’ needs, we are getting close to our final product, CSM for Intune. We have managed to develop in a relatively short time a product that is easy to implement and simple for customers, and we cannot wait for our first customers to take it out for a test drive.
Once in production, we will above all focus on reporting so that our customers can gain a clear view on how the deployment is progressing by simply visiting our portal.
As a summary: the first version of CSM for Intune is very close to being published, but no software is ever complete, and so we will continue our developing efforts with the help of our customers. Some might even say that the journey has just begun.