Appearance
Concepts
Reliza Hub
Reliza Hub is a service that provides a single view for all key DevOps activities in the organization. It combines Service Catalog with Release and Infrastructure Management.
Further, Reliza Hub allows to control what software should be deployed on what instance and also allows to provision ephemeral instances with desired bundles.
Component
Component refers to software that is being developed and usually maps to a version control system repository (i.e., Git repository). In other words, if you are working on a software which has its own Version Control repository or is a component in a Monorepo - that would be a Component.
Developers usually think in terms of Components when discussing their work.
Branch
Branch is a part of the Component and usually has same meaning as a branch in a version control system branch (i.e., Git).
Usually branches are divided into Base branch (main), Feature branches (short-term) and Release branches (long-term). In practical sense, Feature branches, usually have different naming and versioning conventions, i.e. they can be named after tasks like feature/ticket-2.
Bundle (or Products)
Bundle is a customer-facing, operational piece of software. Bundles are not mapped directly to a version control repository, but rather through their components. Components of Bundles are either Components or other Bundles.
Customers, project managers and product marketing teams usually think in terms of Bundles (frequently referred to as Products) when describing software produced by organization.
Using Bundles-Component combination helps communication between Development, Ops and Product Marketing teams.
Feature Set
Feature Set is a part of the Bundle. It is understood as specific set of functionality as to be delivered to the customer. Feature Set for a Bundle is what a Branch is for a Component.
Artifact
Artifact may be a binary resource, container image or a collection of directories and/or files. We support artifact types as per CycloneDX specification of Component Object resource - currently using CycloneDX schema v1.4.
We assume that 2 Artifacts are equal if they are of the same type and their known hashes or digests (such as sha256 or sha512) are equal.
Source Code Entry
Source Code Entry is a pointer to specific commit or revision in a version control system. Unlike commit in a distributed VCS, Source Code Entry also points to specific central VCS repository to ensure auditability.
Release
Release may belong to a Component or a Bundle.
In the case of a Component Release, Release points to a specific Source Code Entry and may have several Artifacts. It may also have any number of components (other Releases).
In the case of a Bundle Release, Release would only have components (other Releases) and may have only auxiliary artifacts (i.e., test reports related to this release).
Instance
Instance is a medium which runs software built by organization (Components or Bundles). This could be a VM, a set of VMs, a Kubernetes cluster, a PaaS solution - literally anything that is configured to run software. Instance is defined by its URI.
Cluster
Cluster is a set of instances. In example, Kubernetes may be considered a cluster with Instances running inside its namespaces.
Application
Application is a logical organization of a group of components and bundles. Approvals are scoped to Application. Particularly, each application may have its own approval policy for the same environment type.