Asset Inventory API - An API service to store and retrieve asset inventory data
https://github.com/asecurityteam/asset-inventory-api
Overview
Asset Inventory API provides time-based storage for network assets. Once stored, assets should be query-able by dimensions such as time, IP address, and host name. The intent is to provide point-in-time lookup and attribution for network assets. An example use case for this would include hydrating AWS VPC Flow Logs with identifying information.
Quick Start
Configuration
Status
This project is in incubation which means we are not yet operating this tool in production and the interfaces are subject to change.
Contributing
Building And Testing
We publish a docker image called SDCLI that bundles all of our build dependencies. It is used by the included Makefile to help make building and testing a bit easier. The following actions are available through the Makefile:
-
make dep
Install the project dependencies into a vendor directory
-
make lint
Run our static analysis suite
-
make test
Run unit tests and generate a coverage artifact
-
make update-test-data
Generate data.sql and schema.sql under
tests/test-data
with most recent schema and data from postgres image running locally. Use this option when there is schema changes. -
make integration
Run integration tests and generate a coverage artifact
-
make coverage
Report the combined coverage for unit and integration tests
-
make build
Generate a local build of the project (if applicable)
-
make run
Run a local instance of the project (if applicable)
-
make doc
Generate the project code documentation and make it viewable locally.
Quality Gates
Our build process will run the following checks before going green:
- make lint
- make test
- make integration
- make coverage (combined result must be 85% or above for the project)
Running these locally, will give early indicators of pass/fail.
License
This project is licensed under Apache 2.0. See LICENSE.txt for details.
Contributing Agreement
Atlassian requires signing a contributor's agreement before we can accept a patch. If you are an individual you can fill out the individual CLA. If you are contributing on behalf of your company then please fill out the corporate CLA.