Code Monkey home page Code Monkey logo

cicd's Introduction

CI/CD Notes Application

The application is hosted on Render cloud. The on production, application uses Postgres database hosted on ElephantSql.

See live at CICD Notes

CI/CD

See the Github Actions workflow.

The workflow has only a single job which consists of four steps: three test jobs and a final deploy job. The test jobs are executed on push and merge to main branch, while the deploy job is executed only on merge to main

Tests

These jobs are executed in parallel. Each job will lint and test different parts of the code.

Client

Installs client dependencies, lints the code and finally runs the client-only tests.

Server

This step is similiar to client step, but only on the server side. The job has an additional service: postgres database in a container. The connection string to this database is given as an environment variable.

End-to-End

End-to-end tests require the server and the client to be running. This job also uses the postgres database container service.

Deploy

This final job waits for the test jobs to complete. If one of the test jobs fails, this job is not executed.

Render deploy hook

Triggers deploy to render with a single HTTP-request. The deploy url is a Github secret. On the Render side, the new version of the app is brought up only if the health check passes. The health test is route on the server side, which checks the database connectivity.

Used technology

cicd's People

Contributors

vilsuo avatar

Watchers

 avatar

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.