"""Configuration module for GitHub Issue Creation Lambda.""" import logging import os from lambdacommon.util import setup_ows_logger # Lambda identification LAMBDA_NAME = "jira-webhook-github-issues" ENVIRONMENT = os.environ.get("ENVIRONMENT", "dev") # Logging configuration LOGGING_LEVEL = os.environ.get("LOGGING_LEVEL", logging.INFO) # Set up centralized OWS logger logger = setup_ows_logger( environment=ENVIRONMENT, logger_name=LAMBDA_NAME, logger_level=LOGGING_LEVEL, service_name=LAMBDA_NAME, service_version="1.0.0" ) # Sentry configuration SENTRY_DSN = os.environ.get("SENTRY_DSN") # GitHub configuration GITHUB_TOKEN = os.environ.get("GITHUB_TOKEN") GITHUB_API_BASE_URL = os.environ.get( "GITHUB_API_BASE_URL", "https://api.github.com/graphql" ) JIRA_DOMAIN = os.environ.get("JIRA_DOMAIN", "theorchard.atlassian.net") JIRA_WEBHOOK_SECRET = f"{ENVIRONMENT}/{LAMBDA_NAME}/JIRA_WEBHOOK_SECRET" # GitHub Copilot configuration # Note: COPILOT_ASSIGNEE_ID should be the node ID of GitHub Copilot # COPILOT_USERNAMES is a list of potential Copilot bot usernames to search for # The Lambda will search for these in order and use the first match found COPILOT_USERNAMES = [ "copilot-swe-agent", "copilot-agent", "copilot" ] COPILOT_ASSIGNEE_ID = os.environ.get("COPILOT_ASSIGNEE_ID") # Issue template configuration ISSUE_LABELS = ["security", "dependency-update", "automated"] # Log messages ISSUE_CREATION_STARTED = ( "Starting GitHub issue creation for {package} in {repo}" ) ISSUE_CREATION_COMPLETED = ( "Successfully created issue #{issue_number} for {package}" ) ISSUE_CREATION_FAILED = "Failed to create issue for {package}: {error}"