Save data from GitLab to a SQLite database
Project description
gitlab-to-sqlite
Save data from GitLab to a SQLite database.
Attribution
The overall structure and CLI is taken from https://github.com/dogsheep/github-to-sqlite/.
- How to install
- Authentication
- Using custom gitlab instance
- Fetching projects
- Fetching merge requests
- Fetching pipelines
- Fetching environments
- Fetching deployments
- Fetching commits
How to install
$ pip install gitlab-to-sqlite
Authentication
Create a GitLab personal access token: https://gitlab.com/-/profile/personal_access_tokens
Run this command and paste in your new token:
$ gitlab-to-sqlite auth
This will create a file called auth.json in your current directory containing the required value. To save the file at a different path or filename, use the --auth=myauth.json option.
As an alternative to using an auth.json file you can add your access token to an environment variable called GITLAB_TOKEN.
Using custom gitlab instance
When running auth you may specify an optional --host parameter pointing
to a custom instance.
$ gitlab-to-sqlite auth --host gitlab.internal
Fetching projects
The projects command retrieves a single project.
$ gitlab-to-sqlite projects gitlab.db group/project-name
Fetching merge requests
The merge-requests command retrieves updated or created merge requests.
$ gitlab-to-sqlite merge-requests gitlab.db group/project-name
This command can be run regularly. Based on the most recent created or updated merge request it only fetches changes that happened afterwards.
Fetching pipelines
The pipelines command retrieves updated or created pipelines with their
corresponding jobs.
$ gitlab-to-sqlite pipelines gitlab.db group/project-name
This command can be run regularly. Based on the most recent created or updated pipeline it only fetches changes that happened afterwards.
Fetching environments
The environments command retrieves all environments of a single project.
$ gitlab-to-sqlite projects gitlab.db group/project-name
Fetching deployments
The deployments command retrieves all deployments of a specific environment in
a single project.
$ gitlab-to-sqlite deployments gitlab.db group/project-name environment-name
This command can be run regularly. Based on the most recent created or updated deployment it only fetches changes that happened afterwards.
Fetching commits
The commits command retrieves all commits of a single project.
$ gitlab-to-sqlite commits gitlab.db group/project-name
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gitlab_to_sqlite-0.0.5.tar.gz.
File metadata
- Download URL: gitlab_to_sqlite-0.0.5.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf13b1c2a5ec3a49035d30251be4a5f17ae114dea7987e38d06fe109fc36982c
|
|
| MD5 |
3ac8ec692be933fd62db7cc2b749d650
|
|
| BLAKE2b-256 |
0eb3893b9ead529c3010f9112d3a5fc6bc9dc92ea4d8a12bc1076fbdf63936a1
|
File details
Details for the file gitlab_to_sqlite-0.0.5-py3-none-any.whl.
File metadata
- Download URL: gitlab_to_sqlite-0.0.5-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9aba82d6bf539fae1fe7b8ca799f87f0cbaa3d0105c5892f9ce1c030251ecd86
|
|
| MD5 |
c2604ee1fd4fcf0cc14d1282dc1ddaea
|
|
| BLAKE2b-256 |
168c6579c178f6fac19484c405b5acfc74876a612e34e9786bd71d0cb6e60508
|