# Claremont Makerspace Member Plumbing This repo contains a set of scripts to sync data around for the Claremont MakerSpace. They primarilly revolve around pulling member data from [MembershipWorks](https://membershipworks.com/) and pushing it out to various systems at the Space. ## `passwords.py` Most of the scripts require a `passwords.py` file, defining the usernames in passwords for various services. This file is not distributed in this repository, for obvious reasons, but here is an example: ```python DOOR_USERNAME = "user1" DOOR_PASSWORD = "password1" MEMBERSHIPWORKS_USERNAME = "user2" MEMBERSHIPWORKS_PASSWORD = "password2" MEMBERSHIPWORKS_DB = { "database": "db_name_here", "user": "user3", "password": "password3" } ``` ## `doorUpdater.py` Retrieves member information from MembershipWorks and pushes it out to the HID Edge Evo SOLO controllers that do access controll at the Space. Configuration lives in `config.yaml`. ## `ucsAccounts.py` Retrieves member information from MembershipWorks and pushes it out to [UCS](https://www.univention.com/products/ucs/), which we use as a domain controller for the Windows computers at the Space. ## `sqlExport.py` Retrieves account and transaction information from MembershipWorks, and pushes it to a MariaDB database for use in other projects. Schemas are defined with [peewee](peewee-orm.com) in `./lib/mw_models.py`.