Metadata-Version: 2.1
Name: f2r
Version: 2.3.1
Summary: Produces RPMs for FLP packages out of aliBuild ouput
Home-page: https://gitlab.cern.ch/AliceO2Group/flp-to-rpm
Author: Adam Wegrzynek
Author-email: adam.wegrzynek@cern.ch
License: GPLv3
Description: # f2r
        
        Command line tool to create RPMs out of aliBuild output
        
        ## Prerequisites
         - [aliBuild](https://alisw.github.io/alibuild/)
         - [environment Modules](https://modules.readthedocs.io/en/latest/) 4.3 or higher, RPM is available from [this S3 location](http://s3.cern.ch/swift/v1/system-configuration/RPMS/environment-modules-4.6.1-1.el7.cern.x86_64.rpm)
         - Optional: To enable S3 support you need to create a config file under `~/.s3cfg`, see [CERN IT instructions](https://clouddocs.web.cern.ch/object_store/s3cmd.html)
        
        ## Installation
        
        `python3 -m pip install f2r`
        
        OR
        
        You can use following Ansible role from [system-configration](https://gitlab.cern.ch/AliceO2Group/system-configuration/-/tree/dev/ansible/roles/f2r) that handles also "Prerequisites".
        
        
        ## Quickstart
        Build packages using `aliBuild`, eg:
        ```bash
        aliBuild build O2Suite --defaults o2-dataflow --always-prefer-system
        ```
        Then, run `alienv` as indicated by `aliBuild` in order to create modulefiles:
        ```bash
        alienv enter O2Suite/latest-o2-dataflow
        ```
        And create RPMs providing same package and version as to `alienv`:
        ```bash
        f2r generate --package O2Suite --version latest-o2-dataflow
        ```
        Validate created RPMs (this required `sudo`):
        ```
        f2r validate
        ```
        Create YUM repo:
        ```bash
        f2r repo
        ```
        
        and sync it to S3:
        ```bash
        f2r sync
        ```
        
        ## CLI options
        Global options:
        ```
          -h, --help            show this help message and exit
          --dry-run             do a dry run, skipping fpm execution
          --target-rpm-dir TARGET_RPM_DIR
                                path to store RPMs in (=/tmp/o2_rpms by default)
          --release-tag RELEASE_TAG
                                Release tag, this is mostly to provide correct dir
                                structure
          --architecture ARCHITECTURE
                                OS architecture
          --log-level LOG_LEVEL
                                Set log level (DEBUG, INFO, WARN, ERROR)
        ```
        
        Generate options:
        ```
        --package PACKAGE     package name (as recipe name in aldiist)
        --version VERSION     package version (as in modulefile: X.Y.Z-A)
        --ali-prefix ALI_PREFIX
                              path to alibuild dir
        --skip-deps           Generate single RPM without dependencies
        ```
        
        Sync options:
        ```
        --pull      Pulls instead of pushing
        ```
        
Platform: UNKNOWN
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Utilities
Classifier: Environment :: Console
Classifier: Operating System :: Unix
Classifier: Development Status :: 4 - Beta
Requires-Python: >=3.6
Description-Content-Type: text/markdown
