This repository is for a tutorial on how to implement ci-cd in django using AWS

Overview

AWS CI/CD DJANGO

Overview

This repository is for a tutorial on how to implement Django CI/CD Pipeline in AWS. It contains important scripts needed to carry out both CI and CD operations respectively on AWS throoug CodeBuild and CodeDeploy

CodeBuild

The script for running builds and tests for your application is the buildspec.yml file.

CodeDeploy

The script for running automated deployments to your server is the appspec.ymL file. This script contains paths to important scripts needed for the automated deployment These scripts are described in-depth below

Gunicorn

Gunicorn is an important component needed for deploying a django application to a server. The configurations for the gunicorn service file is located in /gunicorn/gunicorn.service

Nginx

Nginx is also an essential component needed for deploying a django application to a server. The configurations for the nginx configuration file is located in /nginx/nginx.conf

Scripts

The scripts folder holds scripts that are needed to automate the deployment. Each script runs an important task that ultimately leads to the successfull deployment of your application I will explain the use of each script below.

  • clean_instance.sh : This script clears all files and directory in the path scpecified
  • instance_os_dependencies.sh : This script installs the linux packages needed for the deployment of our application such as nginx, python3, python3-pip, etc.
  • python_dependencies.sh : This script helps create a virtual environment, activates it, and installs the dependencies from the requirements.txt file specified
  • gunicorn.sh : This script copies the specified gunicorn service to a gunicorn service on the server, starts the gunicorn service, and enables it.
  • nginx.sh : This script copies the nginx configuration on our repository to another nginx configuration file on our server, and starts the nginx xervice.
  • start_app.sh : This script edits the settings.py of your django project, adding the ip-address of your server to the ALLOWED_HOSTS list, and then restarts both the nginx and gunincorn services so the changes can take effect
  • after_install.sh : This is a script that runs after the other scripts are successful.

Conclusion

This is a simple CI/CD Django Pipeline repository that contains information and guides that helps explain the important scripts needed to setup a Django CI/CD Pipeline on AWS.

Contributions are welcome as well.

You might also like...

Cookbook Method is the process of learning a programming language by building up a repository of small programs that implement specific programming concepts.

Cookbook Method is the process of learning a programming language by building up a repository of small programs that implement specific programming concepts.

CookBook - Hacktoberfest Find the book you want to read next! PRESENTED BY What is CookBook? A cookbook in the programming context is collection of ti

Nov 17, 2022

Visual Studio Code extension for formatting and linting Django/Jinja HTML templates using djLint

Visual Studio Code extension for formatting and linting Django/Jinja HTML templates using djLint

Dec 15, 2022

Employee Management System is a web application developed using Django(Backend) which manages the record of employees, their salary, attendance. publish public notices, assign works to employees, make requests to employees.

Employee Management System is a web application developed using Django(Backend) which manages the record of employees, their salary, attendance. publish public notices, assign works to employees, make requests to employees.

Employee_Management_System Employee Management System is a web application developed using Django(Backend) which manages the record of employees, thei

Dec 16, 2022

A Kaggle clone made using the Django framework as a learning project.

Mini Kaggle (Also known as data-platform) A Kaggle clone made using the Django framework as a learning project at Divar in the summer of 2021. This pr

Nov 1, 2022

Github Repository for the resources shown in my 8 JavaScript Pro Tips Tutorial in Youtube

Github Repository for the resources shown in my 8 JavaScript Pro Tips Tutorial in Youtube

Part 1 - JavaScript Pro Tips - Learn with Sumit Table of Contents How to run Contact How to run Different lessons taught in the Youtube Tutorial are o

Dec 28, 2022

This Repository consist of Daily learning JS, Assignments, coding challenge, projects, references, tutorial

This Repository consist of Daily learning JS, Assignments, coding challenge, projects, references, tutorial

💛 A Tour of JavaScript This Repository consist of Daily learning, Assignments, coding challenge, projects, references, tutorial. 👩‍💻 👨‍💻 alert(

Sep 7, 2022

A serverless AWS expense tracker API. AWS Lambda functions, API gateway, and Dynamodb are among the ingredients.

AWS-Serverless-API A serverless AWS expense tracker API. AWS Lambda functions API gateway Dynamodb Endpoints Create a new expense: Method: POST Body f

Jul 16, 2022

Everynode allows you to run any version of Node.js in AWS Lambda, in any commercial AWS region

Everynode allows you to run any version of Node.js in AWS Lambda, in any commercial AWS region

Run Any Node.js Version in AWS Lambda Everynode allows you to run any version of Node.js in AWS Lambda, in any commercial AWS region. We add support f

Dec 15, 2022

Deploy an Architect project from GitHub Actions with keys gathered from aws-actions/configure-aws-credentials

Deploy an Architect project from GitHub Actions with keys gathered from a specific AWS IAM Role federated by an IAM OIDCProvider. CloudFormation to cr

Apr 6, 2022
Owner
Somtochukwu
Software Engineer and Technical Writer
Somtochukwu
Under the Sea is an official AWS workshop delivered by AWS SAs and AWS Partners to help customers and partners to learn about AIOps with serverless architectures on AWS.

Under the Sea - AIOps with Serverless Workshop Under the Sea is an exciting MMORPG developed by the famous entrepreneur behind Wild Rydes, the most po

AWS Samples 4 Nov 16, 2022
Learn Web 2.0 and Web 3.0 Development using Next.js, Typescript, AWS CDK, AWS Serverless, Ethereum and AWS Aurora Serverless

Learn Web 2.0 Cloud and Web 3.0 Development in Baby Steps In this course repo we will learn Web 2.0 cloud development using the latest state of the ar

Panacloud Multi-Cloud Internet-Scale Modern Global Apps 89 Jan 3, 2023
MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are still part of a flow in the AWS cloud remote.

MerLoc MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are

Thundra 165 Dec 21, 2022
AWS Lambda & Serverless - Developer Guide with Hands-on Labs. Develop thousands line of aws lambda functions interact to aws serverless services with real-world hands-on labs

AWS Lambda & Serverless - Developer Guide with Hands-on Labs UDEMY COURSE WITH DISCOUNTED - Step by Step Development of this Repository -> https://www

awsrun 35 Dec 17, 2022
A complete application tutorial to show how to implement the Web Socket protocol using only Node.js builtin modules

Web Socket application using only Node.js built-in modules About Welcome, this repo is part of my youtube video about Building a complete application

Erick Wendel 35 Dec 19, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
This repository shows how to implement signTypedData_4(EIP712) with NodeJS

EIP712 Implementation with NodeJS This repository shows how to implement signTypedData_4(EIP712) with NodeJS Acknowledgements What is EIP712 EIP Imple

Dapp Composer 18 Dec 17, 2022