This is a Singer tap that produces JSON-formatted data following the Singer spec.
This tap:
- Pulls raw data from GitLab's REST API
- Extracts the following resources from GitLab:
- Outputs the schema for each resource
- Incrementally pulls data based on the input state
-
Install
> pip install tap-gitlab
-
Get your GitLab access token
- Login to your GitLab account
- Navigate to your profile page
- Create an access token
-
Create the config file
Create a JSON file called
config.json
containing:- Access token you just created
- API URL for your GitLab account. If you are using the public gitlab.com this will be
https://gitlab.com/api/v3
- Projects to track (space separated)
{"api_url": "https://gitlab.com/api/v3", "private_token": "your-access-token", "projects": "myorg/repo-a myorg/repo-b"}
-
[Optional] Create the initial state file
You can provide JSON file that contains a date for the API endpoints to force the application to only fetch data newer than those dates. If you omit the file it will fetch all GitLab data
{"branches": "2017-01-17T00:00:00Z", "commits": "2017-01-17T00:00:00Z", "issues": "2017-01-17T00:00:00Z", "milestones": "2017-01-17T00:00:00Z", "projects": "2017-01-17T00:00:00Z", "users": "2017-01-17T00:00:00Z"}
-
Run the application
tap-gitlab
can be run with:tap-gitlab --config config.json [--state state.json]
Copyright © 2017 Stitch