🔖 Bump version: 0.1.0 → 1.0.0
This commit is contained in:
parent
cbf68294ca
commit
b7311d088d
21 changed files with 1993 additions and 223 deletions
72
README.md
72
README.md
|
@ -1 +1,73 @@
|
|||
# adGroupSync
|
||||
|
||||
This program synchronizes Active Directory groups with CiviCRM groups.
|
||||
It is designed to be run as a cron job.
|
||||
|
||||
## Installation via pipx
|
||||
|
||||
```bash
|
||||
pipx install --include-deps --index-url https://git.propeace.de/api/packages/ProPeace/pypi/simple/ --pip-args='--extra-index-url https://pypi.org/simple/' adgroupsync
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
Create a new configuration file:
|
||||
|
||||
```bash
|
||||
adgroupsync --create-config --conf /path/to/adgroupsync_config.yaml
|
||||
```
|
||||
|
||||
Edit the configuration file and set the following values:
|
||||
|
||||
### AD Configuration
|
||||
|
||||
- `AD.DOMAIN`: The domain of the Active Directory server.
|
||||
- `AD.USER`: The username of the user to connect to the Active Directory server.
|
||||
- `AD.PASSWORD`: The password of the user to connect to the Active Directory
|
||||
server.
|
||||
- `AD.LDAP_SERVER`: The LDAP server of the Active Directory server.
|
||||
- `AD.PARENT_GROUP`: The parent group in Active Directory that contains all
|
||||
groups that should be synchronized.
|
||||
- `AD.TIMEZONE`: The timezone of the Active Directory server.
|
||||
|
||||
### Civicrm Configuration
|
||||
|
||||
- `CIVICRM.BASE_URL`: The URL of the CiviCRM server.
|
||||
- `CIVICRM.API_KEY`: The API key of the CiviCRM user.
|
||||
- `CIVICRM.BATCH_SIZE`: The batch size for the API requests to the CiviCRM
|
||||
server (only applied to contact sync). _DEFAULT: 50_
|
||||
- `CIVICRM.RETRIES`: The number of retries for the API requests to the CiviCRM
|
||||
server. _DEFAULT: 3_
|
||||
|
||||
### Logging Configuration
|
||||
|
||||
- `LOGGING.STDOUT_LOG_LEVEL`: The log level for the stdout logger. _DEFAULT:
|
||||
INFO_
|
||||
- `LOGGING.FILE_LOG_LEVEL`: The log level for the file logger. _DEFAULT: INFO_
|
||||
- `LOGGING.LOG_DIR`: The path to the log file. _DEFAULT:
|
||||
/var/log/adgroupsync.log_
|
||||
|
||||
### NTFY (optional)
|
||||
|
||||
If you want to send notifications about failed syncs, you can
|
||||
configure [ntfy](https://ntfy.sh/).
|
||||
|
||||
- `NTFY.URL`: The URL of the NTFY server.
|
||||
- `NTFY.TOPIC`: The topic to post the message to.
|
||||
- `NTFY.ACCESS_TOKEN`: The access token for the NTFY server.
|
||||
|
||||
## Usage
|
||||
|
||||
### Manual Sync
|
||||
|
||||
```bash
|
||||
adgroupsync --conf /path/to/adgroupsync_config.yaml
|
||||
```
|
||||
|
||||
### Cron Job
|
||||
|
||||
Synchronize the groups every 10 minutes:
|
||||
|
||||
```bash
|
||||
*/10 * * * * adgroupsync --conf /path/to/adgroupsync_config.yaml 2>&1
|
||||
```
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue