Configuration Overview
The package provides configuration tools for ESLint, TypeScript, and RHDH deployment.
Configuration Topics
| Topic | Description |
|---|---|
| Configuration Files | YAML configuration structure |
| ESLint Configuration | Pre-configured ESLint rules |
| TypeScript Configuration | Base TypeScript settings |
| Environment Variables | All environment variables |
Project Configuration
A typical E2E test project includes these configuration files:
e2e-tests/
├── playwright.config.ts # Playwright configuration
├── tsconfig.json # TypeScript configuration
├── eslint.config.js # ESLint configuration
├── .env # Environment variables
└── tests/
└── config/
├── app-config-rhdh.yaml # RHDH app config
├── dynamic-plugins.yaml # Plugin configuration
├── rhdh-secrets.yaml # Secrets template
└── value_file.yaml # Helm values (optional)Quick Setup
TypeScript
json
{
"extends": "rhdh-e2e-test-utils/tsconfig",
"include": ["tests/**/*.ts"]
}ESLint
javascript
import { createEslintConfig } from "rhdh-e2e-test-utils/eslint";
export default createEslintConfig(import.meta.dirname);Playwright
typescript
import { defineConfig } from "rhdh-e2e-test-utils/playwright-config";
export default defineConfig({
projects: [{ name: "my-plugin" }],
});Configuration Merging
RHDH configurations are merged in layers:
- Package defaults - Base configurations included with the package
- Auth-specific - Configurations for guest or Keycloak auth
- Project configs - Your custom configurations
This allows you to override only what you need while using sensible defaults.