Skip to main content

The package manager for Git providers

Project description


git-system-follower logo

git-system-follower

git-system-follower (gsf) is a package manager for Git providers.

PyPI PyPI - Python Version Build Repo Size ruff

:eyes: Overview:wrench: Problems It Solves:star2: Key Features:dart: Key Beneficiaries:package: Install:page_with_curl: Docs

Supported resources

Git providers GitLab • Gear registries Dockerhub Artifactory Nexus

:eyes: Overview

gsf designed to streamline the management of repository branch content and configuration. By automating installations, updates, and removals, gsf reduces manual intervention, prevents errors, and ensures a consistent state across projects.

If you’re managing CI/CD pipelines, infrastructure configurations, or any repository-bound tools, gsf is here to make your work easier, faster, and more reliable using Git packages, aka Gears.

:wrench: Problems It Solves

Have you used versioned .gitlab-ci.yml that require a specific file structure in the repository?

If so, you've probably encountered configuration issues: you forgot to specify a mandatory parameter, didn't create the right file, and eventually the Pipeline doesn't work. Or maybe everything was working, and suddenly the Pipeline starts crashing for no apparent reason - and you waste time figuring out that someone accidentally changed the startup parameters. And if you need to update an old .gitlab-ci.yml to the latest version, you often have to manually migrate through multiple versions.

gsf solves all of these problems by automatically managing your config file version and structure, eliminating all of these errors and saving you a lot of work:

  • Reduced manual work
    Engineers no longer need to handle installation or updates manually — this is done by the package developer, who knows all the details.

  • Version management
    The package manager supports migrations between versions. When updating, it automatically performs intermediate steps, ensuring no errors occur from skipping versions.

  • Preserving user changes
    During template generation, the tool carefully compares files to avoid overwriting user-made changes.

  • Security and control
    The state of all installed packages is stored in a special .state.yaml file. The data inside is hashed to prevent unauthorized changes or misuse.

:star2: Key Features

  • Works only with repository branch content
    The manager operates exclusively within branches, managing the repository’s content without altering branches, commits, or other repository elements.

  • GitLab-specific support
    The current implementation is tailored to work with GitLab repositories.

  • Package installation
    Quickly add new tools or configurations to a repository.

  • Package updates
    Ensure smooth migrations between versions.

  • Package removal
    Completely remove configurations and tools without leaving traces.

  • Variable management
    Add or update variables in CI/CD systems like GitLab.

  • Template generation
    Create configuration files while considering existing settings and user changes.

  • Developer interface
    Provides API and tools for package developers to define how their packages are installed, updated, and removed. This ensures that package developers can define migration steps and other actions with precision.

:dart: Key Beneficiaries

DevOps engineers, SRE engineers and other professionals working with GitOps repositories, for example, configuring projects linked to ArgoCD, GitLab CI/CD, or similar tools.

:package: Install

See Installation Guide.

:page_with_curl: Docs

Get started with the Quick Start Guide or plunge into the complete documentation.

:handshake: Contributing

  • CODE-OF-CONDUCT.md
    This document outlines the expected behavior for everyone interacting with the project. It fosters a respectful and inclusive environment for developers, contributors, and users.

  • CONTRIBUTING.md
    This document acts as a guide for anyone interested in contributing to the project. It clarifies the contribution process and helps maintainers manage contributions effectively.

  • SECURITY.md
    This document focuses on security practices and reporting vulnerabilities. It aims to promote a secure development environment and responsible handling of security issues.

:arrows_counterclockwise: Changelog

Detailed changes for each release are documented in the TBD.

:black_nib: License

Apache License 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qubership_git_system_follower-0.6.18.tar.gz (50.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qubership_git_system_follower-0.6.18-py3-none-any.whl (85.0 kB view details)

Uploaded Python 3

File details

Details for the file qubership_git_system_follower-0.6.18.tar.gz.

File metadata

File hashes

Hashes for qubership_git_system_follower-0.6.18.tar.gz
Algorithm Hash digest
SHA256 7117ec318f24dbb8d9eb0ef8ec8f6ef893034ccefb28940433eafb0c721adc4b
MD5 3dda55eff0b0b9ea7f1b50fd9746c190
BLAKE2b-256 53f3013a97ed2f3a9c3ec6ffc900766bee9a810742bb4d5aec1739e23803edfb

See more details on using hashes here.

Provenance

The following attestation bundles were made for qubership_git_system_follower-0.6.18.tar.gz:

Publisher: packaging.yaml on Netcracker/qubership-git-system-follower

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file qubership_git_system_follower-0.6.18-py3-none-any.whl.

File metadata

File hashes

Hashes for qubership_git_system_follower-0.6.18-py3-none-any.whl
Algorithm Hash digest
SHA256 c745140f7f8ba53e1b691586d86a0f8051a8b35c2e007b80ee9d1c7bf119c879
MD5 95ffc455bf2b8ad3fb11ef51721aab2c
BLAKE2b-256 79d90f61393449059897c5d510e89a55b914299504e5bac4435f43b60b191d61

See more details on using hashes here.

Provenance

The following attestation bundles were made for qubership_git_system_follower-0.6.18-py3-none-any.whl:

Publisher: packaging.yaml on Netcracker/qubership-git-system-follower

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page