corrlib/backlogger/initialization.py
2024-06-19 12:55:42 +00:00

46 lines
1.2 KiB
Python

import sqlite3
import datalad.api as dl
import os
def _create_db(path):
"""
Create the database file and the table.
"""
conn = sqlite3.connect(path)
c = conn.cursor()
c.execute('''CREATE TABLE IF NOT EXISTS backlogs
(id INTEGER PRIMARY KEY,
name TEXT,
ensemble TEXT,
code TEXT,
path TEXT,
project TEXT,
parameters TEXT,
parameter_file TEXT,
created_at TEXT,
updated_at TEXT)''')
c.execute('''CREATE TABLE IF NOT EXISTS projects
(id TEXT PRIMARY KEY,
aliases TEXT,
code TEXT,
created_at TEXT,
updated_at TEXT)''')
conn.commit()
conn.close()
def create(path):
"""
Create folder of backlogs.
"""
dl.create(path)
_create_db(path + '/backlogger.db')
os.chmod(path + '/backlogger.db', 0o666)
os.makedirs(path + '/projects')
os.makedirs(path + '/projects/tmp')
os.makedirs(path + '/archive')
os.makedirs(path + '/import_scripts/template.py')
dl.save(path, dataset=path, message="Initialize backlogger directory.")