in pontoon/base/management/commands/update_auth_providers.py [0:0]
def handle(self, *args, **options):
# Check if FXA_* settings are configured
if settings.FXA_CLIENT_ID is not None and settings.FXA_SECRET_KEY is not None:
fxa_data = dict(
name="FxA",
provider=FXA_PROVIDER_ID,
client_id=settings.FXA_CLIENT_ID,
secret=settings.FXA_SECRET_KEY,
)
self.update_provider(fxa_data)
# Check if GITHUB_* settings are configured
if (
settings.GITHUB_CLIENT_ID is not None
and settings.GITHUB_SECRET_KEY is not None
):
github_data = dict(
name="GitHub",
provider=GITHUB_PROVIDER_ID,
client_id=settings.GITHUB_CLIENT_ID,
secret=settings.GITHUB_SECRET_KEY,
)
self.update_provider(github_data)
# Check if GITLAB_* settings are configured
if (
settings.GITLAB_CLIENT_ID is not None
and settings.GITLAB_SECRET_KEY is not None
):
gitlab_data = dict(
name="GitLab",
provider=GITLAB_PROVIDER_ID,
client_id=settings.GITLAB_CLIENT_ID,
secret=settings.GITLAB_SECRET_KEY,
)
self.update_provider(gitlab_data)
# Check if GOOGLE_* settings are configured
if (
settings.GOOGLE_CLIENT_ID is not None
and settings.GOOGLE_SECRET_KEY is not None
):
google_data = dict(
name="Google",
provider=GOOGLE_PROVIDER_ID,
client_id=settings.GOOGLE_CLIENT_ID,
secret=settings.GOOGLE_SECRET_KEY,
)
self.update_provider(google_data)
# Check if KEYCLOAK_* settings are configured
if (
settings.KEYCLOAK_CLIENT_ID is not None
and settings.KEYCLOAK_CLIENT_SECRET is not None
):
keycloak_data = dict(
name="Keycloak",
provider=KEYCLOAK_PROVIDER_ID,
client_id=settings.KEYCLOAK_CLIENT_ID,
secret=settings.KEYCLOAK_CLIENT_SECRET,
)
self.update_provider(keycloak_data)