Eindhoven University of Technology (TU/e) is a university in the south of the Netherlands, in the Brainport / Eindhoven Smart Region. As TU/e adopted more DevOps processes and tooling, they sought outside help managing the growing GitLab environment.

TU/e has been using GitLab for several years as a self-managed service, offering Git services mainly for research and educational staff; account creation by students was restricted. With the growing trends toward cloud adoption, TU/e's need for CI/CD grew, along with the students’ need to work with Git and CI/CD for their coursework. Knowing that their environment and service offering was not suited to this type of demand, TU/e decided to outsource management of the GitLab infrastructure, and wanted to have GitLab experts within reach when needed, as consultants.

The challenge: Scaling up the GitLab environment while doing less IT work

At the start of 2022, the area of Research within the Library and Information Services (LIS) department decided to prioritize research tooling and services for further development. GitLab was an obvious starting point due to the number of current users and pressure from the research and educational departments to improve functionality and support. Instead of tinkering with the service and infrastructure that was already in place, the team decided to look for external expertise, emphasizing compliance with internal policies such as cloud, security, privacy, and architecture.

Maturing expertise

GitLab knowledge varies within TU/e. Some novice users require training on Git fundamentals, whereas more advanced users already use pipelines to test their code and manage deployments. This wide range of knowledge requires a broad skillset to support, so there was a need to add expertise to support with the more advanced use cases.

Meeting compliance requirements

As the previous GitLab environment was self-hosted on private infrastructure, data residency for special projects was not an issue. But most SaaS offerings would require additional measures to be compliant within various industry collaborations. With this in mind, and the policies for privacy, security, and cloud, TU/e opted for a self-managed GitLab instance, hosted by a third party in Europe.

Improving functionalities

Besides wanting the GitLab instance to be more redundant and have failover support, additional functionalities on the shortlist were included within the scope of the TU/e request. Primarily, to allow students to work on GitLab and use it as a platform to learn to work with Git and CI/CD. Secondarily, to enable Gitlab Pages to easily deploy static websites; lowering the need for other static web hosting, or staff and students managing dedicated VMs for this purpose. By doing so, TU/e wanted to lower the thresholds for students and staff to perform better version control, and more easily control their DevOps processes.

Why Eficode?

GitLab documentation provides reference architectures for companies to help define their infrastructural needs. If TU/e would follow these guidelines as they were, they would end up with an expensive set of infrastructure that would be underutilized. Therefore, TU/e looked for a partner that could help accurately estimate the resources needed for the current workload, and could grow with them as the university’s organic growth and adoption of GitLab increased.

All this,  with the compliance needs, such as data residency, and other policies, added up to a very specific list of requirements. After a tendering process, Eficode managed to provide the most fitting offer and was awarded the contract.

The solution

With a clearer view and greater control over all their tooling, facilitated by intense collaboration between TU/e and Eficode, the university team is more mature in the area of Git and DevOps tooling. A dedicated team, consisting of key end-users of Gitlab, decides what the environment should look like. This enables IT to give ownership of the environment to its end-users, resulting in a better solution.
 
Through an ongoing SLA, Eficode manages the GitLab custom instance TU/e uses to control code and facilitate CI/CD. Furthermore, to mature the organization even further, aided by Eficode, the university is working on a range of policies and initiatives within user and project lifecycling, keeping the environment clean, and solving issues such as managing data belonging to those leaving the university.

The results

TU/e now has greater control over their GitLab users and projects. And with good metrics, IT can now be more proactive and offer support and training in the right areas, for example in Git or CI/CD, which could in turn increase usage of the platform even further.

Hosting is completely managed by Eficode, and the data, which all resides within Europe, stays compliant with GDPR. Moreover, with the SLA in place, IT has peace of mind and can focus on their core responsibilities rather than managing uptime and a host of other day-to-day maintenance activities.

 
Photo: Eindhoven University of Technology / Bart van Overbeeke Photography