Skip to content

Demo of CI/CD pipelines (Github Actions) using Docker, Kubernetes, Terraform and IBM Cloud

License

Notifications You must be signed in to change notification settings

devdanielsun/cicd-pipeline

Repository files navigation

Case study: CI/CD

View CASE_STUDY.md for a detailed description of the project.

Last results of the workflows on master branch:

Continuous Integration (node.js build/test) Continuous Deployment (IKS) Cloud env setup (Terraform)

Tools used:

Apps:

  • /app :Node.JS

CLI Cheat sheet:

Makefile

Check Makefile for more make commands. Some examples:

$ make compose
$ make build
$ make push API_KEY=..
$ make tf-create-workspace ENV=staging
$ make tf-init ENV=staging
$ make tf-plan ENV=staging

Docker:

Go to localhost to view Docker results.

$ docker-compose up -d --build
$ docker-compose push
$ docker-compose down

[Optional] Check if Docker containers are running

$ docker container ls

Kubernetes:

Go to localhost:32100 to view Kubernetes results.

$ kubectl apply -f kubemanifests.yml
$ kubectl delete -f kubemanifests.yml

[Optional] Check if Kubernetes works:

$ kubectl get all
$ kubectl exec -it my-node-app-557d99ff59-tc57w sh
$ printenv | grep SERVICE

Terraform:

$ cd terraform
$ terraform init
$ terraform plan
$ terraform apply
$ terraform destroy

About

Demo of CI/CD pipelines (Github Actions) using Docker, Kubernetes, Terraform and IBM Cloud

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published