As development teams increase deployment speeds and try to achieve a faster release cycle, many IT teams are relying on automated systems like Azure DevOps or Jenkins to implement continuous deployments. 3SR is a good example of that, they internally use Azure DevOps to automate their deployments with automated pipelines for production releases, pull request validation, and many other automated tasks.
A few years back, those systems were only used for deploying code. The steps included updating your code repository, and pushing the updated code to the appropriate branch. Afterward, an automated trigger took the branch, built the code artifact, and sent it to production.
With that option, you still had to separately maintain your cloud infrastructure or scripts manually. Today, with Infrastructure as code, you no longer need to manually maintain your code. Your infrastructure definition follows the code that you developed.
Automated systems also open the door to new opportunities like the support of Continuous Documentation or Documentation as Code. Indeed, with a growing number of release cycles and a faster pace of deployment, it becomes harder to maintain up-to-date technical documentation of all your systems.
Let’s say you decide to implement a new feature in your web application requiring the addition of a WebJob that connects to a queue and a database in your infrastructure. In the example below, you need to ensure your documentation gets properly updated from diagram #1 to diagram #2. The second diagram has additional connectivity to the service bus and the WebJob.
The update in the technical documentation following the change in the cloud infrastructure is crucial to ensure your team is aware of the evolution of the project. When starting a project or when only a few people are involved, this task may seem irrelevant. However, as soon as your project complexity evolves or your team increases, it becomes mandatory.
Using Cloudockit Container will enable you to easily automate your architecture diagrams and documentation to always have up-to-date information.
Many of Cloudockit’s customers are currently adopting Cloudockit Container and are leveraging the API to automate the update of their technical documentation and diagrams. When a change in the code or infrastructure arise, Cloudockit Container will enable you to add a step in your process to let the software automatically update the architecture diagrams and documentation.
We are working particularly close to one of our partners, 3SR, which is highly specialized in automating Infrastructure as Code in Azure with Azure DevOps.
3SR manages multiple infrastructures for various clients using Infrastructure as Code. When clients need a change in their IT landscape, 3SR adapts the terraform template and redeploys it to their client’s environments. This approach has many advantages such as cost reduction, reduced risk, increased speed, and consistency.
One of the main requirements asked by 3SR clients is to ensure they have up-to-date technical documentation and architecture diagrams. Each time a change is completed in their infrastructure, they can refer to the documentation to ensure everything is structured as expected. Since creating documentation manually is a difficult process and very error-prone, 3SR uses Cloudockit to generate the documentation automatically.
They originally started using Cloudockit Desktop for its powerful automation engine but quickly needed document generation integrated within their deployment pipeline. This ensures that every time a change is made, the cloud documentation and diagrams are updated. They now take advantage of Cloudockit Container to implement their needs.
As Alexandre Giraud from 3SR mentioned:
As security is a key element, Alexandre Giraud also mentioned:
Below is an example of a step named Update Documentation that triggers the documentation update.
Once the documentation generation is done, it is automatically dropped into the client’s SharePoint site(s). They can then easily refer to their cloud documentation.
And that’s not all, 3SR is also sharing their Terraform templates to enable you to use them yourself. It is very simple to use: search for the ToUpdate reference in the template and replace the values with yours and that’s it.
Click below to download the Terraform script. In the upcoming months, we will add a blog post with more details on that, stay tuned!