gcallah / DevOpsSample

This is a sample repo to get students (and others) going with a DevOps project.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DevOpsSample

This is a sample repo to get students (and others) going with a DevOps project. It will serve as the template for introductory lectures on this topic.

It is being built for the DevOps class at NYU Tandon, but usable anywhere!

This project should layout the basic structure of all projects for the DevOps class.

DevOps: the practices and tools supporting those practices that allow organizations to deliver reliable software that meets its users' needs rapidly and repeatedly.

Setup

To set up a new developer's environment, in the top-level directory, run:

make dev_env

To build production, run:

make prod

Requirements

  1. Use workflow control.
  2. Use version control.
  3. Automate our documentation generation.
  4. Automate our testing.
  5. Automate code review.
  6. Configure the system with code (infra-structure as code).
  7. Automate our builds.
  8. Use CI/CD to automate our deployment.
  9. Learn how to containerize our application.
  10. Contemplate monitoring.

Design

Tools to acheive the above:

  1. kanban
  2. git
  3. pydoc
  4. nose, coverage, unittest
  5. flake8
  6. make
  7. Travis CI
  8. Docker
  9. Status Cake

Implmentation

We should develop incrementally, taking many small steps.

We should make work visible.

Testing

We will write automated tests for all of our application code.

About

This is a sample repo to get students (and others) going with a DevOps project.

License:GNU General Public License v3.0


Languages

Language:Python 73.8%Language:Makefile 26.2%