Sync OWASP Board of Directors Members Data
- Dominant language
- Python
- Stars
- 451
- Forks
- 702
- Avg merge
- 22h 59m
- Merged PRs (30d)
- 91
Description
👋 Thanks for contributing to **OWASP Nest**!
Active project leaders: [@arkid15r](https://github.com/arkid15r) and [@kasya](https://github.com/kasya)
Contributing guidelines: https://github.com/OWASP/Nest/blob/main/CONTRIBUTING.md
Hacktoberfest issues: [https://github.com/OWASP/Nest/issues?q=is%3Aissue+is%3Aopen+label%3Ahacktoberfest](https://github.com/OWASP/Nest/issues?q=is%3Aissue+is%3Aopen+label%3Ahacktoberfest)
Join us on Slack: [https://owasp.org/slack/invite](https://owasp.org/slack/invite) -- #project-nest
Our LinkedIn group: https://www.linkedin.com/groups/14656108/
---
**Describe the solution you'd like**
We need to implement functionality to sync OWASP Board of Directors (BOD) members into the Nest system for a given election year. The source of truth for candidates is the https://github.com/OWASP/www-board/blob/master/_data/board-history.yml
This task involves:
- Parsing YAML files in the source repository to extract candidate names.
- Creating EntityMember instances for each candidate:
- role must be set to EntityMember.Role.MEMBER.
- The EntityMember should be linked to the corresponding BoardOfDirectors instance for the correct year.
- Preparing for further manual verification:
- The created candidates will be fuzzy matched against existing github.User instances to link them automatically where possible.
- The final verification and confirmation will be done manually.
**Are you going to work on implementing this?**
- [ ] Yes
- [x] No
**Additional context**
- [BoD model](https://github.com/OWASP/Nest/blob/main/backend/apps/owasp/models/board_of_directors.py)
- [EntityMember model](https://github.com/OWASP/Nest/blob/main/backend/apps/owasp/models/entity_member.py)
- [Event data sync example](https://github.com/OWASP/Nest/blob/main/backend/apps/owasp/management/commands/owasp_update_events.py)
- [Post data sync example](https://github.com/OWASP/Nest/blob/main/backend/apps/owasp/management/commands/owasp_sync_posts.py)
- [Fuzzy matching example](https://github.com/OWASP/Nest/blob/main/backend/apps/owasp/management/commands/owasp_update_leaders.py#L106)
Contributor guide
Assessment
This issue has not been assessed yet.