Skip to content

Commit

Permalink
fix: dind installation docking resource problem
Browse files Browse the repository at this point in the history
  • Loading branch information
paterleng committed Jun 26, 2024
1 parent 7f38985 commit eb9ab88
Show file tree
Hide file tree
Showing 2 changed files with 132 additions and 8 deletions.
110 changes: 110 additions & 0 deletions default_region_sqlite.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
# -*- coding: UTF-8 -*-
import datetime
import os
import uuid

import sqlite3


def create_db_client():
db = sqlite3.connect('/app/data/db.sqlite3')
return db


def make_uuid(key=None):
random_uuid = str(uuid.uuid4()).replace('-', '')
return random_uuid


def get_region_id():
return make_uuid()


def get_url():
return os.environ.get('REGION_URL')


def get_wsurl():
return os.environ.get('REGION_WS_URL')


def get_http_domain():
return os.environ.get('REGION_HTTP_DOMAIN')


def get_tcp_domain():
return os.environ.get('REGION_TCP_DOMAIN')


# 获取文件的内容
def get_contends(path):
with open(path) as file_object:
contends = file_object.read()
return contends


def get_ssl_ca_cert():
content = get_contends("/app/region/ssl/ca.pem")
print(content)
return content


def get_cert_file():
content = get_contends("/app/region/ssl/client.pem")
print(content)
return content


def get_key_file():
content = get_contends("/app/region/ssl/client.key.pem")
print(content)
return content


def get_current_time():
create_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
print(create_time)
return create_time


def get_sql():
sql = 'INSERT INTO region_info (`region_id`,`region_name`,`region_alias`,`url`,`status`,`desc`,`wsurl`, \
`httpdomain`,`tcpdomain`,`scope`,`ssl_ca_cert`,`cert_file`,`key_file`,`create_time`) VALUES ("{0}", "rainbond", \
"默认集群", "{1}", "1", "当前集群是默认安装添加的集群", "{2}", "{3}", "{4}", "private", \
"{5}", "{6}", "{7}", "{8}" )'.format(get_region_id(), get_url(), get_wsurl(), get_http_domain(), get_tcp_domain(),
get_ssl_ca_cert(), get_cert_file(), get_key_file(), get_current_time())
print(sql)
return sql


def insert_default_region_info():
sql = get_sql()
db = create_db_client()
cursor = db.cursor()
cursor.execute(sql)
cursor.close()
db.commit()
db.close()


def get_region_info():
print("get region info")
db = create_db_client()
cursor = db.cursor()
cursor.execute("select * from region_info")
data = cursor.fetchone()
cursor.close()
db.commit()
db.close()
return data


if __name__ == '__main__':
print("Initialize default region info ")
region_info = get_region_info()
if region_info:
print("default region info already exists, skip it")
else:
print("default region info do not exists, init it")
insert_default_region_info()
print("init default region info success")
30 changes: 22 additions & 8 deletions entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -48,22 +48,36 @@ function init_database() {
return 0
}

if [ "$1" = "debug" -o "$1" = "bash" ]; then
exec /bin/bash
elif [ "$1" = "version" ]; then
echo "${RELEASE_DESC}"
elif [ "$1" = "init" ]; then
if ! (init_database); then
use_sqlite() {
# shellcheck disable=SC1035
if !(python default_region_sqlite.py 2> /dev/null); then
echo -e "${RED}failed to default_region${NC}"
exit 1
fi
}

use_mysql() {
if !(python default_region.py 2> /dev/null); then
echo -e "${RED}failed to default_region${NC}"
exit 1
echo -e "${RED}failed to default_region${NC}"
exit 1
fi
}

if [ "$1" = "debug" -o "$1" = "bash" ]; then
exec /bin/bash
elif [ "$1" = "version" ]; then
echo "${RELEASE_DESC}"
else
if ! (init_database); then
exit 1
fi
if [ "${INSTALL_TYPE}" != "allinone" ]; then
if [ "$DB_TYPE" != "mysql" ]; then
use_sqlite
else
use_mysql
fi
fi
# python upgrade.py
exec gunicorn goodrain_web.wsgi -b 0.0.0.0:${PORT:-7070} --max-requests=5000 -k gevent --reload --workers=2 --timeout=75 --log-file - --access-logfile - --error-logfile -
fi

0 comments on commit eb9ab88

Please sign in to comment.