[FR] Use firebase emulator for TenantManagementService
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 38/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- python
- Domínio
- authentication
Direção de pesquisa
Localize _TenantManagementService e seu TENANT_MGT_URL e, em seguida, rastreie como FIREBASE_AUTH_EMULATOR_HOST é tratado para comparação. Verifique o comportamento existente do gerenciamento de tenants em relação ao emulador do Firebase e confirme que a configuração proposta FIREBASE_TENANT_EMULATOR_HOST oferece suporte aos endpoints de tenants emulados sem alterar o comportamento em produção.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Is your feature request related to a problem? Please describe.
Currently only the Auth client supports running against the firebase emulator when setting the FIREBASE_AUTH_EMULATOR_HOST environment variable. However when wanting to list for example tenants with TenantManagementService you cannot do that and it forcibly uses TENANT_MGT_URL = 'https://identitytoolkit.googleapis.com/v2'. The emulator itself however emulates some of these endpoints (like /projects/{project_id}/tenants) so some of those are supported.
Describe the solution you'd like
Add support for setting FIREBASE_TENANT_EMULATOR_HOST and use that in _TenantManagementService
Describe alternatives you've considered
Doing direct HTTP REST API calls to the emulator or extending the management service manually like
class EmulatedTenantManagementService(tenant_mgt._TenantManagementService):
TENANT_MGT_URL = (
f"http://{firebase_auth_emulator_host}/identitytoolkit.googleapis.com/v2"
)
def __init__(self, app: firebase_admin.App):
super().__init__(app)
credential = _utils.EmulatorAdminCredentials()
version_header = f"Python/Admin/{firebase_admin.__version__}"
base_url = f"{self.TENANT_MGT_URL}/projects/{app.project_id}"
self.client = _http_client.JsonHttpClient(
credential=credential,
base_url=base_url,
headers={"X-Client-Version": version_header},
)
app = firebase_admin.get_app()
service = EmulatedTenantManagementService(app)
app._services[tenant_mgt._TENANT_MGT_ATTRIBUTE] = service
- Linguagem predominante
- Python
- Estrelas
- 1.2k
- Forks
- 359
- Merge médio
- 5d 6min
- PRs com merge (30d)
- 2
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de firebase/firebase-admin-python
-
api: remoteconfig
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
firebase/firebase-admin-python#957 · 1 comentário ·
-
api: database type: feature request
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
firebase/firebase-admin-python#978 · 1 comentário ·
-
[FR] Support VERIFY_AND_CHANGE_EMAIL in generate_email_action_link (parity with firebase-admin-node) Abertaapi: auth
firebase/firebase-admin-python#949 · 2 comentários · 1 reação · 1 responsável ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 43/100
firebase/firebase-admin-python#945 · 1 comentário · 1 reação ·
Todas as issues de firebase/firebase-admin-python
Issues semelhantes
-
货币战争手改优先级配置缺少列表元素类型校验(P3) Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
syfoud/Simulated_Scepter#172 ·
-
A cancelled tests run makes the coverage comment workflow fail and reports it as a red check on main Abertaarea: ci bug perceived difficulty: 3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Nitjsefnie-Harness-Commons/daedalus#921 · 1 comentário ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
EleutherAI/lm-evaluation-harness#4207 ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 92/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
ClickHouse/clickhouse-connect#1057 ·