Compare commits

...

4 commits

Author SHA1 Message Date
Daniel Roth
da780d3e30
Merge 540cafc62a into c3e0ca1901 2026-03-27 16:37:53 +00:00
Daniel Roth
540cafc62a update trigger request object 2026-03-27 16:37:45 +00:00
Daniel Roth
b9e9c9edb5 get pashub email and password from environment vars 2026-03-27 16:32:41 +00:00
Daniel Roth
43e9466e05 log object better 2026-03-27 16:23:21 +00:00
4 changed files with 31 additions and 5 deletions

View file

@ -74,6 +74,10 @@ class Settings(BaseSettings):
PRIVATE_PAY_SHAREPOINT_ID: str = "changeme"
SOCIAL_HOUSING_WAVE_3_SHAREPOINT_ID: str = "changeme"
# Pas Hub
PASHUB_EMAIL: str = "changeme"
PASHUB_PASSWORD: str = "changeme"
# Optional AWS creds (only required in local)
AWS_ACCESS_KEY_ID: Optional[str] = None
AWS_SECRET_KEY_ID: Optional[str] = None

View file

@ -4,6 +4,7 @@ import re
from typing import Any, Dict, List, Mapping, Optional
from openpyxl import load_workbook
from backend.app.config import get_settings
from backend.app.db.connection import db_session
from backend.app.db.models.uploaded_file import (
FileSourceEnum,
@ -155,14 +156,16 @@ def process_job(
def handler(event: Mapping[str, Any], context: Any) -> None:
settings = get_settings()
BASE_DIR = os.path.dirname(os.path.dirname(__file__))
filepath = os.path.join(BASE_DIR, "Watford_Warm_Homes_Wave_3_RA Downloads .xlsx")
jobs: List[Job] = extract_jobs(filepath)
logger.info("Successfully loaded jobs from spreadsheet")
pas_hub_email = "random@test.com"
pas_hub_password = "my_fake_password"
pas_hub_email = settings.PASHUB_EMAIL
pas_hub_password = settings.PASHUB_PASSWORD
pashub_client = get_pashub_client(pas_hub_email, pas_hub_password)

View file

@ -1,7 +1,23 @@
from typing import Any, Mapping
import json
from utils.logger import setup_logger
logger = setup_logger()
def handler(event: Mapping[str, Any], context: Any) -> None:
print("Received event:")
print(json.dumps(event, indent=2))
logger.info("Received event:")
for record in event.get("Records", []):
body_str = record.get("body", "")
try:
body_obj = json.loads(body_str)
except json.JSONDecodeError:
logger.error("Failed to parse body as JSON")
logger.info(body_str)
continue
logger.info("Parsed message body:")
logger.info(json.dumps(body_obj, indent=2))

View file

@ -6,4 +6,7 @@ from pydantic import BaseModel
class PashubToAraTriggerRequest(BaseModel):
pashub_job_id: str
sharepoint_url: Optional[str] = None
address: Optional[str] = None
sharepoint_link: Optional[str] = None
uprn: Optional[str] = None
landlord_property_id: Optional[str] = None