https://github.com/cthit/goldapps
A bridge to keep the different user systems of the IT-division in sync.
https://github.com/cthit/goldapps
Last synced: 6 months ago
JSON representation
A bridge to keep the different user systems of the IT-division in sync.
- Host: GitHub
- URL: https://github.com/cthit/goldapps
- Owner: cthit
- Created: 2017-03-07T19:39:14.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-11-11T11:15:27.000Z (over 1 year ago)
- Last Synced: 2024-11-11T12:23:09.536Z (over 1 year ago)
- Language: Go
- Homepage:
- Size: 848 KB
- Stars: 1
- Watchers: 21
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GoldApps
A system for syncing LDAP with gsuite and json files written in Go
### Features
Producers
- LDAP
- JSON
- Gamma (1.0)
- Auth (Gamma 2.0)
Consumers
- GApps
- JSON
## Dummy setup
Create the following files:
- `config.toml` - Copy from example.config.toml
- `gapps.json` - Containing `{}`
- `additions.json` - Containing `{}`
- `gamma.json` - Containing `{}`
## Setup
- Copy example.config.toml to config.toml and edit
- Grabb gapps.json and place in working directory
- go to [Google developer console](https://console.developers.google.com)
- go to credentials
- create new service account för this app
- use the downloaded file
## Usage
Read setup first
### Docker image
`$WAIT` specifies for how long the application should wait before running. This can bes jused in conjunction with `restart: always` to make the bridge run at regular intervals. If you don't desire any waiting effect you can simply set the entrypoint to `./goldapps`.
For some reason `entrypoint` has to be specified in the compose file or the docker run command.
The command should be your flags for the `goldapps` command
### Command `goldapps`
The following flags are available:
- `-y`: No interacting from the user required.
- `-i`: Ask the user about everything...
- `-dry`: Makes sure the program does not change anything.
- `-from someString`: Set the group source to `ldap`, `gapps` or `*.json`. In case of `gapps` config value `gapps.provider` will be used.
- `-to someString`: Set the group consumer to 'gapps' or '\*.json'. In case of `gapps` config value `gapps.consumer` will be used.
- `-users`: Only collect and sync users
- `-groups`: Only collect and sync groups
- `-additions *.json`: file with additions
Notice that flags should be combined on the form `goldapps -a -b` and **NOT** on the form `goldapps -ab`.