Bash command and node library to push git info to Kibana for better visualization.
In normal scenarios, its difficult to analyze git data, this command and library aims to make it easily as it pushes the data to es where dashboards can be created easily. We can better visualise who is contributing how much to the project. And how the processes are being followed
- Push commits to Es.
- Push Tags to Es.
- Works as both command line or as a node library.
- Visualise using Kibana Dashboards.
GitToEs will work on all systems which can run node or have bash instalked.
npm install -g git-to-es
Usage: git-to-es [options] [command]
Options:
-v, --version output the version number
-h, --help output usage information
Commands:
push [options] <all> Push info to ES
* Unsupported command
git-to-es push all --hosts 127.0.0.1:9200 --repoName git --origin local --workingDirPath /Users/yogesh.yadav/Downloads/PersonalSpace/Work/Code/CSR/git-to-es --infoType commits
git-to-es push all --hosts 127.0.0.1:9200 --repoName git --origin local --workingDirPath /Users/yogesh.yadav/Downloads/PersonalSpace/Work/Code/CSR/git-to-es --infoType tags
npm install --save git-to-es
const GitToEs = require("git-to-es");
const Elasticsearch = require('elasticsearch');
let client = new Elasticsearch.Client({
host: {
host: '127.0.0.1',
port: 9200
}
});
let gitToEs = new GitToEs({
es: {
client: client,
index: 'index',
type: 'type'
},
origin: 'local',
workingDirPath: '/Users/yogesh.yadav/repo-name'
})
gitToEs.init()
.then(() => gitToEs.pushCommits())
.then(Promise.resolve)
.error(error => Promise.reject(error));
const GitToEs = require("git-to-es");
const Elasticsearch = require('elasticsearch');
let client = new Elasticsearch.Client({
host: {
host: '127.0.0.1',
port: 9200
}
});
let gitToEs = new GitToEs({
es: {
client: client,
index: 'index',
type: 'type'
},
origin: 'local',
workingDirPath: '/Users/yogesh.yadav/repo-name'
})
gitToEs.init()
.then(() => gitToEs.pushTags())
.then(Promise.resolve)
.error(error => Promise.reject(error));
I open-source almost everything I can, and I try to reply everyone needing help using these projects. Obviously, this takes time. You can integrate and use these projects in your applications for free! You can even change the source code and redistribute (even resell it).
However, if you get some profit from this or just want to encourage me to continue creating stuff, there are few ways you can do it:
- Starring and sharing the projects you like
- Paytm You can make one-time donations via Paytm (+91-7411000282). I'll probably buy a coffee.
- UPI You can make one-time donations via UPI (7411000282@paytm).
- Bitcoin You can send me bitcoins at this address (or scanning the code below):
3BKvX4Rck6B69JZMuPFFCPif4dSctSxJQ5
Thanks!
If you are using this library in one of your projects, add it here.
MIT © Yogesh Yadav