GitOps 101
What is GitOps?
GitOps describes a concept in which the open source software Git is used for the entire management process of an application / software-based product – from development to deployment to maintenance.
GitOps is a paradigm that allows developers to perform tasks that actually fall within the field of IT operations – for example, the provision of software products.
This is how the name can be explained: The whole thing takes place in the open source software Git . Ops is simply the abbreviation for “Operations” or “Operations”. GitOps makes it possible to work much more efficiently and to increase the automation of processes.
Git: software for distributed version management
Git is free software that goes back to Linus Torvalds and replaced the BitKeeper system after it was no longer available for free. Git works on all major operating systems. The program is highly efficient and is secure against unintentional and malicious falsifications. It allows versions of files to be managed in different places.
GitOps bypasses dashboards
New technologies don’t just require writing code. There are also other points to consider. This includes, for example:
- Computer infrastructure
- Storage systems
- Security concepts
- Development pipelines
Put simply: not every app and not all tools immediately match the environment in which they are supposed to run. This is why these software products have management consoles in the form of dashboards. The onboarding, the configurations and the administration of the tools and apps can be carried out here.
However, this creates problems: The dashboards usually come from third-party providers and have to be adapted to the needs of the actual users themselves. In addition, their functions are usually limited. Technology teams have to spend significant hours dealing with these difficulties.
GitOps solves this problem. The dashboards are bypassed. Instead, the developers manage the software products directly from their code base. The code is fed into the Git of the company / institution. This means that new versions can be distributed quickly and easily. Typical Git administrations are GitHub , GitLab or Bitbucket .
The entire administration via your own Git
With this approach, the entire technology slack can be developed, provided and updated via the Git. The advantage is obvious: extensive automations can be implemented that would not be possible with roof boards. After all, the work processes now take place in the same place and no longer separately from one another.
As an example for servers: The developers can express their own infrastructure as code. In the Git they now program that the servers are automatically scalable. Other development teams can also simply read the code of the server configuration and do not have to work with the cloud provider’s dashboard.
What is .NET Core?
.NET Core is an open source platform that is being developed by Microsoft. It replaces the old .NET framework and offers numerous advantages in comparison. In .NET 5, however, the framework and core versions are combined.
We have been working on .NET Core since 2014. The open source platform first appeared in 2016 and has been updated regularly since then. It is intended to be able to develop and run apps. .NET Core represents a significant modernization compared to the earlier .NET Framework . It is therefore not a completely new development, but a hybrid solution of redesign and new implementation.
The .NET Core platform and the old framework were developed in parallel until 2020. However, there was an increasingly clear shift towards .NET Core. Last but not least, this is due to the advantages of the core version over the framework:
- faster than the .NET framework
- works platform-independent
- completely open source
- modular construction
.NET Core weaknesses
However, there are also some negative aspects associated with .NET Core. For example, there were and are API gaps compared to the full framework. These were closed by Microsoft with Windows-specific solutions. However, this was at the expense of platform independence. These additional packages were introduced with .NET Core 3.0 in September 2019, but support expired in March 2020 because it was a current release .
In December 2019, Version 3.1 with Long Term Support (LTS) was submitted, various functions were then deleted, including a number of Windows Forms controls. Microsoft guarantees a support of three years for 3.1. The old .NET framework was even equipped with ten-year Long Term Support (LTS).
Merger of .NET Core and the .NET Framework
The coexistence of .NET Core and .NET Framework ends in autumn 2020. Then these two platforms as well as Mono (.NET Framework special form that is independent of Microsoft) will flow together. The whole thing is called .NET 5.0. The addition “Core” is omitted accordingly. A common basis should be created for the following development goals:
- Desktop apps
- Applications for web servers
- mobile apps
- Games
.NET 5.0 will run on Windows, macOS, Android, iOS, Linux and Tizen. From a purely technical point of view, it is the direct successor to .NET Core. This applies to the tool chain as well as to the open and agile development model based on GitHub . The class library is transferred from .NET Standard. Most of the functions flow from mono, but not all. For example, it will run on iOS and Android.