Upgrading to BuildMaster 7.0
  • 04 Apr 2022
  • 5 Minutes to read
  • Dark
  • PDF

Upgrading to BuildMaster 7.0

  • Dark
  • PDF

BuildMaster 7.0 is a major upgrade, and this article provides information about what changed, the impact to your instance, and how to mitigate risk during upgrade.

Planning for Your Upgrade

Although BuildMaster 7.0 is a major upgrade, the changes from BuildMaster 6.2 were mostly platform updates (library upgrades, etc.) and UI changes. This means it may be a relatively simple upgrade depending on which version you're upgrading from, and your usage of that version.

Upgrading from BuildMaster 6.2

If you're upgrading from BuildMaster 6.2, upgrading to 7.0 should be relatively easy.

No major features were removed or changed, and the upgrade should be relatively easy, and no preparation will be needed. You can even rollback to BuildMaster 6.2 without rolling back the database.

Upgrading from BuildMaster 6.1 or Earlier

If you're upgrading from BuildMaster 6.1 or earlier, upgrading to 7.0 may be challenging.

In BuildMaster 6.2, all Legacy Features were removed from the product. See Upgrading to BuildMaster 6.2 to learn more about what else changed in that release. Alternatively, you may want to consider an application-by-application migration approach.

You wont be able to upgrade to BuildMaster 7.0 until the Legacy Feature Detector has reported no legacy features. This is only available in the latest versions of BuildMaster 6.1, which means you will need to upgrade to BuildMaster 6.1 first.

Because upgrading from BuildMaster 6.1 is more involved than previous upgrades, special support for it has been included with paid licenses. Simply use the Submit Ticket Form, put 7.0 UPGRADE in the "How can we help" section, and include the Legacy Features Dashboard Report Logs in the body of the ticket.

Changes in BuildMaster 7.0

New Feature: Style Updates & Dark Mode Option in UI

While the overall UI hasn't been changed too much, we completely refactored the stylesheets behind the scenes. This may yield some different color buttons throughout the software. This changed allowed us to introduce a new feature (Dark Mode) that uses a darker background to make it easier on the eyes. This mode is brand new for us, and will be continually refined; let us know how to make it better.

New Feature: Release Templates Overhaul

We made some major improvements to the way you manage and use release templates. Generally speaking, we will recommend to prefer release templates so that you can get variable prompts and use consistent pipelines.

This is almost entirely a UI change, and will not impact your existing data or release templates. Instead, you'll notice a streamlined release template editor and creating release from templates will be much easier.

New Feature: Outbound-communication Mode for Inedo Agents

The Inedo Agent can now operate in an outgoing mode, meaning that BuildMaster v7 can accept incoming connections from agents instead of contacting agents directly. This opens up new possibilities for cloud-hosting BuildMaster while still having access to on-prem resources.

New Feature: Run as Docker Container on Linux

BuildMaster is now cross-platform! You can now run BuildMaster as a Linux container instead of hosting on a Windows server. See our Linux and Docker Installation Guide.

New Feature: High-availability & Load Balancing

BuildMaster can now be run as a cluster, in high-availability & load-balanced mode. This will not only distribute executions across multiple servers (which, in turn, will communicate to remote servers via agents), but it will ensure that if any single server in a BuildMaster cluster goes down, the application will continue, largely interrupted.

Deprecated Feature: Deployables

Deployables have been a "vestigial" feature since v5, and have been hidden form the UI for new users since v6. As of v7, they are officially deprecated, which means we recommend migrating away from them if you're using them.

As part of the internal web framework updates and release template changes, we removed some functionality from the UI, such as providing error messages when you incorrectly edit deployables. We doubt anyone will notice, but let us know if there are issues.

Removed: Environment "Soft delete"

Environments are no longer "soft deleted" (i.e. hidden but flagged in the database as deleted); this behavior was removed to simplify code, reduce bugs, and keep it more inline with how users expect delete to work.

Upon upgrading to v7, your "soft deleted" environments (which you probably didn't even know were still in there) will be permanently deleted. The database column will remain for compatibility purposes, and to allow you to downgrade to 6.2 if needed.

Upgrade Process

You can perform the upgrade from the Inedo Hub.

If you are upgrading from BuildMaster 6.1, you will first need to upgrade to the latest version of BuildMaster 6.1. After installation, you will want to upgrade extensions after. If you were using the SqlServer 1.0.0 extension, it will not load; delete it and download the latest SQL Server extension.

Risk Mitigation

Compared with prior major versions, this is a relatively low-risk upgrade. Like with all upgrades, you should make sure your database is backed up.

There were no major changes the execution engine, pipelines, or deployment plan logic, so your applications should still build and deploy just fine. There may be some bugs in the web UI due to the internal framework upgrades.

You do not need to upgrade extensions, but you will be prompted to. Before upgrading extensions, make sure to back-up your installation's Extensions directory (Extensions.ExtensionsPath in Advanced Settings) so that you can rollback if needed. This will save the hassle of downgrading later.

Rolling Back

You can rollback using the Inedo Hub. If you're using the traditional installer, you'll want need to uninstall and then reinstall the older version of BuildMaster.

You can rollback to any version of 6.2 without restoring the database.

If you upgrade to any version of v7 from v6.2, then you can downgrade to your previous 6.2 version without a database restore.

While there are database schema changes, they are all backwards-compatible, which means you can safely rollback your BuildMaster installation if there's a showstopper bug, and then upgrade later.

You may need to also rollback to old extension versions. BuildMaster v7 uses the Inedo SDK v1.12, which cannot be used by BuildMaster v6.2.

Was this article helpful?