Generic Quartermaster module template.
make build
make run
make linters
Generic Quartermaster module
License: Apache License 2.0
Modules (i.e., builders, analyzers, and reporters) can contact (read and/or write) the graph database in two ways:
qmstr run ...
wrapper (green arrow)Contacting the graph database through the Orchestrator causes the latter to be responsible for database management, a task that it shouldn't be responsible for. Therefore, modules should contact the graph database directly (as it already happens for the JSON reporter, purple arrow).
The qmstr run ...
wrapper will continue to exist as long as it's more convenient for us.
The builder should be at least able to communicate with the master/orchestrator.
Python and CMake builders do this with the qmstr run ...
wrapper.
Maven builders do this by patching the root pom.xml
file, injecting the Quartermaster Maven plugin.
A docker-compose.yml
file can help to instantiate such an integration test, even though it'd be a manual one.
With github.com/docker/build-push-action.
Use the commit ID as the image tag.
Take inspiration out of this: please exclude the deployment step (only CI, no CD). You will need to set secrets.DOCKER_USERNAME
and secrets.DOCKER_PASSWORD
as GitHub secrets.
Last run errors are available here.
The super-linter can be also executed locally with:
make linters
A basic (and empty) module image should:
All modules need to synchronize with the master/orchestrator before starting their execution.
This is done with RabbitMQ, and the synchronization code is in qmstr/broker-test
.
More specifically, the modules/base
folder is the one that needs to be imported.
All linters are enabled by default in github.com/github/super-linter.
From the last GitHub Action run:
Error: buildx call failed with: error: failed to solve: rpc error: code = Unknown desc = executor failed running [/bin/sh -c apk update && apk add --no-cache git=2.30.0-r0 ca-certificates=20191127-r5 tzdata=2020f-r0 && update-ca-certificates]: exit code: 1
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.