Giter Site home page Giter Site logo

oscarsalvador / neb-practica-empresa-2 Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 5.64 MB

DevSecOps k8s cluster with GitLab and pipelines with SCA, SAST (Sonarqube), DAST, and IaC security to deploy to Azure

Shell 41.56% HCL 30.65% YAML 27.79%
arachni azure bash checkov curl docker gitlab helm kubernetes owasp-dependencycheck

neb-practica-empresa-2's Introduction

Kubernetes Helm Shell Script cURL Terraform Docker gitlab Azure sonarqube owasp LaTeX

Introduction

DevSecOps k8s cluster with GitLab (configured using Terraform) and pipelines for code with SCA (OWASP dependency check), SAST (Sonarqube) and DAST (Arachni), and infrastructure as code with IaC security analysis (Checkov) to deploy to Azure. Production and preproduction environments.

This repo contains a set of bash scripts to setup a DevSecOps kubernetes cluster in minikube. GitLab and Sonarqube get installed in it, and then GitLab is configured using it's Terraform provider. It requires a host with at least 32 gigabytes of RAM, and eight to twelve cores. The machine needs to have Docker, Helm, Minikube, and Kubectl installed. The three latter can be downloaded and made available to the system with the included download.sh script. Another machine is also requried, and it needs to have access to the one in which launch.sh is triggered. In my tests I used a VirtualBox virtual machine, but the same host could also be used. This machine needs to have Azure CLI, Docker, and Terraform installed. Additionally, the scripts expect az-cli to be already logged into.

Executing launch.sh will make changes to the machine's /etc/hosts, appending a line with the subdomains that will be used. It will also result in several docker images being downloaded to the local registry.



System overview and pipeline job placement

Pipelines

Code pipelines

  • Source Code Analysis (SCA) with OWASP dependency check
  • Static Aplication Security Testing (SAST) with Sonarqube
  • Building and pushing of Docker images to Azure Container Registry
  • Manual deployment of the images to Azure Container Instances to production or preproduction depending on the branch
  • Dynamic Aplication Security Testing (DAST) with Arachni

Infrastructure pipelines

  • Infrastructure as Code security analysis with Checkov
  • Automatic planning of the Terraform project
  • Manual deployment of the IaC to production or preproduction depending on the branch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.