onebeyond/bamboohrbot

View on GitHub
serverless.yml

Summary

Maintainability
Test Coverage
service: ${file(./package.json):name}

frameworkVersion: '3'

useDotenv: true

provider:
  name: aws
  runtime: nodejs18.x
  region: ${env:AWS_REGION}
  stage: ${env:ENVIRONMENT}
  timeout: 180 # 3 minutes
  memorySize: 128 # MB
  iamRoleStatements:
    - Effect: 'Allow'
      Action:
        - 'secretsmanager:GetSecretValue'
      Resource: 'arn:aws:secretsmanager:${self:provider.region}:${aws:accountId}:*'
  environment:
    BAMBOOHR_SUBDOMAIN: ${env:BAMBOOHR_SUBDOMAIN}
    EMPLOYEE_COUNTRY_FILTER: ${env:EMPLOYEE_COUNTRY_FILTER}
    BAMBOOHR_TIME_OFF_OFFICE_CODE: ${env:BAMBOOHR_TIME_OFF_OFFICE_CODE}
    SLACK_CELEBRATIONS_CHANNEL_IDS: ${env:SLACK_CELEBRATIONS_CHANNEL_IDS}
    SLACK_BANK_HOLIDAYS_CHANNEL_IDS: ${env:SLACK_BANK_HOLIDAYS_CHANNEL_IDS}
    SLACK_OFFICE_CHANNEL_IDS: ${env:SLACK_OFFICE_CHANNEL_IDS}

plugins:
  - serverless-esbuild

functions:
  main:
    handler: src/handler.main
    events:
      - schedule: cron(0 7 ? * MON-FRI *)