Skip to content
Snippets Groups Projects
Verified Commit a5f8e95f authored by Karel van Klink's avatar Karel van Klink :smiley_cat:
Browse files

Add existing `/docs` from /goat/gap-jenkins

parents
Branches
No related tags found
No related merge requests found
---
##### Sphinx - Generate documentation
build-public-documentation:
stage: build-public-documentation
tags:
- docker-executor
image: sphinxdoc/sphinx:latest
# Only run this pipeline if the committed changes are somewhere within the docs subdirectory
only:
changes:
- docs/**/*
before_script:
- cd $CI_PROJECT_DIR/docs
- pip install sphinx_rtd_theme
script:
- make html
artifacts:
paths:
- docs/build/html
##### Vale - Documentation linter
lint-general-documentation:
stage: lint-documentation
image:
name: jdkato/vale:latest
entrypoint: [""]
tags:
- docker-executor
dependencies:
- build-public-documentation # Only run if general documentation has been updated
# - service-editor-documentation # TODO: make this a separate step the pipeline
before_script:
- cd $CI_PROJECT_DIR/docs/vale
- vale sync
script:
- vale $CI_PROJECT_DIR/docs/build/html/_sources
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
# -- Project information -----------------------------------------------------
project = 'GÉANT Automation Platform'
copyright = '2023, GÉANT Vereniging'
author = 'GÉANT Orchestration and Automation Team'
# -- General configuration ---------------------------------------------------
extensions = ['sphinx_rtd_theme']
templates_path = ['templates']
exclude_patterns = ['build', 'Thumbs.db', '.DS_Store', 'venv']
# -- Options for HTML output -------------------------------------------------
html_theme = 'sphinx_rtd_theme'
html_static_path = ['static']
GÉANT Automation Platform (GAP)
===============================
.. toctree::
:maxdepth: 2
:glob:
:Caption: Contents
overview/*
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
@ECHO OFF
pushd %~dp0
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set SOURCEDIR=.
set BUILDDIR=_build
%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.https://www.sphinx-doc.org/
exit /b 1
)
if "%1" == "" goto help
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
goto end
:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
:end
popd
Overview
==============
Configuration management is the process that maintains consistency and integrity of the network and of the services
built on top of it ensuring that it meets requirements in terms of functionalities, performances, and security.
In the context of the IP/MPLS layer and particularly the backbone routers, different teams manage configuration in
different ways: to deploy new nodes and to operate the network, they use various tools en methods. Compliance and
quality are checked afterwards: this approach requires much manual work and it is inherently error prone.
This project aims to standardize the configuration and the configuration deployment process by using Open Source tools
and DevOps strategies: one single framework to deploy and to operate. Considering the network configuration as code and
managing it under a version control system (GitLab) will enable better visibility and control of changes and will help
standardize the way of working.
The goal is to reduce configuration drifts and exceptions, Mean Time To Repair (MTTR) in case of fault, and possibly the
number and the severity of incidents. To check configuration compliance before it gets deployed, several policies are in
place: multiple non-production environments are used to automatically execute regression and acceptance tests, in order
to ensure the highest quality and to detect problems early.
Automated configuration management must be considered as the foundation of further work in network automation, towards
service orchestration trough different technology domains (Optical, IP/MPLS, Applications) and intent-based networking.
StylesPath = styles
MinAlertLevel = suggestion
Vocab = geant-jargon, Sphinx
Packages = RedHat, proselint, Readability
[*]
BasedOnStyles = Vale, RedHat, proselint, Readability
toctree
IP/MPLS
MPLS
configuration as code
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment