Our Magento Deployment Process (& Why it Matters)
The aim of this article is to share our Magento deployment process for building, upgrading and maintaining Magento 2 eCommerce sites for our clients. We’ll dive into the how (we promise to keep tech-speak to a minimum), but more importantly, we’ll cover the why.
But why should you even care? Glad you asked.
Knowledge is power, so when it comes to choosing who should build, upgrade or maintain your Magento eCommerce store, all Magento deployment methods and agencies are not created equal. The knowledge we hope you take away will help you to ask questions and make informed decisions when considering who you should trust with your eCommerce site. Ultimately, we hope this saves you time, money and stress.
Why You Should Use Magento For eCommerce & What You Should Know About Magento Deployment
If you didn’t already know, Magento is one of the best eCommerce platforms available, offering unparalleled flexibility and customisation. Based on a framework of open-source code, its flexibility comes from thousands of marketplace extensions and themes available which add almost any feature or design you can think of.
Extensions are pre-packaged, reusable blocks of code that can readily be plugged into the site. This is significant because it means savings in costly development time for your business. There is often no need for custom development work because the feature you are looking for probably already exists as a Magento extension, making it easy to scale and adapt your site as your business grows.
But with great flexibility and power, comes great responsibility. With a vast array of extensions/code blocks to choose from, there are inherent risks to be aware of from untested code and unwanted bugs/errors entering the site.
In the eCommerce world, downtime is costly. So with Rixxo’s mantra “believe in better” in mind, we set out to pursue a fast, reliable way to improve our Magento deployment processes for our Magento eCommerce clients. A refinement that has taken years to perfect, our deployment process enables us to deliver on time and on budget, every time.
We call this process CI/CD, or Continuous Integration/Continuous Delivery
How to run a Magento Deployment, The Right Way
Continuous integration and continuous delivery is a methodology and set of best practices that software development teams use to deliver code changes. The method helps catch bugs (errors) faster, cutting down on development time, reducing disruption and speeding up deployment. All of which means lower costs and near-zero downtime.
It sounds complicated, but there are only 3 steps in the process:
- Develop (write the code and test the changes).
- Staging (client reviews the changes).
- Production (changes are pushed to the live site).
The stages, or environments, are synchronised with each other, but because they are isolated, the live site is kept safe from anything that might break during the development and testing stages.
Here’s how it looks:
Our Magento Deployment Process
Every project begins with the developer working on a local copy of the site, writing code on his/her PC or laptop. Once the developer is happy with the code they push it to the development server, where the changes are merged.
The development server is configured to replicate the live site exactly so the changes can be tested in a “real life” environment.
It is on the development server that the quality assurance (QA) team will run tests on the changes to check for conflicts and bugs and to confirm the changes meet the requirements. If QA is passed the changes are passed along the pipeline and merged onto the staging server.
Staging is where the changes are tested for a 2nd time, this time by the client. A staging environment is intended to be a “safe space” where features and ideas can be battle-tested before adding to live, where it would be much more difficult to remove or edit a feature that customers have interacted with.
Upon client approval, all changes are uploaded and merged onto the live site.
As you can see, by the time the code reaches the live site it has been rigorously tested, but in the rare instance that a change causes something to break, we have a final insurance policy.
Using a clever string of text called a Symbolic Link, reverting the live site back to the previous state is as simple as changing channels on your TV and can be done in an instant. For existing eCommerce sites this is a vital fallback step that allows you to keep trading whilst we go back and fix the pesky bug.
A Fast & Reliable Magento Deployment is Better for Everyone
Refining and implementing our Magento deployment process has helped us level up as a B2B Magento agency.
Through improved efficiencies, increased productivity and minimising disruption for our clients, it has raised the quality of our work and reduced stress for our team, making for happy clients and happy staff!
Looking for a Magento Launch Checklist? Swipe ours for free.
Or get in touch for a chat about your next Magento eCommerce project and discover why our clients trust us to deliver on time and on budget, every time.