Mini Shell

Direktori : /usr/share/l.v.e-manager/utils/
Upload File :
Current File : //usr/share/l.v.e-manager/utils/cache_rubygems.py

#!/opt/cloudlinux/venv/bin/python3 -bb
# coding:utf-8

# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT

from __future__ import print_function
from __future__ import division
from __future__ import absolute_import
import getopt
import sys

from clselect.clselectruby.extensions import ExtensionInfo


def usage():
    print('Usage: ' + sys.argv[0] + ' [-d]')
    print('Options:')
    print(' -h | --help   : print this message')
    print(' -d | --delete : delete cache')
    print('      --verbose: verbose output')


def main():
    try:
        opts, _ = getopt.getopt(sys.argv[1:], 'dh', ['delete', 'help', 'verbose'])
    except getopt.GetoptError as err:
        print(str(err))
        usage()
        sys.exit(2)

    verbose_flag = False

    for o, _ in opts:
        if o in ('-h', '--help'):
            usage()
            sys.exit()
        elif o in ('-d', '--delete'):
            ExtensionInfo.delete_cache()
            sys.exit()
        elif o in ('--verbose',):
            verbose_flag = True
        else:
            usage()
            sys.exit(2)

    try:
        e = ExtensionInfo()
    except IndexError:
        if verbose_flag:
            print('No any alternative gem binary found. Skip creating gems cache')
        sys.exit(1)

    e.write_cache()


if __name__ == '__main__':
    main()

Zerion Mini Shell 1.0