2022-08-07 07:44:38 +00:00
|
|
|
# rediOps
|
2022-08-07 08:08:19 +00:00
|
|
|
|
2022-08-07 22:06:03 +00:00
|
|
|
Rediscover DevOps is about standardising how to find information about the code, specifically for use in the DevOps pipeline and
|
2022-08-07 08:08:19 +00:00
|
|
|
for engineers to locate relavant information about the code and its capability and DevOps process.
|
|
|
|
|
|
|
|
|
|
The information resides with the code in the code repository, commonly Git, and is human readable and also understood by tools.
|
|
|
|
|
|
|
|
|
|
RediOps takes the lead from the the **.well-known** folder approach used in web pages for source.
|
|
|
|
|
That is the creation of a folder named ".well-known" and to create a file by the name of
|
2022-08-07 08:09:38 +00:00
|
|
|
**"devops.json"** within the folder in source. This will allow tools to retrieve the file if it exists
|
2022-08-07 08:08:19 +00:00
|
|
|
and to use the information for activities such as:
|
|
|
|
|
|
|
|
|
|
* build
|
|
|
|
|
* deploy
|
|
|
|
|
* discover APIs definitions
|
|
|
|
|
|
|
|
|
|
## Background
|
|
|
|
|
|
|
|
|
|
A common approach organisations have is to create well known, at least within the organisation,
|
|
|
|
|
file names within Git repositories and then configure tools to access those files for their configuration
|
|
|
|
|
and execution.
|
|
|
|
|
|
|
|
|
|
The proposal here is to define one DevOps file location and the content within to provide location information
|
|
|
|
|
for other files or actions to perform.
|
|
|
|
|
|
|
|
|
|
## Specification
|
|
|
|
|
|
|
|
|
|
The specification for the **devops.json** is defined as an OpenAPI document allowing the publishing
|
2022-08-07 22:06:03 +00:00
|
|
|
of the information also as a REST service if so required - though this is not mandatory - and
|
2022-08-07 08:08:19 +00:00
|
|
|
the "devops.json" file is expected to exist before the code is deployed.
|
|
|
|
|
|
2022-08-07 22:06:03 +00:00
|
|
|
The use of OpenAPI to define the details specification provides a format and protocol that can be understood
|
|
|
|
|
by tools and engineers. There a few aspects of the specifications that cannot be documented in OpenAPI.
|
|
|
|
|
|
2022-08-07 08:08:19 +00:00
|
|
|
If you do publish the information as a REST service then you should consider protecting access to
|
|
|
|
|
the data, especially if it contains data that may expose internal structures.
|
|
|
|
|
|
|
|
|
|
**Note:** The specification does not capture credentials or runtime environment information.
|
|
|
|
|
|
|
|
|
|
## Audience
|
|
|
|
|
|
|
|
|
|
If your organisation already has standrad automation tools and pipeline process, then you may not find the RediOps
|
|
|
|
|
and the specifications that useful.
|
|
|
|
|
|
|
|
|
|
You may find the specification useful if:
|
|
|
|
|
|
|
|
|
|
1. You are a small developer with custom tools or simple requirements
|
|
|
|
|
2. Your organisation has many different tools for different repositories and you need to document which tool goes with what
|
|
|
|
|
|