mirror of
https://github.com/netbox-community/netbox-docker.git
synced 2026-03-18 14:26:53 +00:00
Merge 76c103e6ae into c861c0bcc5
This commit is contained in:
commit
e8fd54bc5c
|
|
@ -13,6 +13,7 @@ services:
|
||||||
# environment:
|
# environment:
|
||||||
# SKIP_SUPERUSER: "false"
|
# SKIP_SUPERUSER: "false"
|
||||||
# SUPERUSER_API_TOKEN: ""
|
# SUPERUSER_API_TOKEN: ""
|
||||||
|
# SUPERUSER_API_KEY: ""
|
||||||
# SUPERUSER_EMAIL: ""
|
# SUPERUSER_EMAIL: ""
|
||||||
# SUPERUSER_NAME: ""
|
# SUPERUSER_NAME: ""
|
||||||
# SUPERUSER_PASSWORD: ""
|
# SUPERUSER_PASSWORD: ""
|
||||||
|
|
|
||||||
|
|
@ -19,11 +19,20 @@ def _read_secret(secret_name: str, default: str | None = None) -> str | None:
|
||||||
su_name = environ.get("SUPERUSER_NAME", "admin")
|
su_name = environ.get("SUPERUSER_NAME", "admin")
|
||||||
su_email = environ.get("SUPERUSER_EMAIL", "admin@example.com")
|
su_email = environ.get("SUPERUSER_EMAIL", "admin@example.com")
|
||||||
su_password = _read_secret("superuser_password", environ.get("SUPERUSER_PASSWORD", "admin"))
|
su_password = _read_secret("superuser_password", environ.get("SUPERUSER_PASSWORD", "admin"))
|
||||||
|
# Sets the superuser API Token, defaults to widely known default
|
||||||
|
if not environ.get("SUPERUSER_API_TOKEN"):
|
||||||
|
print("⚠️ Warning: Defaulting to the old default admin token in your database. This token is widely known; please remove it.")
|
||||||
su_api_token = _read_secret(
|
su_api_token = _read_secret(
|
||||||
"superuser_api_token",
|
"superuser_api_token",
|
||||||
environ.get("SUPERUSER_API_TOKEN", "0123456789abcdef0123456789abcdef01234567"),
|
environ.get("SUPERUSER_API_TOKEN", "0123456789abcdef0123456789abcdef01234567"),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Sets the superuser API key, defaults to a randomly generated key.
|
||||||
|
su_api_key = _read_secret(
|
||||||
|
"superuser_api_key",
|
||||||
|
environ.get("SUPERUSER_API_KEY"),
|
||||||
|
)
|
||||||
|
|
||||||
if not User.objects.filter(username=su_name):
|
if not User.objects.filter(username=su_name):
|
||||||
u = User.objects.create_superuser(su_name, su_email, su_password)
|
u = User.objects.create_superuser(su_name, su_email, su_password)
|
||||||
msg = ""
|
msg = ""
|
||||||
|
|
@ -31,6 +40,9 @@ if not User.objects.filter(username=su_name):
|
||||||
print("⚠️ No API token will be created as API_TOKEN_PEPPERS is not set")
|
print("⚠️ No API token will be created as API_TOKEN_PEPPERS is not set")
|
||||||
msg = f"💡 Superuser Username: {su_name}, E-Mail: {su_email}"
|
msg = f"💡 Superuser Username: {su_name}, E-Mail: {su_email}"
|
||||||
else:
|
else:
|
||||||
t = Token.objects.create(user=u, token=su_api_token, version=TokenVersionChoices.V2)
|
if su_api_key:
|
||||||
msg = f"💡 Superuser Username: {su_name}, E-Mail: {su_email}, API Token: {t} (use with '{t.get_auth_header_prefix()}<Your token>')"
|
t = Token.objects.create(user=u, token=su_api_token, version=TokenVersionChoices.V2, key=su_api_key)
|
||||||
|
else:
|
||||||
|
t = Token.objects.create(user=u, token=su_api_token, version=TokenVersionChoices.V2)
|
||||||
|
msg = f"💡 Superuser Username: {su_name}, E-Mail: {su_email}, API Token: {su_api_token} (use with '{t.get_auth_header_prefix()}<Your token>')"
|
||||||
print(msg)
|
print(msg)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue