Files
ivatar/README.md
Oliver Falk dcdbc6b608 Update test scripts and documentation for simplified OpenTelemetry approach
- Update all test scripts to use OTEL_EXPORT_ENABLED instead of legacy flags
- Remove references to deprecated ENABLE_OPENTELEMETRY and OTEL_ENABLED
- Simplify run_tests_local.sh to use --exclude-tag=bluesky
- Update documentation to reflect instrumentation always enabled
- Remove legacy configuration section from README.md

All scripts now use the new approach where:
- OpenTelemetry instrumentation is always enabled
- Only data export is controlled by OTEL_EXPORT_ENABLED flag
- Cleaner configuration with single export control flag
2025-10-17 11:00:04 +02:00

3.1 KiB

ivatar / libravatar

Pipeline and coverage status

pipeline status coverage report

Reports / code documentation

Environment Variables

OpenTelemetry Configuration

OpenTelemetry instrumentation is always enabled in ivatar. The following environment variables control the behavior:

Core Configuration

  • OTEL_SERVICE_NAME: Service name for OpenTelemetry (default: "ivatar")
  • OTEL_ENVIRONMENT: Deployment environment (default: "production")
  • OTEL_EXPORT_ENABLED: Enable/disable data export (default: "false")
    • Set to "true" to enable sending telemetry data to external collectors
    • Set to "false" to disable export (instrumentation still active)

Export Configuration

  • OTEL_EXPORTER_OTLP_ENDPOINT: OTLP endpoint for traces and metrics export
  • OTEL_PROMETHEUS_ENDPOINT: Prometheus metrics endpoint (default: "0.0.0.0:9464")

Example Configurations

Development (Export Disabled)

export OTEL_EXPORT_ENABLED=false
export OTEL_SERVICE_NAME=ivatar-dev
export OTEL_ENVIRONMENT=development

Production (Export Enabled)

export OTEL_EXPORT_ENABLED=true
export OTEL_SERVICE_NAME=ivatar
export OTEL_ENVIRONMENT=production
export OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4317

Testing

Running Tests

For local development, use the provided script to skip Bluesky tests that require external API credentials:

./scripts/run_tests_local.sh

This runs all tests except those marked with @pytest.mark.bluesky.

All Tests

To run all tests including Bluesky tests (requires Bluesky API credentials):

python3 manage.py test -v3

Specific Test Categories

# Run only Bluesky tests
python3 manage.py test ivatar.ivataraccount.test_views_bluesky -v3

# Run only file upload security tests
python3 manage.py test ivatar.test_file_security -v3

# Run only upload tests
python3 manage.py test ivatar.ivataraccount.test_views -v3

Test Markers

Tests are categorized using pytest markers:

  • @pytest.mark.bluesky: Tests requiring Bluesky API credentials
  • @pytest.mark.slow: Long-running tests
  • @pytest.mark.integration: Integration tests
  • @pytest.mark.unit: Unit tests

Authors and contributors

Lead developer/Owner: Oliver Falk (aka ofalk or falko) - https://git.linux-kernel.at/oliver

Operations: Michal Novotny (aka clime)

QA: Tristan Le Guern (aka tleguern)

Frontend developer: Lukas Schönsgibl (aka hybridpicker), Niklas Poslovski (aka nipos)

Organisation/Meeting moderation: Lars Kruse (aka sumpfralle)

Initial developer: François Marier - https://fmarier.org/