royvoetman/flysystem-gitlab-storage
Flysystem adapter for GitLab storage using GitLab’s Repository Files API v4. Store and retrieve files from a GitLab project/branch via a simple client + adapter setup. Supports optional path prefixes and integrates with Laravel via a companion package.
A Gitlab Storage filesystem for Flysystem.
This package contains a Flysystem adapter for Gitlab. Under the hood, Gitlab's Repository (files) API v4 is used.
For Flysystem 2 (PHP 7.4) use version 2.0.4
For Flysystem 1 (PHP 7.1) use version 1.1.0
composer require royvoetman/flysystem-gitlab-storage
// Create a Gitlab Client to talk with the API
$client = new Client('project-id', 'branch', 'base-url', 'personal-access-token');
// Create the Adapter that implements Flysystems AdapterInterface
$adapter = new GitlabAdapter(
// Gitlab API Client
$client,
// Optional path prefix
'path/prefix',
);
// The FilesystemOperator
$filesystem = new League\Flysystem\Filesystem($adapter);
// see http://flysystem.thephpleague.com/api/ for full list of available functionality
Every project in Gitlab has its own Project ID. It can be found at to top of the frontpage of your repository. See
This will be the URL where you host your gitlab server (e.g. https://gitlab.com)
Gitlab supports server side API authentication with Personal Access tokens
For more information on how to create your own Personal Access token: Gitlab Docs
Please see CHANGELOG for more information what has changed recently.
Contributions are welcome and will be fully credited. We accept contributions via Pull Requests on Github.
README.md and any other relevant documentation are kept up-to-date.The MIT License (MIT). Please see License File for more information.
How can I help you explore Laravel packages today?