[3d] BOT: Collections support: Part 1
gundalow opened this issue · 4 comments
Basic amount needed to do so Bot notifies the right people
Assumptions
- Bot only on community.general, AWS, VMware, Windows
- Python 2 only (Py3 support doesn't appear complete)
- Forked codebase is OK for the moment
Requirements
- Correctly identify authors based on DOCUMENTATION.author
- Correctly identify authors based on BOTMETA
- Read BOTMETA from Collections (gundalow)
- BOTMETA to be read for community.general, aws, windows (requires https://github.com/ansible-community/collection_migration/issues/new) (gundalow)
- Command line option to specify which collection repo
- Remove support labels
- labels for code type plugin, module_utils, action, etc
- owner_pr label (helps fast track reviews)
- https://github.com/ansible-collections/general/pull/14
- Note: owner_pr only applies to modules and module_utils right now. We probably want to enhance it to work with other plugins
- Ensure on community.general subdirectories for modules are honored (w.r.t labels and maintainers)
- Don't write to `~/.ansibullbot/cache/ansible.
- Define & use GH Teams from the correct GH Org
- TEST
shipits
from Maintainers - TEST merge
- Multiple
templates/multiple_module_notify.j2
ansible-collections/community.general#57 - Non-modules still showing as
support:core
- update botmeta, or logic in Bot? - Pull in commits from ansibulbot:master that we want
-
/rebuild
gundalow#15 - community.general labels for categories and some subtopics
- Replace hardcoded botnames. Use
ansibullbot/constants.py
add in a DEFAULT_BOTNAME - Image for GitHub Bot account
- Issue and PR template from
.github
repo - MOTD with start/stop commands and log locations.
- Fix links in
templates
(new data structure for branch, ShippableID) - Raise issue for Bot Part 2
Running against other repos
- Update
BOTMETA
to define labels for plugin directories - Create labels for above
- Give Bot user permissions on repo
- Add Shippable projectid
Infra
- Dedicated host (Q: One instance per Collection, or just different webhook URLs)
- Basic monitoring
- Dedicated GitHub account
Depends on
- Main bit of Bot work gundalow#7
- migrate to generate BOTMETA ansible-community/collection_migration#429
Out of scope
Part 2
- rebuild_merge
- label: backport, affects_X.Y
Part 3
- Combine code back into main ansibullbot
- function to specify directories, rather than hardcoding module paths
- Remove Collection specific hacks
- Guard items like support level around is_collection
re: Don't write to ~/.ansibullbot/cache/ansible
is that because it's the wrong location for cache files in your mind or because you simply don't want it to use a disk cache?
re:
Don't write to ~/.ansibullbot/cache/ansible
is that because it's the wrong location for cache files in your mind or because you simply don't want it to use a disk cache?
@jctanner @mkrizek We will need the bot running against 4+ collection repos. We thought running with different cache directories maybe needed, though maybe a Linux user (and therefore different homedir) per bot instance maybe best.
@gundalow Should this be moved to https://github.com/ansible-community/collection_bot now?
Closing per above.