tree: 61105aceee4e2f8fa51f49aaad0318e7ea2fd722
  1. cmd/
  2. internal/
  3. .gitignore
  4. Dockerfile
  5. GEMINI.md
  6. main.go
  7. OWNERS
  8. README.md
go/src/infra/fleet_automation_governor/README.md

FLAG: FLeet Automation Governor

This service provides a centralized platform for defining and executing automated tasks for Fleet users based on configuration files. Users can define their automation logic in simple, declarative config files, upload them to the service, and schedule their execution. The service then handles the execution of these tasks according to the defined schedule, providing a reliable and scalable automation solution.

For details, see go/flag-dd.

Features

  • Configuration-Driven Automation: Define automation tasks using simple, declarative configuration files.
  • Centralized Configuration Management: Store and manage all automation configurations in a single, secure location.
  • Scheduled Execution: Define schedules for each automation task, allowing for recurring execution at specific times or intervals.
  • Flexible Scheduling: Supports various scheduling options, including cron expressions, fixed intervals, and one-time execution.
  • Extensible Task Execution: Supports a variety of task types, including:
    • HTTP/RPC requests
    • BigQuery dumps
    • GCS file uploads
  • Logging and Monitoring: Comprehensive logging and monitoring capabilities to track task execution and identify potential issues.
  • User Authentication and Authorization: Secure access to the service with user authentication and authorization.
  • Scalable Architecture: Designed to handle a large number of automation tasks and users.

Architecture

The service consists of the following key components:

TBD

Configuration File Format

TBD

Key Configuration Parameters:

TBD

Getting Started

TODO: add more details.

  1. Create a configuration file

  2. Test the configuration

  3. Submit the configuration and monitor