Esempio n. 1
0
def main():
    locale.setlocale(locale.LC_ALL, os.environ.get("LANG", "C"))
    parser = OptionParser()

    parser.add_option("-d", "--db", dest="filename",
                      help="TODO database", metavar="FILE")

    parser.add_option("-c", "--create-only",
                      dest="createOnly", default=False, action="store_true",
                      help="Just create an empty database")

    parser.add_option("-v", "--version",
                      dest="version", action="store_true",
                      help="Display Yokadi current version")

    (options, args) = parser.parse_args()

    if options.version:
        print "Yokadi - %s" % utils.currentVersion()
        return

    if not options.filename:
        # Look if user define an env VAR for yokadi db
        options.filename=os.getenv("YOKADI_DB")
        if options.filename:
            print "Using env defined database (%s)" % options.filename
        else:
            options.filename=os.path.normcase(os.path.expanduser("~/.yokadi.db"))
            print "Using default database (%s)" % options.filename

    db.connectDatabase(options.filename)

    if options.createOnly:
        return

    db.setDefaultConfig() # Set default config parameters

    cmd = YokadiCmd()
    try:
        if len(args) > 0:
            cmd.onecmd(" ".join(args))
        else:
            cmd.cmdloop()
    except KeyboardInterrupt:
        print "\n\tBreak ! (the nice way to quit is 'quit' or 'EOF' (ctrl-d)"
        sys.exit(1)
    # Save history
    cmd.writeHistory()
Esempio n. 2
0
def main():
    #TODO: check that yokadid is not already running for this database ? Not very harmful...
    #TODO: change unix process name to "yokadid"

    # Make the event list global to allow communication with main event loop
    global event

    (options, args) = parseOptions()

    if options.kill:
        killYokadid(options.filename)
        sys.exit(0)

    signal(SIGTERM, sigTermHandler)
    signal(SIGHUP, sigHupHandler)


    if not options.foreground:
        doubleFork()

    if not options.filename:
        options.filename = os.path.join(os.path.expandvars("$HOME"), ".yokadi.db")
        print "Using default database (%s)" % options.filename

    connectDatabase(options.filename, createIfNeeded=False)

    # Basic tests :
    if not (Task.tableExists() and Config.tableExists()):
        print "Your database seems broken or not initialised properly. Start yokadi command line tool to do it"
        sys.exit(1)

    # Start ical http handler
    if options.icalserver:
        yokadiIcalServer = YokadiIcalServer(options.tcpPort, options.tcpListen)
        yokadiIcalServer.start()

    # Start the main event Loop
    try:
        while event[1] != "SIGTERM":
            eventLoop()
            event[0] = True
    except KeyboardInterrupt:
        print "\nExiting..."
Esempio n. 3
0
def main():
    apiDataFile = open("apidata.txt").read()
    jsonData = json.loads(apiDataFile)

    formatAPIDataToTextfile(jsonData)

    #create database table
    connection = connectDatabase('izettleDatabase.db')
    createDatabaseTable(connection)

    commonJSONFormat = getCommonJSONFormat(connection, jsonData)

    filename = "outputFile.txt"  #name should be a non-exisitng file or empty file
    appendToOutputFile(filename, commonJSONFormat)

    printDatabaseData(connection)
Esempio n. 4
0
        num += 1
    return num


def genealogyWriteToFile(dbcursor, projectName):
    print("genealogyWriteToFile")
    nameArr = projectName.split("/")
    childDirName = nameArr[0] + "O" + nameArr[1] + "O" + nameArr[2]
    baseDirName = "res/genealogyData/"
    dirName = baseDirName + childDirName
    if (os.path.exists(dirName) == False):
        os.mkdir(dirName)

        data, projectUrl = getGenealogyDataByName(dbcursor, projectName)
        num = transformGenealogyData(data, projectUrl, dirName)

        f = open(dirName + "/fileCount.txt", "w")
        f.write(str(num))
        f.close()
    else:
        print("dir already exitst")


if __name__ == '__main__':
    dbcursor = db.connectDatabase()
    projectName = "repositories/bndtools/bndtools"
    genealogyWriteToFile(dbcursor, projectName)
    #cloneRelease = getGenealogyDataByName(dbcursor, projectName)
    #print(cloneRelease)
Esempio n. 5
0
def main():
    if os.path.exists(DB_FILENAME):
        os.unlink(DB_FILENAME)
    db.connectDatabase(DB_FILENAME)

    unittest.main()