https://github.com/lyteabovenyte/pipeline-as-code-for-microservices
using Jenkins automation features on a mock microservice and automation on sonarqube, anchore engine, nexus, some common linters and ...
https://github.com/lyteabovenyte/pipeline-as-code-for-microservices
anchore anchore-engine jenkins microservice nexus sonarqube terraform webhook
Last synced: 6 months ago
JSON representation
using Jenkins automation features on a mock microservice and automation on sonarqube, anchore engine, nexus, some common linters and ...
- Host: GitHub
- URL: https://github.com/lyteabovenyte/pipeline-as-code-for-microservices
- Owner: lyteabovenyte
- Created: 2024-07-19T19:33:17.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-31T21:49:50.000Z (over 1 year ago)
- Last Synced: 2025-03-06T14:52:58.452Z (about 1 year ago)
- Topics: anchore, anchore-engine, jenkins, microservice, nexus, sonarqube, terraform, webhook
- Language: HCL
- Homepage: https://mastodon.social/@lyteabovenyte
- Size: 230 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
##### implementing jenkins pipeline in a microservice architecture
# NOTE:
- to deploy a jenkins cluster with master and worker nodes on AWS and Google Cloud refer to [deploy jenkins cluster with Terraform](https://github.com/lyteabovenyte/exploring-jenkins) repo which I've made available. this repo would help you bake your own jenkins master and worker nodes using Packer and easily deploy on AWS or GCP.
###### microservice components:
- Loader(Python) --> responsible for reading a JSON file containing a list of movies and pushing each movie item to Amazon SQS
- Parser(Golang) --> responsible for consuming movies by subscribing to SQS and scraping movies information from the IMDb website and storing the metadata into MongoDB
- Store(Node.js) --> responsible for servig a RESTful API with endpoints to fetch a list of movies and insert new movies into the watch list database in the MongoDB
- Marketplace(Angular & TypeScript) --> responsible for serving a frontend to browse movies by calling the store RESTful API
###### key approaches:
- using an aws api gateway to invoke a lambda function (written in js) and trigger github webhook
- statis code analysis for Angular and the marketplace with **SonarQube** and perform webhook to jenkins for completion or failure
- CVE (Common Vulnerability and Exposure) scanning of source code using **Nancy**
- baking **Nexux** Repository OSS machine image with **Packer** to host our private docker registery.
- using **Anchore Engine** for continuous visibility into supply chain security risks