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.
-
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/Yarnetc. to build, hence warrant their ownbuilder slaves. Theseslavesare based on thisbase slaveand are hosted in the ods-project-quickstarter repository - next to their respective boilerplates.
Duringjenkinsbuilds instances/pods of thosebuilderimages can be found within the project specificproject-cdnamespace. -
Nexus - repository manager
Nexus is used as artifact manager throughout OpenDevStack. Eachjenkins slaveis configured to bind to the installed NEXUS to centralize build / dependency artifact resolution. There is one central instance of Nexus in theCDproject -
Sonarqube - Sofware quality management
The OpenDevStack version of Sonarqube - preconfigured with language plugins used by theboilerplates. All generatedjenkinsfilescontain a stagestageScanForSonarQubefor sourcecode review - which connects to this central instance. There is one central instance of SQ in theCDproject -
Shared images - Docker Images for common functionality
- The Airflow and Elasticsearch images - used for Airflow quickstarter, an Airflow OpenDevStack compatible and enhanced implementation.
- The webhook proxy used to connect Bitbucket webhooks to their respective jenkins instances. For example a merged PR will trigger the respective
webook proxyinstance in the rightproject, which in turn creates anopenshift build pipeline, that triggers jenkins to build.
-
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.