0% found this document useful (0 votes)
89 views

Latest - DevOps Coding Assessment

The document describes a coding assessment with 4 steps: 1) Build a Dockerfile for a Rails app with Postgres, 2) Deploy to Kubernetes using StatefulSets and an ingress controller, 3) Use ArgoCD for GitOps deployment from a GitHub repo, 4) Set up Tekton pipelines to build and push a Docker image.

Uploaded by

harsh639703
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
89 views

Latest - DevOps Coding Assessment

The document describes a coding assessment with 4 steps: 1) Build a Dockerfile for a Rails app with Postgres, 2) Deploy to Kubernetes using StatefulSets and an ingress controller, 3) Use ArgoCD for GitOps deployment from a GitHub repo, 4) Set up Tekton pipelines to build and push a Docker image.

Uploaded by

harsh639703
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

DevOps Coding Assessment

Description:
Step - 1
DOCKER
Build a Dockerfile for deploying a simple Ruby on Rails application with PostgreSQL DB
enabled. Application and DB should run on different containers.

Examples: Example – I (or) Example - II (or) Example - III (or) Example - IV

Note: You can use any ruby on rails examples or create a new simple rails app to satisfy
the requirements

Step - 2

KUBERNETES

Build a YAML file for the same application you’ve used in your first step to deploy it on
Kubernetes. You can use any local cluster provider such as Minikube or K3d. The
deployment of the standalone PostgreSQL pod must use Kubernetes StatefulSet.
Additionally, the candidate may use any ingress controller they are comfortable with or
a service mesh.

Useful Documentation - https://kubernetes.github.io/ingress-nginx/deploy/

Step - 3

ARGOCD

Deploy ArgoCD to manage the deployment of the previously mentioned application


using GitOps. The candidate must create a private GitHub repository to manage the
YAML files and for GitOps purposes. All ArgoCD config files must be present in the
GitHub repository. The expected files include application.yaml to define the application
to deploy, ArgoCD config maps (argocd-cm and argocd-rbac-cm), a config file for/(to
add) the private GitHub repository and kubernetes manifest files.

Useful Documentation - https://argo-cd.readthedocs.io/en/stable/


Step - 4
TEKTON

Set up Tekton pipelines and the Tekton dashboard. The pipeline should download the
source code from the public fork of the sample project (Which you’ve containerized in
the first step), build the image, and push it to Docker Hub. The candidate is expected to
manually run the pipeline from the Tekton dashboard.

Useful Documentation

1. https://tekton.dev/docs/
2. https://tekton.dev/docs/dashboard/#:~:text=Tekton%20Dashboard%20is%20a%
20general,creation%2C%20execution%2C%20and%20completion.
3. https://hub.tekton.dev/tekton/task/kaniko

Need to submit:
1. Private repository ZIP file that contains Kubernetes manifests, Dockerfile, gitops
configuration and pipeline configuration files (exclude any SSH/Deployment keys).
2. Video demo of your implementation
3. Any relevant information that you would like to share.

Submission Link -
https://makerble.zohorecruit.in/jobs/Careers/101712000000398007/DevOps-Engine
er?source=CareerSite

Reach out to [email protected] if you have any


questions.

ALL THE BEST

You might also like