Skip to content

A comprehensive repository showcasing advanced DevOps practices with Infrastructure as Code (IaC) and Continuous Integration/Continuous Deployment (CI/CD) pipelines. Includes examples of cloud infrastructure provisioning, configuration management, and automated application deployment.

License

Notifications You must be signed in to change notification settings

CLHdevOps/devops-iac-cicd-showcase

Repository files navigation

devops-iac-cicd-showcase

A comprehensive repository showcasing advanced DevOps practices with Infrastructure as Code (IaC) and Continuous Integration/Continuous Deployment (CI/CD) pipelines. Includes examples of cloud infrastructure provisioning, configuration management, and automated application deployment.

Simple Web Application for DevOps Showcase

This repository demonstrates a DevOps project setup including Infrastructure as Code (IaC) and Continuous Integration/Continuous Deployment (CI/CD) pipeline for a simple web application. It's designed as a showcase for DevOps practices and principles, suitable for inclusion in a professional portfolio.

Overview

The application is a basic web service written in Node.js, serving a simple HTML page. The project highlights DevOps methodologies, focusing on automation, monitoring, and efficient deployment strategies.

Project Structure

/app - Contains the source code for the Node.js application. /infra - Contains Infrastructure as Code (IaC) files, using Terraform for provisioning cloud resources. /scripts - Contains scripts for setup, build, and deployment tasks. /tests - Contains sample unit and integration tests for the application. /.github/workflows - Contains GitHub Actions workflow files for CI/CD. /docs - Additional documentation for the project setup and architecture.

Features

Application: A simple Node.js web application. IaC: Terraform scripts to provision and manage cloud resources. CI/CD: A GitHub Actions pipeline that automates testing, building, and deploying the application. Monitoring: Basic setup for monitoring the application's health and performance. Getting Started Prerequisites Node.js Terraform Docker (optional, for containerization)

Setting Up the Application

  1. Clone the repository to your local machine.
  2. Navigate to the /app directory and install dependencies: cd app npm install
  3. Start the application locally: npm start

Deploying the Application

  1. Navigate to the /infra directory.
  2. Initialize Terraform to download necessary providers: terraform init
  3. Apply Terraform configuration to provision the infrastructure: terraform apply
  4. Follow the CI/CD pipeline instructions in /.github/workflows to set up automated deployment.

Contributing

Contributions are welcome! Please feel free to submit pull requests, open issues, or suggest improvements.

License This project is open-source and available under the MIT License.

About

A comprehensive repository showcasing advanced DevOps practices with Infrastructure as Code (IaC) and Continuous Integration/Continuous Deployment (CI/CD) pipelines. Includes examples of cloud infrastructure provisioning, configuration management, and automated application deployment.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published