Code Monkey home page Code Monkey logo

dott's Introduction

DOTT: DevOps Test Task

Welcome to DOTT.

This repository contains an API skeleton where you can add your code, choose the language of your preference.

What do we expect from you?

  • Demonstrate you have great coding and operation skills, no matter which technology stack is used.

  • This is not an exam, this is more a task that has been assigned to you, so you can ask us at anything, anytime.

  • Communication is important, if you don't have technical problems make sure to share your progress.

Application Overview

You need to complete a functionality in our API that provides some help to the networking team.

The API has 3 missing endpoints, the first endpoint converts Subnet Mast to CIDR format, the second endpoint return the CIDR value of a given Subnet Mask and finally the third endpoint simply validates an IPv4.

e.g.

curl localhost/cidr-to-mask?value=24
{
  "function": "cidrToMask",
  "input": "24",
  "output": "255.255.255.0"
}
curl localhost/mask-to-cidr?value=255.255.0.0
{
  "function": "maskToCidr",
  "input": "255.255.0.0",
  "output": "16"
}

curl localhost/ip-validation?value=255.255.0.0
{
  "function": "ipv4Validation",
  "input": "255.255.0.0",
  "output": true
}

What do you need to do?

CI/CD Pipeline

  • Jenkins
    • Webhook
  • Sonar Qube
    • (Plus) Linting
    • Static Code Analysis
  • Testing
    • Unit testing
    • Functional Tesging(plus)
  • Deployment
    • In case your app requires extra infra it will be a Plus
  • (Plus) Docker
  • (Plus) Seguridad
  • (Plus) Fix Code

Techincal Diagram

  • Processes
  • Information Flow between different technologies

Task Organization

  • Kanban (Trello.com)

dott's People

Contributors

dependabot[bot] avatar rbolio avatar salvadorcobregon avatar

Stargazers

 avatar

dott's Issues

Golang Dockerfile update

The current Dockerfile for golang is not working. I have two possible solutions. And I would like feedback in which one to select and send as a Pull request.

  1. Using Go modules
    As of Go 1.14, Modules where introduced, and we don't need goop anymore. For example to install mux we can run go get github.com/gorilla/mux
    This would fix the Dockerfile only temporarily, because we would still require dependencies outside of the docker image. Meaning they could broke again.
    However, this seems to be more inline with the style of the Dockerfiles used in the repository. And increase the difficulty of the challenge.

  2. Using a custom Docker image as base
    We can create a custom image with Go and all the dependencies, and use that as a base image for the Dockerfile of the challenge.
    This would make it easier and will work on the long run, but won't be as much of a challenge.

Please let me know which one to send as a patch.

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.