$ adk api_server --trigger_sources pubsub,eventarc --port 8767 . ValueError: trigger_sources requires trigger_oidc_audience or trigger_auth_verifier to be set. exit 1 $ TRIGGER_TOKEN=local-dev-token python main.py $ python publish.py pubsub tokens --message-id 1001 HTTP 200 {"status": "success"} (5.8 s) $ python publish.py pubsub tokens --message-id 1001 HTTP 200 {"status": "success"} (6.8 s) $ python publish.py eventarc rollback --event-id ev-77 HTTP 200 {"status": "success"} (5.3 s) $ python publish.py pubsub tokens --message-id 1002 --raw-data 'not base64!' HTTP 400 {"detail": "Invalid base64 message data: Invalid base64-encoded string: number of data characters (9) cannot be 1 more than a multiple of 4"} (0.0 s) $ TRIGGER_TOKEN=wrong-token python publish.py pubsub tokens --message-id 1004 HTTP 401 {"detail": "Missing or wrong trigger token."} (0.0 s) $ cat reviews.jsonl {"key": "pubsub:1001", "page": "tokens", "summary": "CI jobs authenticate using deploy tokens stored as SHIPCTL_TOKEN, which are created with specific scopes and expire after 90 days."} {"key": "eventarc:ev-77", "page": "rollback", "summary": "`shipctl rollback` points traffic to an earlier release without rebuilding, records the rollback as a new release, and does not automatically roll back database migrations."} $ adk api_server --trigger_sources pubsub --trigger_oidc_audience https://docs-reviewer.example --port 8768 --session_service_uri memory:// . $ curl -s -X POST -H 'Content-Type: application/json' -d @event.json http://127.0.0.1:8768/apps/docs_reviewer/trigger/pubsub HTTP 401 {"detail": "Missing or malformed Authorization bearer token."}