curium-rocks / mitre-siphon Goto Github PK
View Code? Open in Web Editor NEWSyncs the mitre CVE JSON dumps to a PostgreSQL DB using Quartz and Kafka and exposes a rest API for running full text searches against the DB.
License: MIT License
Syncs the mitre CVE JSON dumps to a PostgreSQL DB using Quartz and Kafka and exposes a rest API for running full text searches against the DB.
License: MIT License
use the output of the gradle javadoc task to push the html pages to something like readthedocs to include documentation as part of the CI chain.
Evaluate options for simple load balancer/ingress that can bind to 80 and 443 and round robin to multiple mitre-siphon containers. Traefik is likely a good option, once selected update docker-compose files and helm templates if helm is present at time of merge.
Projects needs CI definition that tests, builds and distributes the application to docker hub
Project needs a readme that instructs on how to build and run the application
Add a helm chart for deploying into a kubernetes cluster.
Should use sub charts for kafka and postgresql.
kafka and postgresql should use PVCs, may need to include a host path storage provisioner.
The current resource allocations do not always provide enough resources to enter a ready state within the startup probe time, either increase resources or probe thresholds.
tsvector PostgreSQL functionality is used for search matches, further evaluation should be done around
When searching with a search term that has multiple words (in a single term) the API returns a 500. Either handle this or reject with 400.
Setup DB Schema. Should handle the following
As a developer I want a environment that gets updated when the main branch is updated and is continuously running to shake out any issues that don't show up in smoke tests. I do not want to allow a direct connection from a GitHub runner to this environment.
For a reason my plugin has changed the id to jsonschema2dataclass
and has way better gradle support. Could you please apply new plugin?
Configure authentication for API. Leverage something simple to start with such as http basic or digest.
Credentials should be configurable.
Add unit test code coverage badge
Last analysis: May 07 | Next scheduled analysis: May 14
โ Nice work, you're all caught up!
โ Nothing yet, but I'm continuing to monitor your PRs.
What would you like to see here? Let us know!
๐ Quick links
Pixee Docs | Codemodder by Pixee
๐งฐ Tools I work with
Sonar, CodeQL, Semgrep
๐ Pixee CLI
The power of my codemods in your local development environment. Learn more
๐ฌ Reach out
Feedback | Support
โค๏ธ Follow, share, and engage with Pixee: GitHub | LinkedIn | Slack
Randomly generate any secrets needed for service connections at install time instead of using secrets in values.
Mitre is deprecating the JSON apis.
Evaluate options.
The top level readme does not currently include instructions on how to install via helm, add and cleanup any dated info.
Remove CI GitHub env object.
Tests currently rely on postgres hostname, this should be adjusted to automatically use spring active profiles to swap out properties when running in CI environment and change the default profile hostname for postgres back to localhost
Setup scaffolding for application
This includes:
Needs to occur before attaching CI actions
As a developer I would like to clean up smells identified by sonar and keep a clean score card: https://sonarcloud.io/project/issues?resolved=false&types=CODE_SMELL&id=curium-rocks_mitre-siphon
After getting things cleaned up and updated this exception is now being thrown in NVD job.
2022-12-11T21:16:59.514Z ERROR 1 --- [eduler_Worker-1] org.quartz.core.ErrorLogger : Job (DEFAULT.NVDCVEComplete threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception.
at org.quartz.core.JobRunShell.run(JobRunShell.java:213) ~[quartz-2.3.2.jar!/:na]
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) ~[quartz-2.3.2.jar!/:na]
Caused by: java.lang.NullPointerException: Cannot invoke "javax.persistence.EntityManager.unwrap(java.lang.Class)" because "this.entityManager" is null
Add automatic push of container build to docker hub. Use git hub actions to accomplish this.
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
This repository currently has no open or pending branches.
docker-compose.service-deps.yml
confluentinc/cp-kafka 7.6.1
confluentinc/cp-zookeeper 7.6.1
docker-compose.test.yml
confluentinc/cp-kafka 7.6.1
confluentinc/cp-zookeeper 7.6.1
docker-compose.yml
confluentinc/cp-kafka 7.6.1
confluentinc/cp-zookeeper 7.6.1
Dockerfile
test.Dockerfile
.github/workflows/ci.yml
actions/checkout v4
actions/setup-java v4
actions/setup-node v4
gradle/gradle-build-action v3
actions/upload-artifact v4
codecov/codecov-action v4
confluentinc/cp-kafka 7.6.1
confluentinc/cp-zookeeper 7.6.1
.github/workflows/publish.yml
settings.gradle
build.gradle
org.springframework.boot 3.2.5
io.spring.dependency-management 1.1.5
com.palantir.git-version 3.0.0
org.flywaydb.flyway 10.13.0
com.github.eirnym.js2p 1.0
com.diffplug.spotless 6.25.0
org.sonarqube 5.0.0.4638
org.springdoc:springdoc-openapi 2.5.0
org.springdoc:springdoc-openapi-starter-webmvc-ui 2.5.0
org.mitre.taxii:taxii 1.1.0.1
org.mitre:stix 1.2.0.2
javax.persistence:javax.persistence-api 2.2
jakarta.validation:jakarta.validation-api 3.1.0
com.squareup.okhttp3:okhttp 4.12.0
com.squareup.okhttp3:mockwebserver 4.12.0
org.awaitility:awaitility 4.2.1
gradle/wrapper/gradle-wrapper.properties
gradle 8.7
helm/mitre-siphon/values.yaml
helm/mitre-siphon/Chart.yaml
postgresql 15.4.0
kafka 28.3.0
Currently leveraging latest version in a few places instead of pinning versions. Ideally should move versions out to a variable and define once.
Add background task that executes at set intervals and size regardless of replica count and scrapes mitre cve information.
Background task should:
Api does not have a versioning mechanism, IE api/v1/ api/v2.
Add an actor on the kafka mitre CVE data topic that normalizes the mitre CVE data and persists it into the service data store.
It should be:
After getting everything cleaned up/updated the swagger UI page is throwing a 404 error when bringing up /swagger-ui.html
when running in kubernetes.
Create a simple UI that displays the data available on the REST api
Expose mitre cvedata over a REST API
API should be:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.