Utilities for working with the AlmaLinux OS Git server.
Go to file
Stepan Oksanichenko 16e73461cb Update 'almalinux/gitutils/blob_upload.py' 2023-05-11 12:38:27 +00:00
almalinux/gitutils Update 'almalinux/gitutils/blob_upload.py' 2023-05-11 12:38:27 +00:00
tests/gitutils 0.0.1 version 2021-08-25 17:10:58 +03:00
.gitignore Initial release of alma_blob_upload tool 2021-08-18 00:55:09 +03:00
LICENSE Initial commit 2021-08-17 21:09:32 +00:00
README.md 0.0.1 version 2021-08-25 17:10:58 +03:00
pyproject.toml 0.0.1 version 2021-08-25 17:10:58 +03:00
setup.py 0.0.1 version 2021-08-25 17:10:58 +03:00

README.md

almalinux-git-utils

Utilities for working with the AlmaLinux OS Git server.

alma_get_sources

The alma_get_sources script downloads sources and BLOBs from the AlmaLinux sources cache.

Usage

Run the alma_get_sources in a git project root directory:

  1. Clone an AlmaLinux RPM package git project from git.almalinux.org.
  2. Switch to a required branch.
  3. Run the alma_get_sources tool:
    $ alma_get_sources
    

alma_blob_upload

The alma_blob_upload script uploads sources and BLOBs to the AlmaLinux sources cache.

Prerequirements

Create an AWS credentials file ~/.aws/credentials with the following content:

[default]
aws_access_key_id = YOUR_ACCESS_KEY
aws_secret_access_key = YOUR_SECRET_KEY

Usage

The utility supports two types of input: a CentOS git repository metadata file or a list of files to upload.

For CentOS repositories workflow will be the following:

  1. Install the get_sources.sh script from the centos-git-common repository.
  2. Clone a project and download its sources as described on the CentOS Wiki.
  3. Run the alma_blob_upload tool (don't forget to replace PROJECT_NAME with an actual project name):
    $ alma_blob_upload -i .PROJECT_NAME.metadata
    

Alternatively, you can upload a list of files in the following way:

$ alma_blob_upload -f SOURCES/FILE_1 SOURCES/FILE_N

The alma_blob_upload utility can also generate a CentOS-compatible metadata file:

$ alma_blob_upload -o .PROJECT_NAME.metadata -f SOURCES/FILE_1 SOURCES/FILE_N

License

Licensed under the GPLv3 license, see the LICENSE file for details.