/
DevOps Tools as a module of Onesait Platform

DevOps Tools as a module of Onesait Platform

Available since version 6.1.0-Warcraft

Introduction

A new module called ‘DevOps Tools’ has been incorporated into Onesait Platform, which includes a set of generalist CI/CD tools in its scope and open source to offer a complete DevOps system to the project in ‘Service’ mode in Platform installations where these do not exist or are not accessible.

The DevOps Tools module applies the same subscription model as Onesait Platform.

What does DevOps Tools include?

This module includes the following functionalities.

GitLab as a centralised code repository

GitLab is a Code Repository Management platform that uses the Git version control system.

https://about.gitlab.com/

In addition to source code management, GitLab also offers tools for project management, code review and continuous integration:

image-20240523-084930.png

The main features of GitLab are:

  • Git Repository: Uses the Git distributed version control system to manage and track changes in the source code of a project.

  • Project Management: Allows you to organise and manage software development projects, such as creating and managing tasks, tracking and resolving problems, milestones achieved... (like Git repositories).

  • Collaborative Tools: Provides functionalities that facilitate collaboration between the different members of a development team (commenting on problems, development of specific lines of code, etc.).

  • Continuous Integration (CI) and Continuous Deployment (CD): Adds integrated CI/CD capabilities to automate the building, testing and deployment of applications.

  • Access Control and Security: Makes it easy to configure access levels and roles to control who can perform specific actions in the repository.

  • Efficient Logging and Tracking System: Provides detailed logs of all project-related activities, making it easy to track changes and actions taken in the repository.

  • Project Documentation: Includes tools for creating and managing project-related documentation.

  • Flexibility and Scalability: It is a platform that can be used in small projects as well as in large developments, being able to adapt to the needs of each specific moment.

Jenkins as a software construction server

Jenkins is an Open Source continuous integration, continuous delivery and continuous deployment (CI/CD) DevOps automation tool written in the Java programming language.

It is used to implement CI/CD workflows, called pipelines:

image-20240719-092540.png

Its functionalities and features include:

  • Extensible Automation Server: Jenkins can be used as a simple CI server or become the continuous delivery hub for any project.

  • Standalone Java-based Program: Jenkins is ready to run out of the box, with packages for Windows, Linux, macOS and other Unix-like operating systems.

  • Easy Installation and Configuration via its Web Interface: Including on-the-fly error checking and integrated help.

  • Extensive Integration: With hundreds of plug-ins in the update centre, Jenkins integrates with virtually every tool in the continuous integration and delivery tool chain.

  • Extensibility: Extensible through its plug-in architecture, providing almost infinite possibilities for what Jenkins can do.

  • Streamlined Distribution: You can easily distribute work across multiple machines, helping to drive builds, tests and deployments across multiple platforms more quickly.

ArgoCD as a distribution tool for Kubernetes

ArgoCD is a declarative GitOps continuous delivery tool for Kubernetes.

ArgoCD offers various functionalities, among which the following stand out:

  • Automatic Application Deployment.

  • Management of several Kubernetes Clusters.

  • Multitenant.

  • Compatibility with different Repositories: Git, Helm Repositories.

  • SSO Integration.

  • Authorisation Policies with RBAC.

  • Synchronisation with Deployed Applications.

  • Simple and intuitive User Interface.

  • CLI to integrate with other CI/CD Tools.

  • Webhooks.

  • Metrics with Prometheus.

Harbor: Private Registry as an image repository

Harbor is an Open Source Image Registry that protects artefacts with policies and role-based Access Control, ensures images are scanned and free of vulnerabilities, and signs images as trusted.

Among the functionalities of the application we highlight:

  • Creation of Different Projects: With extended information on the image: tags and labels, number of pulls, creation date, SHA, vulnerabilities, visibility of the project, etc.

  • Creation of Different Users: With different permissions, known as role-based access control, where users can be created at the registry level and select which projects they have access to and what permissions they have over them (administrator, manager, developer, guest, etc.).

  • Image Analysis: Automatically or manually.

  • Connect External Logs.

  • Synchronisation of Images from an External Repository (Pull): You can make an automated or manual synchronisation of an external registry to one or more images and tags in order to bring images from that external registry to Harbor's private one.

  • Synchronisation of Images to External Repository (Push): An automated or manual synchronisation can be made to an external registry where an image is uploaded to the Harbor registry and the same registry pushes it to the external registry.

  • Connect an Image Analyser other than the default Harbor Image Analyser.

  • Available in nine languages: Including Spanish.

Nexus as an artefact repository

Sonatype Nexus is a repository that organises, stores and distributes the artefacts needed for development.

With Nexus, developers can fully control access and deployment of every artefact in an organisation from a single location, facilitating software distribution.

Nexus offers Features such as:

  • Publishing and Caching in a Central Repository: Which connects natively to all popular Package Managers.

  • Lifecycle Control: Of staged builds and custom metadata directly from your CI/CD Server.

  • Single Sign-On (SSO): With Role-Based access controls and full Auditability.

Artefacts