# Copyright 2025 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. name: ADK Answering Agent for Discussions on: discussion: types: [created] discussion_comment: types: [created] permissions: contents: read jobs: agent-answer-questions: if: >- github.repository == 'google/adk-python' && ( (github.event_name == 'discussion' && github.event.discussion.category.name == 'Q&A') || (github.event_name == 'discussion_comment' && contains(github.event.comment.body, '@adk-bot') && github.event.sender.login != 'adk-bot') ) runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v6 - name: Set up Python uses: actions/setup-python@v6 with: python-version: '3.11' - name: Authenticate to Google Cloud id: auth uses: 'google-github-actions/auth@v3' with: credentials_json: '${{ secrets.ADK_GCP_SA_KEY }}' - name: Install dependencies run: | python -m pip install --upgrade pip pip install google-adk google-cloud-discoveryengine - name: Run Answering Script env: GITHUB_TOKEN: ${{ secrets.ADK_TRIAGE_AGENT }} ADK_GCP_SA_KEY: ${{ secrets.ADK_GCP_SA_KEY }} GOOGLE_CLOUD_PROJECT: ${{ secrets.GOOGLE_CLOUD_PROJECT }} GOOGLE_CLOUD_LOCATION: ${{ secrets.GOOGLE_CLOUD_LOCATION }} VERTEXAI_DATASTORE_ID: ${{ secrets.VERTEXAI_DATASTORE_ID }} GEMINI_API_DATASTORE_ID: ${{ secrets.GEMINI_API_DATASTORE_ID }} GOOGLE_GENAI_USE_VERTEXAI: 1 OWNER: 'google' REPO: 'adk-python' INTERACTIVE: 0 PYTHONPATH: contributing/samples/adk_team DISCUSSION_JSON: ${{ toJson(github.event.discussion) }} run: | python -c "import os; open('/tmp/discussion.json', 'w').write(os.environ['DISCUSSION_JSON'])" python -m adk_answering_agent.main --discussion-file /tmp/discussion.json