Oracle Dialect Init

1 parent 557aaf37
......@@ -27,7 +27,7 @@ from .models.handlers import LogDBSession
from .models.meta import Base
from .models.users import init_model
from .models import Route
# from .models import TABLE_ARGS
# from deform import ZPTRendererFactory, Form
# from deform.widget import default_resource_registry
......@@ -302,10 +302,24 @@ def get_config(settings):
return config
# def get_schema_for_dialect(engine_dialect_name: str) -> str | None:
# """Returns 'public' for PostgreSQL or None for Oracle to match native defaults."""
# if "postgresql" in engine_dialect_name.lower():
# return "public"
# return None # Triggers default user-schema fallback on Oracle
def init_db(settings):
engine = engine_from_config(
settings, 'sqlalchemy.', client_encoding='utf8',
max_identifier_length=30) # , convert_unicode=True
# global TABLE_ARGS
# # Resolve the target schema namespace dynamically based on active engine
# TABLE_ARGS = dict(extend_existing=True,
# schema=get_schema_for_dialect(engine.dialect.name))
DBSession.configure(bind=engine)
LogDBSession.configure(bind=engine)
Base.metadata.bind = engine
......
import logging
from logging.config import fileConfig
from sqlalchemy import engine_from_config
......@@ -11,6 +12,19 @@ from opensipkd.models import Base
config = context.config
# Interpret the config file for Python logging.
# This line sets up loggers basically.
log = logging.getLogger(__name__)
url = config.get_main_option("sqlalchemy.url")
if url.find("oracledb") > -1:
log.error("OracleDB used: %s", url)
try:
import oracledb
lib_dir = config.get_main_option("lib_dir")
if lib_dir:
oracledb.init_oracle_client(lib_dir=lib_dir)
except Exception as e:
log.error(f"An error occurred: {str(e)}")
log.error("Oracle not initialize")
if config.config_file_name is not None:
fileConfig(config.config_file_name)
......
......@@ -15,12 +15,14 @@ depends_on = None
from alembic import op
import sqlalchemy as sa
schema=None
# schema = 'public'
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.create_table('groups',
sa.Column('member_count', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False, ),
sa.Column('group_name', sa.Unicode(length=128), nullable=False),
sa.Column('description', sa.Text(), nullable=True),
sa.PrimaryKeyConstraint('id', name=op.f('pk_groups')),
......@@ -30,17 +32,19 @@ def upgrade():
)
op.create_table('holiday',
sa.Column('tanggal', sa.DateTime(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_holiday'))
)
op.create_table('logs',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.Column('line_id', sa.String(length=32), nullable=False),
sa.Column('logger', sa.String(), nullable=True),
sa.Column('level', sa.String(), nullable=True),
sa.Column('trace', sa.String(), nullable=True),
sa.Column('msg', sa.String(), nullable=False),
sa.Column('created_at', sa.DateTime(timezone=True), server_default=sa.text('now()'), nullable=False),
sa.Column('logger', sa.Text(), nullable=True),
sa.Column('level', sa.Text(), nullable=True),
sa.Column('trace', sa.Text(), nullable=True),
sa.Column('msg', sa.Text(), nullable=False),
sa.Column('created_at', sa.DateTime(timezone=True), server_default=sa.func.now(), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_logs')),
sa.UniqueConstraint('line_id', name=op.f('uq_logs_line_id'))
)
......@@ -53,11 +57,13 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_parameters'))
)
op.create_table('departemen',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.Column('parent_id', sa.Integer(), nullable=True),
sa.Column('kategori', sa.String(length=32), nullable=True),
sa.Column('alamat', sa.String(length=255), nullable=True),
......@@ -70,19 +76,20 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.ForeignKeyConstraint(['parent_id'], ['public.departemen.id'], name=op.f('fk_departemen_parent_id_departemen')),
sa.ForeignKeyConstraint(['parent_id'], ['departemen.id'], name=op.f('fk_departemen_parent_id_departemen')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_departemen')),
schema='public'
# schema=schema
)
op.create_table('permissions',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.Column('perm_name', sa.String(length=64), nullable=False),
sa.Column('description', sa.String(length=64), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_permissions')),
sa.UniqueConstraint('description', name=op.f('uq_permissions_description')),
sa.UniqueConstraint('perm_name', name=op.f('uq_permissions_perm_name')),
schema='public'
# schema=schema
)
op.create_table('res_provinsi',
sa.Column('kategori', sa.String(length=32), nullable=True),
......@@ -94,12 +101,14 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_res_provinsi')),
schema='public'
# schema=schema
)
op.create_table('routes',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.Column('kode', sa.String(length=128), nullable=True),
sa.Column('path', sa.String(length=256), nullable=False),
sa.Column('status', sa.Integer(), server_default='1', nullable=False),
......@@ -132,7 +141,8 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_target_jenis'))
)
op.create_table('targets',
......@@ -157,17 +167,20 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_targets'))
)
op.create_table('users',
sa.Column('last_login_date', sa.DateTime(timezone=True), nullable=True),
sa.Column('registered_date', sa.DateTime(timezone=True), nullable=False),
sa.Column('security_code_date', sa.DateTime(timezone=True), server_default='2000-01-01 01:01+7', nullable=True),
sa.Column('security_code_date', sa.DateTime(timezone=True),
nullable=True), # server_default='2000-01-01 01:01+7',
sa.Column('api_key', sa.String(length=256), nullable=True),
sa.Column('partner_id', sa.Integer(), nullable=True),
sa.Column('company_id', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), autoincrement=True, nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True), primary_key=True,
autoincrement=True, nullable=False),
sa.Column('user_name', sa.Unicode(length=128), nullable=True),
sa.Column('user_password', sa.Unicode(length=256), nullable=True),
sa.Column('email', sa.Unicode(length=100), nullable=False),
......@@ -212,13 +225,15 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['provinsi_id'], ['public.res_provinsi.id'], name=op.f('fk_res_dati2_provinsi_id_res_provinsi')),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['provinsi_id'], ['res_provinsi.id'], name=op.f('fk_res_dati2_provinsi_id_res_provinsi')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_res_dati2')),
schema='public'
# schema=schema
)
op.create_table('resources',
sa.Column('resource_id', sa.Integer(), autoincrement=True, nullable=False),
sa.Column('resource_id', sa.Integer(), sa.Identity(always=True),
primary_key=True, autoincrement=True, nullable=False),
sa.Column('parent_id', sa.Integer(), nullable=True),
sa.Column('ordering', sa.Integer(), nullable=False),
sa.Column('resource_name', sa.Unicode(length=100), nullable=False),
......@@ -246,7 +261,8 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['user_id'], ['users.id'], name=op.f('fk_user_device_user_id_users')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_user_device'))
)
......@@ -287,10 +303,11 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['dati2_id'], ['public.res_dati2.id'], name=op.f('fk_res_kecamatan_dati2_id_res_dati2')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_res_kecamatan')),
schema='public'
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['dati2_id'], ['res_dati2.id'], name=op.f('fk_res_kecamatan_dati2_id_res_dati2')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_res_kecamatan')),
# schema=schema
)
op.create_table('users_resources_permissions',
sa.Column('user_id', sa.Integer(), nullable=False),
......@@ -312,10 +329,11 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['kecamatan_id'], ['public.res_kecamatan.id'], name=op.f('fk_res_desa_kecamatan_id_res_kecamatan')),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['kecamatan_id'], ['res_kecamatan.id'], name=op.f('fk_res_desa_kecamatan_id_res_kecamatan')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_res_desa')),
schema='public'
# schema=schema
)
op.create_table('partner',
sa.Column('kelurahan', sa.String(length=128), nullable=True),
......@@ -355,18 +373,20 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['dati2_id'], ['public.res_dati2.id'], name=op.f('fk_partner_dati2_id_res_dati2')),
sa.ForeignKeyConstraint(['desa_id'], ['public.res_desa.id'], name=op.f('fk_partner_desa_id_res_desa')),
sa.ForeignKeyConstraint(['kecamatan_id'], ['public.res_kecamatan.id'], name=op.f('fk_partner_kecamatan_id_res_kecamatan')),
sa.ForeignKeyConstraint(['provinsi_id'], ['public.res_provinsi.id'], name=op.f('fk_partner_provinsi_id_res_provinsi')),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['dati2_id'], ['res_dati2.id'], name=op.f('fk_partner_dati2_id_res_dati2')),
sa.ForeignKeyConstraint(['desa_id'], ['res_desa.id'], name=op.f('fk_partner_desa_id_res_desa')),
sa.ForeignKeyConstraint(['kecamatan_id'], ['res_kecamatan.id'], name=op.f('fk_partner_kecamatan_id_res_kecamatan')),
sa.ForeignKeyConstraint(['provinsi_id'], ['res_provinsi.id'], name=op.f('fk_partner_provinsi_id_res_provinsi')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_partner'))
)
op.create_table('user_area',
sa.Column('user_id', sa.Integer(), nullable=True),
sa.Column('desa_id', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['desa_id'], ['public.res_desa.id'], name=op.f('fk_user_area_desa_id_res_desa')),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['desa_id'], ['res_desa.id'], name=op.f('fk_user_area_desa_id_res_desa')),
sa.ForeignKeyConstraint(['user_id'], ['users.id'], name=op.f('fk_user_area_user_id_users')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_user_area'))
)
......@@ -379,7 +399,8 @@ def upgrade():
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('id', sa.Integer(), sa.Identity(always=True),
primary_key=True, nullable=False),
sa.ForeignKeyConstraint(['partner_id'], ['partner.id'], name=op.f('fk_partner_files_partner_id_partner')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_partner_files'))
)
......@@ -392,9 +413,9 @@ def downgrade():
op.drop_table('partner_files')
op.drop_table('user_area')
op.drop_table('partner')
op.drop_table('res_desa', schema='public')
op.drop_table('res_desa') #, schema=schema
op.drop_table('users_resources_permissions')
op.drop_table('res_kecamatan', schema='public')
op.drop_table('res_kecamatan'), # schema = schema
op.drop_table('groups_resources_permissions')
op.drop_table('users_permissions')
op.drop_table('users_groups')
......@@ -402,16 +423,16 @@ def downgrade():
op.drop_index(op.f('ix_resources_owner_user_id'), table_name='resources')
op.drop_index(op.f('ix_resources_owner_group_id'), table_name='resources')
op.drop_table('resources')
op.drop_table('res_dati2', schema='public')
op.drop_table('res_dati2')
op.drop_table('groups_permissions')
op.drop_table('external_identities')
op.drop_table('users')
op.drop_table('targets')
op.drop_table('target_jenis')
op.drop_table('routes')
op.drop_table('res_provinsi', schema='public')
op.drop_table('permissions', schema='public')
op.drop_table('departemen', schema='public')
op.drop_table('res_provinsi')
op.drop_table('permissions')
op.drop_table('departemen')
op.drop_table('parameters')
op.drop_table('logs')
op.drop_table('holiday')
......
......@@ -31,7 +31,7 @@ def upgrade():
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_eselon')),
schema='public'
# schema='public'
)
op.create_table('pangkat',
sa.Column('pangkat', sa.String(length=32), nullable=True),
......@@ -45,7 +45,7 @@ def upgrade():
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_pangkat')),
schema='public'
# schema='public'
)
op.create_table('jabatan',
sa.Column('jenis', sa.SmallInteger(), nullable=True),
......@@ -62,10 +62,10 @@ def upgrade():
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['eselon_id'], ['public.eselon.id'], name=op.f(
sa.ForeignKeyConstraint(['eselon_id'], ['eselon.id'], name=op.f(
'fk_jabatan_eselon_id_eselon')),
sa.PrimaryKeyConstraint('id', name=op.f('pk_jabatan')),
schema='public'
# schema='public'
)
op.create_table('partner_departemen',
sa.Column('partner_id', sa.Integer(), nullable=True),
......@@ -74,9 +74,9 @@ def upgrade():
sa.Column('mulai', sa.DateTime(), nullable=True),
sa.Column('selesai', sa.DateTime(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(['departemen_id'], ['public.departemen.id'], name=op.f(
sa.ForeignKeyConstraint(['departemen_id'], ['departemen.id'], name=op.f(
'fk_partner_departemen_departemen_id_departemen')),
sa.ForeignKeyConstraint(['jabatan_id'], ['public.jabatan.id'], name=op.f(
sa.ForeignKeyConstraint(['jabatan_id'], ['jabatan.id'], name=op.f(
'fk_partner_departemen_jabatan_id_jabatan')),
sa.ForeignKeyConstraint(['partner_id'], ['partner.id'], name=op.f(
'fk_partner_departemen_partner_id_partner')),
......@@ -84,15 +84,15 @@ def upgrade():
'id', name=op.f('pk_partner_departemen')),
sa.UniqueConstraint('partner_id', 'departemen_id',
'jabatan_id', 'mulai', name='partner_dept_uq'),
schema='public'
# schema='public'
)
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_table('partner_departemen', schema='public')
op.drop_table('jabatan', schema='public')
op.drop_table('pangkat', schema='public')
op.drop_table('eselon', schema='public')
op.drop_table('partner_departemen',)# schema='public')
op.drop_table('jabatan', )#schema='public')
op.drop_table('pangkat', ) # schema='public')
op.drop_table('eselon', ) # schema='public')
# ### end Alembic commands ###
......@@ -32,12 +32,12 @@ def upgrade():
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_text_printers')),
schema='public'
# schema='public'
)
# ### end Alembic commands ###
def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.drop_table('text_printers', schema='public')
op.drop_table('text_printers', ) #schema='public')
# ### end Alembic commands ###
......@@ -17,76 +17,78 @@ import sqlalchemy as sa
def upgrade():
pass
# ### commands auto generated by Alembic - please adjust! ###
op.create_table('test_model',
sa.Column('description', sa.String(length=256), nullable=True),
sa.Column('nama', sa.String(length=128), nullable=False),
sa.Column('kode', sa.String(length=32), nullable=False),
sa.Column('status', sa.SmallInteger(), nullable=False),
sa.Column('created', sa.DateTime(), nullable=True),
sa.Column('updated', sa.DateTime(), nullable=True),
sa.Column('create_uid', sa.Integer(), nullable=True),
sa.Column('update_uid', sa.Integer(), nullable=True),
sa.Column('id', sa.Integer(), nullable=False),
sa.PrimaryKeyConstraint('id', name=op.f('pk_test_model')),
schema='public'
)
op.drop_constraint(op.f('fk_departemen_parent_id_departemen'), 'departemen', type_='foreignkey')
op.create_foreign_key(op.f('fk_departemen_parent_id_departemen'), 'departemen', 'departemen', ['parent_id'], ['id'], source_schema='public', referent_schema='public')
op.drop_constraint(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', type_='foreignkey')
op.create_foreign_key(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', 'eselon', ['eselon_id'], ['id'], source_schema='public', referent_schema='public')
op.drop_constraint(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_desa_id_res_desa'), 'partner', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_dati2_id_res_dati2'), 'partner', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', type_='foreignkey')
op.create_foreign_key(op.f('fk_partner_desa_id_res_desa'), 'partner', 'res_desa', ['desa_id'], ['id'], referent_schema='public')
op.create_foreign_key(op.f('fk_partner_dati2_id_res_dati2'), 'partner', 'res_dati2', ['dati2_id'], ['id'], referent_schema='public')
op.create_foreign_key(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', 'res_kecamatan', ['kecamatan_id'], ['id'], referent_schema='public')
op.create_foreign_key(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', 'res_provinsi', ['provinsi_id'], ['id'], referent_schema='public')
op.drop_constraint(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', type_='foreignkey')
op.create_foreign_key(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', 'partner', ['partner_id'], ['id'], source_schema='public')
op.create_foreign_key(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', 'jabatan', ['jabatan_id'], ['id'], source_schema='public', referent_schema='public')
op.create_foreign_key(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', 'departemen', ['departemen_id'], ['id'], source_schema='public', referent_schema='public')
op.drop_constraint(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', type_='foreignkey')
op.create_foreign_key(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', 'res_provinsi', ['provinsi_id'], ['id'], source_schema='public', referent_schema='public')
op.drop_constraint(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', type_='foreignkey')
op.create_foreign_key(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', 'res_kecamatan', ['kecamatan_id'], ['id'], source_schema='public', referent_schema='public')
op.drop_constraint(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', type_='foreignkey')
op.create_foreign_key(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', 'res_dati2', ['dati2_id'], ['id'], source_schema='public', referent_schema='public')
op.drop_constraint(op.f('fk_user_area_desa_id_res_desa'), 'user_area', type_='foreignkey')
op.create_foreign_key(op.f('fk_user_area_desa_id_res_desa'), 'user_area', 'res_desa', ['desa_id'], ['id'], referent_schema='public')
# ### end Alembic commands ###
# op.create_table('test_model',
# sa.Column('description', sa.String(length=256), nullable=True),
# sa.Column('nama', sa.String(length=128), nullable=False),
# sa.Column('kode', sa.String(length=32), nullable=False),
# sa.Column('status', sa.SmallInteger(), nullable=False),
# sa.Column('created', sa.DateTime(), nullable=True),
# sa.Column('updated', sa.DateTime(), nullable=True),
# sa.Column('create_uid', sa.Integer(), nullable=True),
# sa.Column('update_uid', sa.Integer(), nullable=True),
# sa.Column('id', sa.Integer(), nullable=False),
# sa.PrimaryKeyConstraint('id', name=op.f('pk_test_model')),
# schema='public'
# )
# op.drop_constraint(op.f('fk_departemen_parent_id_departemen'), 'departemen', type_='foreignkey')
# op.create_foreign_key(op.f('fk_departemen_parent_id_departemen'), 'departemen', 'departemen', ['parent_id'], ['id'], source_schema='public', referent_schema='public')
# op.drop_constraint(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', type_='foreignkey')
# op.create_foreign_key(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', 'eselon', ['eselon_id'], ['id'], source_schema='public', referent_schema='public')
# op.drop_constraint(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_desa_id_res_desa'), 'partner', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_dati2_id_res_dati2'), 'partner', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', type_='foreignkey')
# op.create_foreign_key(op.f('fk_partner_desa_id_res_desa'), 'partner', 'res_desa', ['desa_id'], ['id'], referent_schema='public')
# op.create_foreign_key(op.f('fk_partner_dati2_id_res_dati2'), 'partner', 'res_dati2', ['dati2_id'], ['id'], referent_schema='public')
# op.create_foreign_key(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', 'res_kecamatan', ['kecamatan_id'], ['id'], referent_schema='public')
# op.create_foreign_key(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', 'res_provinsi', ['provinsi_id'], ['id'], referent_schema='public')
# op.drop_constraint(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', type_='foreignkey')
# op.create_foreign_key(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', 'partner', ['partner_id'], ['id'], source_schema='public')
# op.create_foreign_key(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', 'jabatan', ['jabatan_id'], ['id'], source_schema='public', referent_schema='public')
# op.create_foreign_key(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', 'departemen', ['departemen_id'], ['id'], source_schema='public', referent_schema='public')
# op.drop_constraint(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', type_='foreignkey')
# op.create_foreign_key(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', 'res_provinsi', ['provinsi_id'], ['id'], source_schema='public', referent_schema='public')
# op.drop_constraint(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', type_='foreignkey')
# op.create_foreign_key(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', 'res_kecamatan', ['kecamatan_id'], ['id'], source_schema='public', referent_schema='public')
# op.drop_constraint(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', type_='foreignkey')
# op.create_foreign_key(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', 'res_dati2', ['dati2_id'], ['id'], source_schema='public', referent_schema='public')
# op.drop_constraint(op.f('fk_user_area_desa_id_res_desa'), 'user_area', type_='foreignkey')
# op.create_foreign_key(op.f('fk_user_area_desa_id_res_desa'), 'user_area', 'res_desa', ['desa_id'], ['id'], referent_schema='public')
# # ### end Alembic commands ###
def downgrade():
pass
# ### commands auto generated by Alembic - please adjust! ###
op.drop_constraint(op.f('fk_user_area_desa_id_res_desa'), 'user_area', type_='foreignkey')
op.create_foreign_key(op.f('fk_user_area_desa_id_res_desa'), 'user_area', 'res_desa', ['desa_id'], ['id'])
op.drop_constraint(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', schema='public', type_='foreignkey')
op.create_foreign_key(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', 'res_dati2', ['dati2_id'], ['id'])
op.drop_constraint(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', schema='public', type_='foreignkey')
op.create_foreign_key(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', 'res_kecamatan', ['kecamatan_id'], ['id'])
op.drop_constraint(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', schema='public', type_='foreignkey')
op.create_foreign_key(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', 'res_provinsi', ['provinsi_id'], ['id'])
op.drop_constraint(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', schema='public', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', schema='public', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', schema='public', type_='foreignkey')
op.create_foreign_key(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', 'departemen', ['departemen_id'], ['id'])
op.create_foreign_key(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', 'jabatan', ['jabatan_id'], ['id'])
op.create_foreign_key(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', 'partner', ['partner_id'], ['id'])
op.drop_constraint(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_dati2_id_res_dati2'), 'partner', type_='foreignkey')
op.drop_constraint(op.f('fk_partner_desa_id_res_desa'), 'partner', type_='foreignkey')
op.create_foreign_key(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', 'res_kecamatan', ['kecamatan_id'], ['id'])
op.create_foreign_key(op.f('fk_partner_dati2_id_res_dati2'), 'partner', 'res_dati2', ['dati2_id'], ['id'])
op.create_foreign_key(op.f('fk_partner_desa_id_res_desa'), 'partner', 'res_desa', ['desa_id'], ['id'])
op.create_foreign_key(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', 'res_provinsi', ['provinsi_id'], ['id'])
op.drop_constraint(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', schema='public', type_='foreignkey')
op.create_foreign_key(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', 'eselon', ['eselon_id'], ['id'])
op.drop_constraint(op.f('fk_departemen_parent_id_departemen'), 'departemen', schema='public', type_='foreignkey')
op.create_foreign_key(op.f('fk_departemen_parent_id_departemen'), 'departemen', 'departemen', ['parent_id'], ['id'])
op.drop_table('test_model', schema='public')
# op.drop_constraint(op.f('fk_user_area_desa_id_res_desa'), 'user_area', type_='foreignkey')
# op.create_foreign_key(op.f('fk_user_area_desa_id_res_desa'), 'user_area', 'res_desa', ['desa_id'], ['id'])
# op.drop_constraint(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', schema='public', type_='foreignkey')
# op.create_foreign_key(op.f('fk_res_kecamatan_dati2_id_res_dati2'), 'res_kecamatan', 'res_dati2', ['dati2_id'], ['id'])
# op.drop_constraint(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', schema='public', type_='foreignkey')
# op.create_foreign_key(op.f('fk_res_desa_kecamatan_id_res_kecamatan'), 'res_desa', 'res_kecamatan', ['kecamatan_id'], ['id'])
# op.drop_constraint(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', schema='public', type_='foreignkey')
# op.create_foreign_key(op.f('fk_res_dati2_provinsi_id_res_provinsi'), 'res_dati2', 'res_provinsi', ['provinsi_id'], ['id'])
# op.drop_constraint(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', schema='public', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', schema='public', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', schema='public', type_='foreignkey')
# op.create_foreign_key(op.f('fk_partner_departemen_departemen_id_departemen'), 'partner_departemen', 'departemen', ['departemen_id'], ['id'])
# op.create_foreign_key(op.f('fk_partner_departemen_jabatan_id_jabatan'), 'partner_departemen', 'jabatan', ['jabatan_id'], ['id'])
# op.create_foreign_key(op.f('fk_partner_departemen_partner_id_partner'), 'partner_departemen', 'partner', ['partner_id'], ['id'])
# op.drop_constraint(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_dati2_id_res_dati2'), 'partner', type_='foreignkey')
# op.drop_constraint(op.f('fk_partner_desa_id_res_desa'), 'partner', type_='foreignkey')
# op.create_foreign_key(op.f('fk_partner_kecamatan_id_res_kecamatan'), 'partner', 'res_kecamatan', ['kecamatan_id'], ['id'])
# op.create_foreign_key(op.f('fk_partner_dati2_id_res_dati2'), 'partner', 'res_dati2', ['dati2_id'], ['id'])
# op.create_foreign_key(op.f('fk_partner_desa_id_res_desa'), 'partner', 'res_desa', ['desa_id'], ['id'])
# op.create_foreign_key(op.f('fk_partner_provinsi_id_res_provinsi'), 'partner', 'res_provinsi', ['provinsi_id'], ['id'])
# op.drop_constraint(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', schema='public', type_='foreignkey')
# op.create_foreign_key(op.f('fk_jabatan_eselon_id_eselon'), 'jabatan', 'eselon', ['eselon_id'], ['id'])
# op.drop_constraint(op.f('fk_departemen_parent_id_departemen'), 'departemen', schema='public', type_='foreignkey')
# op.create_foreign_key(op.f('fk_departemen_parent_id_departemen'), 'departemen', 'departemen', ['parent_id'], ['id'])
# op.drop_table('test_model', schema='public')
# ### end Alembic commands ###
......@@ -23,7 +23,8 @@ DBSession = scoped_session(session_factory)
register(DBSession)
ziggurat_foundations.models.DBSession = DBSession
TABLE_ARGS = dict(extend_existing=True, schema="public")
TABLE_ARGS = dict(extend_existing=True,)
#schema="public")
def flush(row, db_session=DBSession):
......
......@@ -5,9 +5,10 @@ from ..models import (NamaModel, TABLE_ARGS)
class _Departemen(NamaModel):
__table_args__ = (TABLE_ARGS,)
# __table_args__ = (TABLE_ARGS,)
id = Column(Integer, primary_key=True)
parent_id = Column(Integer, ForeignKey('public.departemen.id'))
# parent_id = Column(Integer, ForeignKey('public.departemen.id'))
parent_id = Column(Integer, ForeignKey('departemen.id'))
kategori = Column(String(32))
alamat = Column(String(255))
singkat = Column(String(32))
......
from sqlalchemy import (Column, Integer, String, DateTime, func, )
from sqlalchemy import (Column, Integer, String, DateTime, func, Text)
from sqlalchemy.orm import (scoped_session, sessionmaker, )
from ..models.base import CommonModel
from ..models.meta import Base
......@@ -11,9 +11,9 @@ class Log(Base, CommonModel):
__tablename__ = 'logs'
id = Column(Integer, primary_key=True) # auto incrementing
line_id = Column(String(32), nullable=False, unique=True)
logger = Column(String) # the name of the logger. (e.g. myapp.views)
level = Column(String) # info, debug, or error?
trace = Column(String) # the full traceback printout
logger = Column(Text) # the name of the logger. (e.g. myapp.views)
level = Column(Text) # info, debug, or error?
trace = Column(Text) # the full traceback printout
msg = Column(String, nullable=False)
created_at = Column(
DateTime(timezone=True),
......
user_id/users.user_name,group_id/groups.group_name
admin,Superuser
\ No newline at end of file
......@@ -115,6 +115,7 @@ def restore_csv(table, filename, get_file_func=get_file, db_session=DBSession):
eng = db_session.get_bind()
q = db_session.query(table)
if q.first():
log.error("Restore discarded")
return
with get_file_func(filename) as f:
reader = csv.DictReader(f)
......@@ -135,7 +136,7 @@ def restore_csv(table, filename, get_file_func=get_file, db_session=DBSession):
raise e
fname_orig = t[0]
schema = "public"
schema = None # "public"
if t[1:]:
t_array = t[1].split('.')
if len(t_array) == 2:
......@@ -218,7 +219,7 @@ def append_csv(table, filename, keys, get_file_func=get_file,
# print(dir(table.__table__))
# print("____")
schema = hasattr(
table.__table__, "schema") and table.__table__.schema or "public"
table.__table__, "schema") and table.__table__.schema or None # "public"
columns_table = insp.get_columns(table.__tablename__, schema)
fields = {}
for c in columns_table:
......@@ -245,7 +246,7 @@ def append_csv(table, filename, keys, get_file_func=get_file,
raise e
fname_orig = t[0]
schema = "public"
schema = None # "public"
if t[1:]:
t_array = t[1].split('.')
if len(t_array) == 2:
......@@ -255,7 +256,7 @@ def append_csv(table, filename, keys, get_file_func=get_file,
schema = t_array[0]
foreign_table = t_array[1]
foreign_field = t_array[2]
log.debug("%s.%s", schema, foreign_table)
foreign_table = Table(foreign_table, base.metadata,
# autoload=True, # merubah v1.4 ke v.2
autoload_with=eng,
......@@ -286,8 +287,8 @@ def append_csv(table, filename, keys, get_file_func=get_file,
with eng.connect() as conn:
q = conn.execute(sql)
row = q.fetchone()
if not row:
raise Exception(f"Foreign key value '{value}' not found in table '{foreign_table.name}' for field '{fname}'")
# if not row:
# raise Exception(f"Foreign key value '{value}' not found in table '{foreign_table.name}' for field '{fname}'")
value = row and row.id or None
q.close()
# connection.close()
......@@ -377,8 +378,9 @@ def reset_sequence_(cls, seq):
def reset_sequences():
reset_sequence_(User, 'users_id_seq')
reset_sequence_(Group, 'groups_id_seq')
pass
# reset_sequence_(User, 'users_id_seq')
# reset_sequence_(Group, 'groups_id_seq')
def alembic_run(ini_file, name=None):
......@@ -430,8 +432,9 @@ def main(argv=sys.argv):
q = DBSession.query(User).filter_by(id=1)
user = q.first()
init_model()
password = ask_password(user.user_name)
UserService.set_password(user, password)
if user:
password = ask_password(user.user_name)
UserService.set_password(user, password)
append_csv(Group, 'groups.csv', ['group_name'])
restore_csv(UserGroup, 'users_groups.csv')
append_csv(Permission, 'permissions.csv', ['perm_name'])
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!