Git Service¶
This service is used to get files from a git repository.
We can manage this types of git repository:
- github (public and private)
- bitbucket (on-premise)
- gitlab (public)
- azuredevops (public)
Independently of the git service, this service needs an endpoint to get the files.
Routes¶
GET /:endpointName/:docs
¶
endpointName
: the name of the endpointdocs
: is the list of documents to get, separated by a comma if multiple docs
Example¶
This path is using the github
endpoint to get the README.md
in the repository krateoplatformops/krateo
github/%5Bkrateoplatformops%5D%5Bkrateo%5DREADME.md
as you can see the docs list is encoded in the path.
Response¶
{
"list": [
{
"name": "README.md",
"content": "PGltZyBzcmM9ImRvY3MvbWVkaWEvbG9nby5zdmciIGFsdD0iS3JhdGVvIFBs\nYXRmb3Jtb3BzIiB3aWR0aD0iNDAwIj4KCioqS3JhdGVvIFBsYXRmb3Jtb3Bz\nKiogaXMgYW4gb3BlbiBzb3VyY2UgdG9vbCwgYmFzZWQgb24gQ05DRiBwcm9q\nZWN0cyBzdWNoIGFzIEt1YmVybmV0ZXMgYW5kIENyb3NzcGxhbmUsIHRoYXQg\nZ2l2ZXMgdXNlcnMgdGhlIGNhcGFiaWxpdHkgdG8gY3JlYXRlIGFueSBkZXNp\ncmVkIHJlc291cmNlIG9uIGJhc2ljYWxseSBhbnkgaW5mcmFzdHJ1Y3R1cmUg\ndGhleSdkIGxpa2UuIEJlIGl0IGEgSzhzIGNsdXN0ZXIsIG1pY3Jvc2Vydmlj\nZSwgYXBwbGljYXRpb24sIHBpcGVsaW5lLCBkYXRhYmFzZSBvciBhbnl0aGlu\nZyBlbHNlLCBLcmF0ZW8gaGFzIGdvdCB5b3VyIGJhY2suIFRoZSBvbmx5IHJl\ncXVpcmVtZW50IGlzIGZvciB0aGUgcmVzb3VyY2UgdG8gYmUgZGVzY3JpcHRp\nYmxlIHZpYSBhIFlBTUwgZmlsZSByZXByZXNlbnRpbmcgdGhlIHJlc291cmNl\nJ3MgX2Rlc2lyZWQgc3RhdGVfIChyaW5ncyBhIGJlbGw/IPCfmIkpLgoKS3Jh\ndGVvIGFsbG93cyBmb3I6CgotICoqQ3JlYXRpbmcgYW55IGtpbmQgb2YgcmVz\nb3VyY2VzIHdpdGhpbiBhbmQgb3V0c2lkZSB0aGUgS3ViZXJuZXRlcyBjbHVz\ndGVyIGl0IHJ1bnMgb24qKjogd2hpbHN0IEtyYXRlbyBydW5zIGFzIGEgRGVw\nbG95bWVudCBpbiBhIEt1YmVybmV0ZXMgY2x1c3RlciwgaXQgY2FuIGFsc28g\nY3JlYXRlIHJlc291cmNlcyBfb3V0c2lkZV8gdGhlIGNsdXN0ZXIuIFlvdSBj\nYW4gdXNlIEtyYXRlbyB0byBjcmVhdGUgYW55dGhpbmcgZnJvbSBuZXcgS3Vi\nZXJuZXRlcyBjbHVzdGVycywgTG9nc3Rhc2ggcGlwZWxpbmVzLCBEb2NrZXIg\ncmVnaXN0cmllcywgQVBJIGdhdGV3YXlzLCBhbmQgbWFueSBvdGhlcnMuCi0g\nKipGb2N1c2luZyBvbiB0aGUgbWFuYWdlbWVudCBvZiBzZXJ2aWNlcyoqOiB0\naGFua3MgdG8gW0Nyb3NzcGxhbmVdKGh0dHBzOi8vY3Jvc3NwbGFuZS5pbykg\nYW5kIHRvIFtCYWNrc3RhZ2VdKGh0dHBzOi8vYmFja3N0YWdlLmlvLyksIEty\nYXRlbyBmcmVlcyB0aGUgdXNlciBmcm9tIG1vc3Qgb2YgdGhlIGJ1cmRlbiBv\nZiBjbHVzdGVyIG1hbmFnZW1lbnQsIGdpdmluZyB0aGVtIHRoZSBhYmlsaXR5\nIHRvIGVudGlyZWx5IGZvY3VzIG9uIHRoZSBzZXJ2aWNlcyB0aGF0IG11c3Qg\nYmUgcnVuLiBXaGlsZSB0aGUgaW5mcmFzdHJ1Y3R1cmUgaXMgbWFuYWdlZCBi\neSBDcm9zc3BsYW5lLCB0aGUgcmVzb3VyY2VzIHRvIGJlIGRlcGxveWVkIGNh\nbiBiZSBlYXNpbHkgZm91bmQgYW5kIGNvbmZpZ3VyZWQgaW4gQmFja3N0YWdl\nJ3MgVUksIHdoaWNoIGFjdHMgYXMgYSBjYXRhbG9nIG9mIHJlYWR5LXRvLXVz\nZSBzZXJ2aWNlcy4gVGhpcyByZXN1bHRzIGEgcGhlbm9tZW5hbCB1c2VyIGV4\ncGVyaWVuY2UgdGhhdCBkcmFzdGljYWxseSByZWR1Y2VzIHdhc3RlcyBvZiB0\naW1lLgotICoqU2luZ2xlLWhhbmRlZGx5IG1vbml0b3JpbmcgYW5kIGNvbnRy\nb2xsaW5nIHJlc291cmNlcyoqOiBLcmF0ZW8gYWxzbyBhY3RzIGFzIGEgY2Vu\ndHJhbGl6ZWQgY29udHJvbHBsYW5lLCBsZXR0aW5nIHVzZXJzIG1vbml0b3Ig\nYW55dGhpbmcgcmFuZ2luZyBmcm9tIENJL0NEIHBpcGVsaW5lcyB0byBwb2Qg\nc3RhdHVzZXMgYW5kIG9wZW4gdGlja2V0cyBvbiB5b3VyIEpJUkEuIEFsbCB0\naGUgaW5mb3JtYXRpb24geW91IG5lZWQgaXMgcHJlc2VudCBvbiBhIHNpbmds\nZSBwYWdlIC0tIHlvdSdsbCBuZXZlciBoYXZlIHRvIGd1ZXNzIHRoZSBjb3Jy\nZWN0IGRhc2hib2FyZCBldmVyIGFnYWluLgoKIyMgT3VyIG1pc3Npb24KCldp\ndGggS3JhdGVvLCB3ZSBhaW0gYXQgcHV0dGluZyB0b2dldGhlciBtYW55IGF3\nZXNvbWUgdG9vbHMgZnJvbSB0aGUgQ05DRiBsYW5kc2NhcGUgdG8gcHJvdmlk\nZSBvdXIgdXNlcnMgd2l0aCBhIHNpbXBsZS10by11c2UsIGNvbXBsZXRlIGFu\nZCBtb2R1bGFyIHBsYXRmb3JtIHRoYXQgYWxsb3dzIGZvciBjcmVhdGluZyBy\nZXNvdXJjZXMgb24gYW55IGluZnJhc3RydWN0dXJlLiBXZSBzZWUgS3JhdGVv\nIGFzIGEgcG93ZXJmdWwgdG9vbCB0aGF0IGltcHJvdmVzIHRoZSB3b3JrZmxv\ndyBvZiB0ZWFtcyBieSBkZWZpbmluZyBjbGVhciByb2xlcyBpbiB3aGljaCB0\naGUgaW5mcmFzdHJ1Y3R1cmUgdGVhbSBjcmVhdGVzIHRoZSByZXNvdXJjZSB0\nZW1wbGF0ZXMgbmVlZGVkIGJ5IHRoZSBkZXZlbG9wZXJzLCBhbmQgdGhlIGRl\ndmVsb3BlcnMgYXJlIHRoZSBmaW5hbCB1c2VycyB0aGF0IHVzZSB0aG9zZSB0\nZW1wbGF0ZXMgYW5kIGNhbiBtYW5hZ2UgdGhlIGxpZmVjeWNsZSBvZiB0aGUg\nY3JlYXRlZCByZXNvdXJjZXMgZnJvbSBhIHNpbXBsZSwgdW5pZmllZCBkYXNo\nYm9hcmQuCgpJbiBvdXIgdmlzaW9uLCBLcmF0ZW8gaXM6CgotIGEgX3NlbGYt\nc2VydmljZSBwbGF0Zm9ybV8sIHdoZXJlIHVzZXJzIGNhbiBhdXRvbm9tb3Vz\nbHkgY2hvb3NlIHdoYXQgdG8gY3JlYXRlIGFuZCB3aGVyZTsKLSBhIGNvbXBs\nZXRlIF9jb250cm9scGxhbmVfIHRoYXQgZWFzZXMgYW5kIGNlbnRyYWxpemVz\nIG1hbnkgcHJvY2Vzc2VzLCBwdXR0aW5nIGFsbCB0aGUgcmVsZXZhbnQgaW5m\nb3JtYXRpb24gaW4gYSBzaW5nbGUgcGFnZSByYXRoZXIgdGhhbiBkaXN0cmli\ndXRpbmcgaXQgb24gdGVucyBvZiBkaWZmZXJlbnQgbG9jYXRpb25zOwotIGEg\nX211bHRpLWNsb3VkIHByb3ZpZGVyXyB0b29sOiBpdCB3b3JrcyB3aXRoIGFs\nbCB0aGUgbWFqb3IgY2xvdWQgcHJvdmlkZXJzIGFuZCB3aXRoIG9uLXByZW0g\naW5zdGFsbGF0aW9uczsKLSBlaXRoZXIgbWFuYWdlZCBvciBlYXNpbHkgaW5z\ndGFsbGFibGUgb24geW91ciBleGlzdGluZyBLdWJlcm5ldGVzIGNsdXN0ZXIu\nCgojIyBHZXR0aW5nIHN0YXJ0ZWQKCkJlZm9yZSBpbnN0YWxsIEtyYXRlbywg\ncGxlYXNlIHZlcmlmeSBvdXIgW3JlcXVpcmVtZW50c10oLi9kb2NzL1JFUVVJ\nUkVNRU5UUy5tZCkuCgpHZXR0aW5nIHN0YXJ0ZWQgd2l0aCBLcmF0ZW8gaXMg\nYXMgZWFzeSBhcyBmb2xsb3dpbmcgaXRzIFtpbnN0YWxsYXRpb24gaW5zdHJ1\nY3Rpb25zXSguL2RvY3MvSU5TVEFMTC5tZCkuCgojIyBSZWZlcmVuY2UgYXJj\naGl0ZWN0dXJlCgpXZSBhcmUgYXdhcmUgd2UgaGF2ZSBtZW50aW9uZWQgbWFu\neSBkaWZmZXJlbnQgc29mdHdhcmUgY29tcG9uZW50cyBzbyBmYXIsIHRodXMg\nd2Ugc2VlIHdoeSB5b3UgbWF5IGJlIGEgdGFkIGNvbmZ1c2VkLiBJbiBzdW1t\nYXJ5LCBLcmF0ZW8nIHJlZmVyZW5jZSBhcmNoaXRlY3R1cmUgY2FuIGJlIGRl\ncGljdGVkIGFzIGZvbGxvd3M6Cgo8aW1nIHNyYz0iZG9jcy9tZWRpYS9yZWZl\ncmVuY2VfYXJjaGl0ZWN0dXJlLnBuZyIgd2lkdGg9IjcwMHB4IiBhbHQ9IlJl\nZmVyZW5jZSBhcmNoaXRlY3R1cmUiLz4KCiMjIEhvdyBkb2VzIGl0IHdvcms/\nCgo8aW1nIHNyYz0iZG9jcy9tZWRpYS9ob3dfZG9lc19pdF93b3JrLnBuZyIg\nd2lkdGg9IjcwMHB4IiBhbHQ9IkhvdyBkb2VzIGl0IHdvcmsiLz4K\n"
}
],
"count": 1
}
Note
Services respond with valid JSON, so, if the response is an array, it will be wrapped in the list
property.
If the response contains the list
proerty it will add the property count
with the number of items in the list.