Skip to content

Latest commit

 

History

History
55 lines (46 loc) · 3.17 KB

README.md

File metadata and controls

55 lines (46 loc) · 3.17 KB

Bamboo Google Sync

A command line interface to synchronize BambooHR employees with Google Workspace users. The command uses the BambooHR API and Google Directory API

Sequence Diagram

Update Google Workspace Users

Before using Bamboo Google Sync for the first time, run the update command first. The command updates all employees' external IDs and organization units. The external id is later used by the synchronization command to get an employees user.

Usage: python -m bamboogooglesync update [OPTIONS]

Options:

  --bamboo-subdomain TEXT    If you access BambooHR at
                             https://mycompany.bamboohr.com, then the
                             subdomain is "mycompany".  [required]
  --bamboo-api-key TEXT      See:
                             https://documentation.bamboohr.com/docs/getting-
                             started.  [required]
  --google-admin TEXT        Google Workspace admin user email. See:
                             https://developers.google.com/admin-
                             sdk/directory/v1/guides/delegation  [required]
  --google-credentials FILE  Path to Google Workspace credentials.json. See:
                             https://developers.google.com/admin-
                             sdk/directory/v1/guides/delegation  [required]
  --help                     Show this message and exit.

Synchronize Google Workspace Users

The command gets information changed in the last 24 hours from BambooHR and updates users in Google Workspace by external id.

Usage: python -m bamboogooglesync sync [OPTIONS]

Options:
  --bamboo-subdomain TEXT    If you access BambooHR at
                             https://mycompany.bamboohr.com, then the
                             subdomain is "mycompany".  [required]
  --bamboo-api-key TEXT      See:
                             https://documentation.bamboohr.com/docs/getting-
                             started.  [required]
  --google-admin TEXT        Google Workspace admin user email. See:
                             https://developers.google.com/admin-
                             sdk/directory/v1/guides/delegation  [required]
  --google-credentials FILE  Path to Google Workspace credentials.json. See:
                             https://developers.google.com/admin-
                             sdk/directory/v1/guides/delegation  [required]
  --help                     Show this message and exit.

SAM

You can use the AWS Serverless Application Model (SAM) to deploy this to your account.

Please, install the AWS SAM CLI.

Specify an Amazon S3 Bucket for the upload with export S3_BUCKET=<YOUR_BUCKET>.

Execute make package in the console. Which will package and upload the function to the bucket. You can then use the packaged.yaml to configure and deploy the stack in AWS CloudFormation Console.