Using the TaskManager Application and Accessing GitLab Projects in Practical DevSecOps
Welcome to your first hands‑on experience with the TaskManager web app and the associated GitLab repositories that power the Practical DevSecOps training environment. This guide walks you through what the TaskManager application is, why it matters in a DevSecOps curriculum, and how to correctly clone and explore the GitLab project, even when you encounter password prompts or permission issues. By the end of this article you’ll be ready to start experimenting with the intentionally vulnerable “Prod” machine and begin your journey toward DevSecOps certification.
Table of Contents
What Is the TaskManager Application?
TaskManager is a lightweight, web‑based task‑tracking tool that serves as the flagship demo application for the Practical DevSecOps labs.
-
Purpose – It mimics a real‑world SaaS product, allowing learners to practice secure coding, continuous integration, containerization, and automated security testing.
-
Environment – The app is deployed on the “Prod” machine, a deliberately vulnerable production‑like environment. This gives you a safe sandbox where you can explore security flaws without risking actual production systems.
-
Technology Stack – Multiple language implementations are provided (e.g., Node.js, Java, Python). The Node.js version is the most commonly used in the beginner labs.
Why TaskManager Is Central to Practical DevSecOps
| Learning Objective | How TaskManager Helps |
|---|---|
| Secure Coding | The source contains known OWASP Top‑10 vulnerabilities (e.g., insecure deserialization, XSS). |
| CI/CD Pipelines | Pre‑configured GitLab CI jobs demonstrate automated builds, tests, and security scans. |
| Container Security | Dockerfiles and Kubernetes manifests let you explore image hardening and runtime policies. |
| Incident Response | Simulated attacks on TaskManager give you a playground for detection and remediation. |
By interacting with the same codebase that your instructors use, you gain a consistent, reproducible learning experience.
Accessing the GitLab Project
Understanding the Two URLs
-
Production Demo URL – https://prod-.lab.practical-devsecops.training/
-
Personal Clone URL – https://gitlab.practical-devsecops.training/pdso/django.nv
Cloning the Repository Correctly
Follow these steps to clone the personal fork to your local workstation:
-
Open a terminal (Linux/macOS) or Git Bash (Windows).
-
Copy the clone URL (the personal fork link above).
-
Run the Git command:
git clone https://gitlab.practical-devsecops.training/pdso/django.nv django -
When prompted for a username and password, use the credentials supplied in the exercises
-
After cloning, navigate into the project folder:
cd django