generated from it-at-m/oss-repository-en-template
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
17ad07c
commit 835da78
Showing
1 changed file
with
11 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,7 +4,7 @@ | |
|
||
Compares members of a GitHub organization with users from LDAP and a map of GitHub and LDAP usernames. | ||
|
||
### Built With | ||
## Built With | ||
|
||
The project is built with technologies we use in our projects: | ||
|
||
|
@@ -44,17 +44,21 @@ To keep track of the members in the organization, a list (`githubpeople.json`) w | |
|
||
In order to check automatically if there are any differences between the organization members, the list and LDAP, this project was started. | ||
|
||
It uses a Docker container, which runs a shell script that executes the following steps:0 | ||
It uses a Docker container, which runs a shell script that executes the following steps: | ||
|
||
1. Verify that the member list (`githubpeople.json`) exists under the as an argument provided path | ||
|
||
1. If a `.pem` certificate was provided, add it to `ldap.conf` | ||
|
||
1. Fetch a list of organization members with GitHub's GraphQL API | ||
|
||
2. Loop over the entries of `githubpeople.json`, checking if the user is in the organization and concatenating the LDAP usernames to a filter string | ||
1. Loop over the entries of `githubpeople.json`, checking if the user is in the organization and concatenating the LDAP usernames to a filter string | ||
|
||
3. Search for users in LDAP with `ldapsearch` and the filter string so that only one request to LDAP is needed | ||
1. Search for users in LDAP with `ldapsearch` and the filter string so that only one request to LDAP is needed | ||
|
||
4. Again, loop over `githubpeople.json` entries and check if the user is in LDAP | ||
1. Again, loop over `githubpeople.json` entries and check if the user is in LDAP | ||
|
||
5. Loop over organization members and check if the member is on the `githubpeople.json` list | ||
1. Loop over organization members and check if the member is on the `githubpeople.json` list | ||
|
||
For each failing check, an error message is printed, and if at least one check fails, the script terminates with error code 1 instead of 0. | ||
|
||
|
@@ -80,7 +84,7 @@ Distributed under the MIT License. See [LICENSE](LICENSE) file for more informat | |
|
||
## Contact | ||
|
||
it@M - [email protected] | ||
it@M - [[email protected]](mailto:[email protected]) | ||
|
||
<!-- project shields / links --> | ||
[made-with-love-shield]: https://img.shields.io/badge/made%20with%20%E2%9D%A4%20by-it%40M-yellow?style=for-the-badge | ||
|