- How do I install application-manager-tools/am-driver in a Laravel project?
- Run composer require application-manager-tools/am-driver. It requires PHP ^7.4 and symfony/http-client plus symfony/console ^5.4|^6.4|^7.0|^8.0. In Laravel, use the framework-agnostic library and CLI and wire routes/config yourself; the documented bundle registration is for Symfony. Confirm dependency compatibility with composer why-not before adopting.
- Can I use this package with Laravel 10 or Laravel 11?
- There is no native Laravel service provider in the docs, so Laravel 10/11 use is via the framework-agnostic PHP library and console tooling. Compatibility depends on your PHP version and Symfony http-client/console constraints, not a declared Laravel constraint. Test route registration, token config, and callback parsing in your app before production.
- What configuration is required for the Symfony bundle?
- Register AmDriverBundle, then configure am_driver with am_base_url, source, route_prefix, consumption_webhook_token, and orchestration_callback_token from env. The default route_prefix am exposes /am/orchestration/commands and /am/instance-operational-state. Keep tokens in env and use .env.local.dist as a template. For Laravel, map equivalent env/config values manually.
- Which endpoints and CLI commands does am-driver provide?
- It handles orchestration command endpoints, consumption webhooks, and operational state push, with a configurable route prefix defaulting to am. The CLI includes am-driver serve with --host, --port, and --data-dir for a local HTTP receptacle. Use it to simulate and validate AM callbacks locally.
- How should I handle integrationInstanceId in callbacks?
- integrationInstanceId is an optional callback field added for traceability in multi-tenant or multi-integration setups and is backward-compatible. Parse it as optional in your DTO or handler, for example $rawPayload['integrationInstanceId'] ?? null, and assert it in integration tests. Do not assume it replaces existing tenant or workspace identifiers.
- What OpenAPI documentation and Swagger UI are included?
- The package ships OpenAPI 3.1.1 docs covering the receiver, AM client, and a Swagger UI kit under docs/openapi/README.md. You can run docker compose up -d swagger-ui and use AM_DRIVER_SWAGGER_PORT, which defaults to 18098. Use the spec to validate callback schemas, including optional integrationInstanceId and null edge cases.
- How do I test AM callbacks locally before production?
- Run the receptacle with am-driver serve --host=0.0.0.0 --port=8099 --data-dir=var/am-driver/receptacle, using Docker Compose if needed. Use Swagger UI and the OpenAPI spec to exercise payloads and edge cases. Add PHPUnit assertions for callback fields, including integrationInstanceId null and duplicate scenarios.
- Is this package production-ready for shared or multi-tenant deployments?
- It provides orchestration, webhook handling, state push, OpenAPI validation, and codecheck tooling, but tenant isolation remains your responsibility. If integrationInstanceId maps to tenants, validate workspace separation and avoid mixing FileTenantWorkspace data; consider database-backed isolation. Use structured JSON logging and filters to avoid high-cardinality noise in production.
- What are alternatives to using am-driver in Laravel?
- You can build a custom Laravel HTTP client plus jobs and controllers that call Application Manager APIs, or use Symfony Messenger in Symfony apps. am-driver adds ready-made orchestration endpoints, consumption webhook handling, state push, OpenAPI 3.1.1 docs, and a Swagger UI kit. Choose it when you want the connector contract and docs rather than a bespoke integration.
- How is application-manager-tools/am-driver maintained and versioned?
- The repository shows ongoing changes such as PR #11 adding integrationInstanceId and references to pre-v0.0.16 integrations, but no release cadence or SLA is documented in the provided material. Pin a Composer version, review changelogs and pull requests, and run codecheck plus OpenAPI validation before upgrades. Confirm support expectations with the maintainers for production use.