FelixWoRe / ods-core

The core of OpenDevStack - infrastructure setup based on Atlassian tooling, Jenkins, Nexus, SonarQube and shared images, e.g. Crowd auth proxy / Jenkins base slave

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ODS core & infrastructure

Introduction

OpenDevStack (ODS) Core houses the all the central infrastructure components.

All the contained components except Atlassian tools are built in the Openshift central CD namespace.

Contents

  1. Jenkins master & base slave - the basis of the ODS build engine
    The base slave provides plugins for OWASP, Sonarqube, and CNES and is HTTP proxy aware. Specific quickstarters / boilerplates require different technologies e.g. gradle, NPM/Yarn etc. to build, hence warrant their own builder slaves. These slaves are based on this base slave and are hosted in the ods-project-quickstarter repository - next to their respective boilerplates.

    During jenkins builds instances/pods of those builder images can be found within the project specific project-cd namespace.

  2. Nexus - repository manager
    Nexus is used as artifact manager throughout OpenDevStack. Each jenkins slave is configured to bind to the installed NEXUS to centralize build / dependency artifact resolution. There is one central instance of Nexus in the CD project

  3. Sonarqube - Sofware quality management
    The OpenDevStack version of Sonarqube - preconfigured with language plugins used by the boilerplates. All generated jenkinsfiles contain a stage stageScanForSonarQube for sourcecode review - which connects to this central instance. There is one central instance of SQ in the CD project

  4. Shared images - Docker Images for common functionality

    1. The authentication proxy for crowd - used by the RShiny and Jupyther quickstarters, which themselves don't provide direct authentication integration.
    2. The webhook proxy used to connect Bitbucket webhooks to their respective jenkins instances. For example a merged PR will trigger the respective webook proxy instance in the right project, which in turn creates an openshift build pipeline, that triggers jenkins to build.
  5. Atlassian infrastructure
    Contains all the ansible scripts to setup jira / confluence / bitbucket and atlassian crowd. Optional, if you have your own instances running, you can just configure OpenDevStack to use those.

About

The core of OpenDevStack - infrastructure setup based on Atlassian tooling, Jenkins, Nexus, SonarQube and shared images, e.g. Crowd auth proxy / Jenkins base slave

License:Apache License 2.0


Languages

Language:Shell 46.2%Language:Go 19.1%Language:Dockerfile 13.0%Language:Lua 9.2%Language:Ruby 6.9%Language:Groovy 5.1%Language:Makefile 0.3%Language:Python 0.2%