GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.
Passed
Push — master ( fac2c4...4a4d5a )
by P.R.
03:39
created

LoadHostClient.main()   B

Complexity

Conditions 4

Size

Total Lines 37

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 20

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 4
c 1
b 0
f 0
dl 0
loc 37
ccs 0
cts 23
cp 0
crap 20
rs 8.5806
1
"""
2
Enarksh
3
4
Copyright 2013-2016 Set Based IT Consultancy
5
6
Licence MIT
7
"""
8
import argparse
9
import sys
10
import traceback
11
12
import enarksh
13
from enarksh.DataLayer import DataLayer
14
from enarksh.xml_reader.XmlReader import XmlReader
15
16
17
class LoadHostClient:
18
    """
19
    A client for requesting the controller to load a host definition.
20
    """
21
22
    # ------------------------------------------------------------------------------------------------------------------
23
    def __init__(self):
24
        # Set database configuration options.
25
        DataLayer.config['host'] = enarksh.MYSQL_HOSTNAME
26
        DataLayer.config['user'] = enarksh.MYSQL_USERNAME
27
        DataLayer.config['password'] = enarksh.MYSQL_PASSWORD
28
        DataLayer.config['database'] = enarksh.MYSQL_SCHEMA
29
        DataLayer.config['port'] = enarksh.MYSQL_PORT
30
        DataLayer.config['autocommit'] = False
31
32
    # ------------------------------------------------------------------------------------------------------------------
33
    def main(self):
34
        """
35
        The main function of load_schedule.
36
        """
37
        # Parse the arguments.
38
        parser = argparse.ArgumentParser(description='Description')
39
        parser.add_argument(dest='filename',
40
                            metavar='filename',
41
                            action='append',
42
                            help="XML file with a host definition")
43
44
        args = parser.parse_args()
45
46
        # Send XML files to the controller.
47
        exit_status = 0
48
        try:
49
            # Connect to the MySQL.
50
            DataLayer.connect()
51
52
            err = self._load_host(args.filename[0])
53
54
            DataLayer.commit()
55
            DataLayer.disconnect()
56
            if err:
57
                exit_status = -1
58
        except Exception as exception1:
59
            try:
60
                DataLayer.rollback()
61
                DataLayer.disconnect()
62
            except Exception as exception2:
63
                print(exception2, file=sys.stderr)
64
                traceback.print_exc(file=sys.stderr)
65
            print(exception1, file=sys.stderr)
66
            traceback.print_exc(file=sys.stderr)
67
            exit_status = -1
68
69
        exit(exit_status)
70
71
    # ------------------------------------------------------------------------------------------------------------------
72
    def _load_host(self, filename):
73
        """
74
        :param str filename:
75
        """
76
        reader = XmlReader()
77
        host = reader.parse_host(filename)
78
        host.store()
79
80
# ----------------------------------------------------------------------------------------------------------------------
81