Sync membership of Blackbaud LMS community groups to Google Groups
The basic idea of this script is that it will perform a one-way sync of membership in a subset of Blackbaud community groups into specific Google Groups. Thus, Blackbaud community groups can be set up with SmartGroup rosters that automatically refresh, the sync process runs regularly, and Google Group memberships are updated automatically to match, allowing for the creation of SIS-driven, role-based groups in Google.
You need to prep the repository from a development workstation. You will need the following toolchain installed:
In your shell:
git clone https://github.com/groton-school/blackbaud-to-google-group-sync.git
cd blackbaud-to-google-group-sync
npm install
composer install
npm run setup
The setup script will prompt you with a series of interactive questions to enter credentials from Blackbaud SKY and to make choices about configuration in Google Cloud, including app access.
Calling the setup script with the --help
flag describes its usage (which includes the ability to pass in all user-configurable values from the command line) -- although it will still confirm those values interactively as it runs.
./scripts/setup.js --help