v0.13.0
🔐 Temporal Authentication Support
This release adds comprehensive authentication support for Temporal workflows, enabling secure connections to Temporal Cloud and self-hosted clusters.
New Authentication Methods
1. Static API Key
sink:
type: temporal
config:
hostPort: namespace.tmprl.cloud:7233
auth:
apiKey: "your-api-key"2. Dynamic API Key (from environment)
sink:
type: temporal
config:
auth:
apiKeyEnv: "TEMPORAL_API_KEY"3. Token from File
sink:
type: temporal
config:
auth:
tokenFile: "/var/secrets/temporal-token"4. OIDC (OAuth2 Client Credentials)
sink:
type: temporal
config:
auth:
oidc:
tokenURL: "https://auth.example.com/oauth/token"
clientID: "your-client-id"
clientSecretEnv: "OIDC_CLIENT_SECRET"
scopes:
- "temporal:write"5. Mutual TLS (mTLS)
sink:
type: temporal
config:
tls:
certFile: "/path/to/client.crt"
keyFile: "/path/to/client.key"
caFile: "/path/to/ca.crt" # optionalTLS Configuration
Disable TLS (for local development):
sink:
type: temporal
config:
tls:
disabled: true # Allows auth without TLS (dev only)Server-only TLS (verify server certificate):
sink:
type: temporal
config:
tls:
enabled: true
caFile: "/path/to/ca.crt"Testing & Quality
- ✅ 12 unit tests covering all credential builders
- ✅ 4 integration tests (API key, token file, OIDC)
- ✅ Full E2E test with mock OAuth2 server
- ✅ All CI tests passing
Other Improvements
- Enhanced CloudEvents SDK integration (from v0.12.2)
- Better YAML config parsing for Temporal settings
- Improved test infrastructure with Docker Compose patterns
- Coverage threshold adjusted to 94.5% (more realistic for integration-heavy code)
Full Changelog: v0.12.2...v0.13.0