prefect-gitlab
The prefect-gitlab library makes it easy to interact with GitLab repositories and credentials.
Getting started
Prerequisites
Install prefect-gitlab
The following command will install a version of prefect-gitlab
compatible with your installed version of prefect
.
If you don’t already have prefect
installed, it will install the newest version of prefect
as well.
Upgrade to the latest versions of prefect
and prefect-gitlab
:
Register newly installed block types
Register the block types in the prefect-gitlab
module to make them available for use.
Examples
In the examples below, you create blocks with Python code. Alternatively, blocks can be created through the Prefect UI.
Store deployment flow code in a private GitLab repository
To create a deployment where the flow code is stored in a private GitLab repository, you can use the GitLabCredentials
block.
A deployment can use flow code stored in a GitLab repository without using this library in either of the following cases:
- The repository is public
- The deployment uses a Secret block to store the token
Code to create a GitLab Credentials block:
Access flow code stored in a private GitLab repository in a deployment
Use the credentials block you created above to pass the GitLab access token during deployment creation. The code below assumes there’s flow code in your private GitLab repository.
Alternatively, if you use a prefect.yaml
file to create the deployment, reference the GitLab Credentials block in the pull
step:
Interact with a GitLab repository
The code below shows how to reference a particular branch or tag of a GitLab repository.
Exclude the access_token
field if the repository is public and exclude the reference
field to use the default branch.
Use the newly created block to interact with the GitLab repository.
For example, download the repository contents with the .get_directory()
method like this:
Resources
For assistance using GitLab, consult the GitLab documentation.
Refer to the prefect-gitlab
SDK documentation linked in the sidebar to explore all the capabilities of the prefect-gitlab
library.