Adding init_plugins (example plugin soon)

Also fixing an issue in the docker functions
This commit is contained in:
Kevin Chung
2016-11-05 02:28:43 -04:00
parent 52ad396db4
commit 70e7599439
3 changed files with 20 additions and 0 deletions

View File

@@ -68,4 +68,8 @@ def create_app(config='CTFd.config'):
app.register_blueprint(auth)
app.register_blueprint(admin)
from CTFd.plugins import init_plugins
init_plugins(app)
return app

15
CTFd/plugins/__init__.py Normal file
View File

@@ -0,0 +1,15 @@
from CTFd.models import db, WrongKeys, Pages, Config, Tracking, Teams, Containers, ip2long, long2ip
from flask import current_app as app, g, request, redirect, url_for, session, render_template, abort
import os
import importlib
import glob
def init_plugins(app):
modules = glob.glob(os.path.dirname(__file__) + "/*")
for module in modules:
if os.path.isdir(module):
module = '.' + os.path.basename(module)
module = importlib.import_module(module, package='CTFd.plugins')
module.load(app)
print " * Loaded module,", module

View File

@@ -500,6 +500,7 @@ def run_image(name):
ports_asked = []
cmd = ['docker', 'run', '-d']
ports_used = []
for port in ports_asked:
if is_port_free(port):
cmd.append('-p')