Skip to content

calvarado2004/bookings-cd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Booking and reservations program in Go

This is the repository for the Bookings and reservations in Go

Admin site

Use the following credentials to check the admin site:

user: admin@mail.com

pass: admin

Reservation

Calendar

Test this application locally

Install and start a local PostgreSQL instance and set the postgres user password to postgres:

Download PostgreSQL

Install Go 1.18.1 or newer:

Download Go

Download this project:

git clone https://github.com/calvarado2004/bookings

Init the Go modules:

go mod init github.com/calvarado2004/bookings
go mod tidy
go get github.com/alexedwards/scs/v2
go get github.com/go-chi/chi/v5
go get github.com/justinas/nosurf
go get github.com/asaskevich/govalidator 
go get github.com/xhit/go-simple-mail/v2

Compile and start the application:

./run.sh

The application will be available here:

localhost:8080/bookings

Jenkins pipeline for Continuous Integration

This project generates two containers, the init container to make the DB migrations with Soda and the main application container.
The Groovy pipeline used to make these containers is available, it uses Buildah instead of the whole Docker application

Jenkins

Docker images generated

The container images are being uploaded to the Docker Hub Public registry

Docker Hub

Integration with MailHog

This application includes MailHog integration, however, is not configured with any email server. You would have to configure that if you really want to test this feature.

MailHog by default can be accessed through the port 8025:

localhost:8025

MailHog

Continuous Deployment with ArgoCD

ArgoCD can control its automatic deployment from the cd repository bookings-cd

ArgoCD

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages