Moved database uri to env var

Was is config file.
This commit is contained in:
Stan James 2018-01-30 16:23:53 -07:00
parent 9153ba75b6
commit b22703e8ad
2 changed files with 9 additions and 15 deletions

10
bot.py
View File

@ -12,17 +12,10 @@ This bot logs all messages sent in a Telegram Group to a database.
from __future__ import print_function from __future__ import print_function
import sys import sys
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters from telegram.ext import Updater, CommandHandler, MessageHandler, Filters
import logging
import os import os
from model import User, Message, session from model import User, Message, session
from time import strftime from time import strftime
# Enable logging
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
level=logging.INFO)
logger = logging.getLogger(__name__)
# Define a few command handlers. These usually take the two arguments bot and # Define a few command handlers. These usually take the two arguments bot and
# update. Error handlers also receive the raised TelegramError object in error. # update. Error handlers also receive the raised TelegramError object in error.
@ -95,7 +88,8 @@ def add_user(user_id, first_name, last_name, username):
def error(bot, update, error): def error(bot, update, error):
"""Log Errors caused by Updates.""" """Log Errors caused by Updates."""
logger.warning('Update "%s" caused error "%s"', update, error) print("Update '{}' caused error '{}'".format(update, error), file=sys.stderr)
def main(): def main():

View File

@ -1,10 +1,10 @@
from sqlalchemy import Column, DateTime, String, Integer, ForeignKey, func from sqlalchemy import Column, DateTime, String, Integer, ForeignKey, func
from sqlalchemy.orm import relationship, backref from sqlalchemy.orm import relationship, backref
from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.ext.declarative import declarative_base
import ConfigParser import os
config = ConfigParser.ConfigParser()
config.read("config.cnf") postgres_url = os.environ["TELEGRAM_BOT_POSTGRES_URL"]
postgres_url = config.get('postgres', 'postgres_url')
''' '''
This model has been referenced from: https://www.pythoncentral.io/sqlalchemy-orm-examples/ This model has been referenced from: https://www.pythoncentral.io/sqlalchemy-orm-examples/
@ -14,7 +14,7 @@ Base = declarative_base()
class User(Base): class User(Base):
__tablename__ = 'users' __tablename__ = 'telegram_users'
id = Column(Integer, primary_key=True) id = Column(Integer, primary_key=True)
first_name = Column(String) first_name = Column(String)
last_name = Column(String) last_name = Column(String)
@ -22,9 +22,9 @@ class User(Base):
class Message(Base): class Message(Base):
__tablename__ = 'messages' __tablename__ = 'telegram_messages'
id = Column(Integer, primary_key=True) id = Column(Integer, primary_key=True)
user_id = Column(Integer, ForeignKey('users.id'), nullable=False) user_id = Column(Integer, ForeignKey('telegram_users.id'), nullable=False)
message = Column(String) message = Column(String)
# Use default=func.now() to set the default hiring time # Use default=func.now() to set the default hiring time
# of an Employee to be the current time when an # of an Employee to be the current time when an