auth
無料Authentication and authorization patterns for Rossoctl services
日本語の概要は準備中です。原文の説明を表示しています。
Debug failing Playwright demo steps - selectors, auth, timing, and alignment issues
日本語の概要は準備中です。原文の説明を表示しています。
実行スコア 未検証
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Troubleshoot and fix failing steps in Playwright demo walkthrough tests.
[demo] log lines — identify which step failedlocal_experiments/test-results/<test-dir>/test-failed-1.pngpython3 local_experiments/validate-alignment.py
Symptom: element not visible or timeout waiting for selector
Screenshot the page to see actual DOM:
cd rossoctl/ui-v2 && NODE_PATH=node_modules node -e "
const { chromium } = require('@playwright/test');
(async () => {
const b = await chromium.launch();
const p = await b.newPage({ ignoreHTTPSErrors: true });
await p.goto('TARGET_URL', { waitUntil: 'networkidle', timeout: 30000 });
await p.screenshot({ path: '/tmp/rossoctl/debug.png', fullPage: true });
const els = await p.evaluate(() =>
Array.from(document.querySelectorAll('a, button, [role=tab]')).map(e => ({
tag: e.tagName, text: e.textContent?.trim()?.substring(0, 50), href: e.href
}))
);
console.log(JSON.stringify(els, null, 2));
await b.close();
})();
"
Symptom: Validation shows Section [name] has no markStep() timestamp
Fix: The markStep() call is inside a conditional block that didn't execute. Move it outside:
// WRONG - inside conditional
if (await element.isVisible()) {
markStep('section_name');
await element.click();
}
// RIGHT - outside conditional
markStep('section_name');
if (await element.isVisible()) {
await element.click();
}
Symptom: Page redirects to Keycloak after clicking sidebar link
Fix: Use SPA sidebar clicks (client-side routing), not page.goto():
// WRONG - full reload loses Keycloak tokens
await page.goto(`${UI_URL}/agents`);
// RIGHT - SPA navigation preserves tokens
const link = page.locator('nav a').filter({ hasText: /^Agents$/ });
await demoClick(link.first(), 'Agents sidebar');
Symptom: MLflow shows login page or "User not allowed"
MLflow uses 2-stage auth:
/oidc/ui/auth — click SSO buttonAfter login, navigate to ${MLFLOW_URL}/#/experiments (hash routing).
Symptom: OpenShift login page shown
Kiali uses OpenShift OAuth — needs kubeadmin credentials (separate from Keycloak). Script auto-discovers from <kubeconfig-dir>/kubeadmin-password.
Symptom: Multiple voices playing simultaneously
Cause: Missing timestamps → audio segments placed at wrong positions
Fix: Ensure ALL markStep() calls fire unconditionally. Run validation:
python3 local_experiments/validate-alignment.py
Check for NO TIMESTAMP errors. Fix those first.
On invocation:
playwright-demos | <cluster> | ad-hoc | debug | | <issue description>playwright-demo — Main demo recording workflowrossoctl:ui-debug — Debug Rossoctl UI issuesk8s:health — Check platform healthまだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
Authentication and authorization patterns for Rossoctl services
日本語の概要は準備中です。原文の説明を表示しています。
Create confidential OAuth2 clients in Keycloak for server-to-service authentication
日本語の概要は準備中です。原文の説明を表示しています。
Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication
日本語の概要は準備中です。原文の説明を表示しています。
Configure OpenTelemetry Collector with OAuth2 authentication for trace export
日本語の概要は準備中です。原文の説明を表示しています。
CI pipeline monitoring, status checks, and PR validation workflows
日本語の概要は準備中です。原文の説明を表示しています。
Monitor running CI jobs, wait for completion, create tasks for results
日本語の概要は準備中です。原文の説明を表示しています。