Skip to content

Simply Simple Notes Usage Guide

This guide is meant to guide a user through the process of getting started with Build, Testing, Scanning, and Deploying an application within GitLab. It has a high emphasis on testing out the Security features provided by GitLab.

This guide is meant for a user who wishes to move over this application to their namespace and play around with it on there. If user just intends to view the security features, they can see the Running Demo section.

Note: Requires GitLab Gold.

Create a GitLab Account

If you do not already have a GitLab account, please create one. GitLab Gold is avaliable as a free-trial for 30 days.

Migrate Application

You can import Simply Simple Notes to your project repo using it's Git Repository URL.

Create a Kubernetes Cluster

This application is containerized and provides a helm chart so that it can be deployed onto a Kubernetes Cluster. A Kubernetes cluster is required in order to run this demo application.

In order to create a cluster and attach a Kubernetes cluster to your project, see the Add/Remove Cluster documentation

The cluster should be enabled as a GitLab-managed cluster. Also the Simply Simple Notes project should be added as a Cluster Management Project.

Cluster Requirements:

The minimum cluster requirements are as follows:

  • CPU: 2 vCPU
  • Memory: 2 GB
  • Hard-Disk: Standard 100GB

Setup the DNS

In order to get the full benefit of the application, you should add a DNS entry to your Kubernetes cluster's ingress external IP.

To access the ingress-controller's external IP, run the following command:

$ kubectl get service -n gitlab-managed-apps
NAME                                    TYPE           CLUSTER-IP    EXTERNAL-IP       PORT(S)
ingress-nginx-ingress-controller        LoadBalancer   10.0.14.46    130.211.232.146   80:32512/TCP,443:32411/TCP

Then you can add the DNS entry to your Kubernetes cluster's base domain.

Once the DNS has been setup, you need to change a few variables to enable DAST to scan the correct URL. - README.md: has a link to the url where the project is hosted, we just need to change this. - .gitlab-ci.yml: tells DAST which URL to scan, this needs to be changed. - sitemap.xml: provides the sitemap for your application, this needs to be changed.

Run Pipeline

Once the project has been migrated and the cluster has been attached, you can run a pipeline on the master branch and make sure that the security scans are running.

Adding Security to your CICD Pipeline provides more information on how the security scans are configured in the pipeline.