Skip to content
This repository has been archived by the owner on May 28, 2024. It is now read-only.

repo: community.proxmox #232

Closed
krauthosting opened this issue Feb 7, 2024 · 24 comments
Closed

repo: community.proxmox #232

krauthosting opened this issue Feb 7, 2024 · 24 comments

Comments

@krauthosting
Copy link

SUMMARY

As spoken at CfgMgmtCamp'24 let's group around the current Proxmox modules.
Beside modules from community.general we want to contribute more modules.
Some out-of-tree on GitHub but also an active development of a connection plugin.
Users are also very interested in roles to interact with Proxmox as VMware alternative.
Goal is an collection alternative to community.vmware with community.proxmox 😃

Name of collection

community.proxmox

GitHub maintainers

https://github.com/krauthosting
https://github.com/Thulium-Drake
https://github.com/johanvdw
https://github.com/UnderGreen
https://github.com/jilijamt
https://github.com/UnderGreen
https://github.com/helldorado
https://github.com/castorsky
https://github.com/Kogelvis
https://github.com/jwbernin
https://github.com/l00ptr
https://github.com/paginabianca

@Andersson007
Copy link
Contributor

@krauthosting hello, thanks for requesting the repo, we'll handle the request ASAP

@Andersson007
Copy link
Contributor

Andersson007 commented Feb 8, 2024

the repo has been created and the folks listed were added as maintainers (please let them know to check their mailboxes for the invite)

  • they all have the maintainer permission level, i.e. they can merge stuff. If you need any adjustments, please let me know
  • https://github.com/jilijamt shows 404

@Andersson007
Copy link
Contributor

@krauthosting @Thulium-Drake @johanvdw @UnderGreen @helldorado @castorsky @Kogelvis @jwbernin @l00ptr @paginabianca

Could you please:

  • Consider requesting a forum tag and a group and actively using it instead of GH discussion, etc. Then please refer to it from the collection's README.
  • Subscribe to the news-for-maintainers repo and track announcements there. The ansible-core folks publish changes related to CI (and not only). So if you later set up testing, you'll be informed in advance about the changes. Otherwise, your CI will get red one day in PRs for unclear reasons.
  • Also some announcements can be made via Forum, so all maintainers should join the collection maintainers group.
  • Optionally but highly recommended, subscribe to Bullhorn.
  • We have the Maintainer guidelines. Might be useful to take a look.
  • If one day you want to see the collection to the ansible community package, I would recommend to take a look at the Collection checklist (it's a short version of the Collection requirements). Taking it in consideration at the development stage will potentially make the inclusion process easier for maintainers and reviewers.
  • Share the above with future maintainers.
  • Also the repo will be added to Zuul: when Zuul will see a tag, it'll automatically publish the release on Galaxy.

I'll close the issue. If there are any questions, feel free to ask here or on Matrix (andersson007_) or here.
Thanks!

PS thanks for the effort to move the stuff from community.general and the desire to maintain and develop it!

@krauthosting
Copy link
Author

@Andersson007 Thanks 😚 Put could you empty the repo from the initial commit?
We're aiming to use "git filter-repo" to keep the history on all Proxmox modules.
@felixfontein guessed it would be a blank repo and no ugly force push needed.

Will need a bit time till we initialize the repo with history of community.general.
Next commit will add then README & co, before we start merging actual PRs.
Are scheduling internal work time for all that from the 19-23th of February on.

@felixfontein Thanks for sorting out and mentioning all on those pending work:
ansible-collections/community.general#4027
ansible-collections/community.general#6872
ansible-collections/community.general#7728

Could somebody still take care if we need to merge them before splitting repos?
Or we just merge current PRs as is, move the issue to stabilize till next release?
Our primary goal would to have a clean git while ramping up regular work time.

@felixfontein
Copy link
Contributor

Put could you empty the repo from the initial commit?

In case the branch protections aren't active yet, you can simply force push over the current repo contents to get rid of them :) I would only enable branch protections once the basic repo setup is done.

BTW, if someone can give me moderator or even commit rights (not sure what's really needed) for the repo, I can move issues over from community.general. (To move issues between repos in one organization one needs appropriate access rights in both repos.)

Could somebody still take care if we need to merge them before splitting repos?

It's easier to handle them before splitting, but you can always cherry-pick the commits over after the split. It's a bit more work, but doable :)

@krauthosting what do you think if I add you to the maintainer list for the proxmox stuff in c.g? Then you'll get pinged for every issue and PR that involves the proxmox modules (both existing, and new ones once they are created). Then you can directly interact with folks who created issues/PRs in the wrong repo (which will probably happen for some time, or even years, speaking from experience :) ) - at least as long as the modules/plugins are still in c.g's main branch.

@Andersson007
Copy link
Contributor

@felixfontein @krauthosting i've just disabled Require linear history so you can purge the repo (not sure if's that setting though). There are no other rules enabled for main.
@felixfontein i made you a maintainer too
Folks please let me know when i can enable Require linear history again.
thanks!

@felixfontein
Copy link
Contributor

@Andersson007 there are still branch protections for the main branch which prevent force pushes:

remote: error: GH006: Protected branch update failed for refs/heads/main.
remote: error: Cannot force-push to this branch

In branch protections, there's a box at the bottom "Rules applied to everyone including administrators" where you can enable force pushes. But I guess it's easiest to simply delete the branch protection for main completely for now.

Another problem is that there's now the tag "generated from https://github.com/ansible-collections/collection_template", which really shouldn't be there. The only way to get rid of it seems to be by deleting the repository.

@krauthosting another thing I remembered you have to take care of when using git filter-repo: the modules directory of c.g was reorganized in http://github.com/ansible-collections/community.general/commit/b531ecdc9bfe48fe98ea6b67279eb048e0c9071d:

plugins/modules/{cloud/misc => }/proxmox.py       
plugins/modules/{cloud/misc => }/proxmox_disk.py  
.../{cloud/misc => }/proxmox_domain_info.py       
.../modules/{cloud/misc => }/proxmox_group_info.py
plugins/modules/{cloud/misc => }/proxmox_kvm.py   
plugins/modules/{cloud/misc => }/proxmox_nic.py   
plugins/modules/{cloud/misc => }/proxmox_snap.py  
.../{cloud/misc => }/proxmox_storage_info.py      
.../modules/{cloud/misc => }/proxmox_tasks_info.py
.../modules/{cloud/misc => }/proxmox_template.py  
.../modules/{cloud/misc => }/proxmox_user_info.py 
.../modules/{cloud/misc => }/test_proxmox_kvm.py  
.../modules/{cloud/misc => }/test_proxmox_snap.py 
.../{cloud/misc => }/test_proxmox_tasks_info.py   

@Andersson007
Copy link
Contributor

@felixfontein

  • deleted the rule; please let me know when i can add it again
  • i wouldn't like to remove the repo if it's not super necessary.. it's added to Zuul already (who knows maybe it'll brake something) and all the folks were added and they got subscribed. Though, If necessary, I'll remove and will create from scratch.

@krauthosting
Copy link
Author

krauthosting commented Feb 13, 2024

@felixfontein Thanks for taking care and sure add us to the maintainer list for the Proxmox. As said in Ghent we will try to schedule regular work time, so at least initially it might help to redirect PRs & co. Brilliant idea, thanks for taking care! Also for mentioning the renaming for git filter-repo ❤️ We scheduled to look at it next week ...

@Andersson007 Also big thanks for helping 🥇 Should have stated our goals better before the repo creation knowing "best practice" in Ansible was to dump git history. Not huge fans of Microsoft's closed-source AI training 'Hub we just care git itself is clean. But will just git push --force if too cumbersome to mess with the project as is ... like in godmode :godmode: 🤣

@l00ptr
Copy link

l00ptr commented Feb 15, 2024

I will try my best to work on that collection. I wasn't in Ghent, but I think it's a great idea to move the Proxmox collection on a specific repository.

The maintainer invitation has expired for me I can't accept it. Could you invite me again ?

Best regards,
L.

@Andersson007
Copy link
Contributor

@l00ptr sent, thanks

@l00ptr
Copy link

l00ptr commented Feb 19, 2024

request for forum tag / group done: https://forum.ansible.com/t/requesting-a-forum-group/503/19

@l00ptr
Copy link

l00ptr commented Feb 19, 2024

@krauthosting how can i help on that collection ?

@Andersson007
Copy link
Contributor

@l00ptr thanks for creating the request!

I created the proxmox tag and the group.

@krauthosting you seem not to be on the forum yet, I tried to add you as an owner.
@Thulium-Drake i made you an owner (you can edit the group profile), could you please make @krauthosting an owner too after they join the forum and add other members. People can join as regular members on their own too.

Now you need:

  1. Fill in the group information. There's now just a template. There are also a couple of examples you'll find in the text.
  2. You can also add a nice avatar.
  3. Put a link to the group in README and in other sources
  4. Spread the word about it, including by announcing it via Bullhorn
  5. After you move the content to the collection, let me know, I'll add your team to the Ansible communication guide.

Have question or need help? Please let me know

@krauthosting
Copy link
Author

@krauthosting how can i help on that collection ?
@l00ptr Please continue as you already did in reviewing and closing open PRs 🤗
Priority has to get them closed so we can split the repo with git history and move issues.

@krauthosting
Copy link
Author

krauthosting commented Feb 27, 2024

@Andersson007 Carol and Greg ensured in Belgium we're on the forum 😉 Joined the group now, can you still make us the owner? Otherwise we put the link in the README and will gather folks there.

@Andersson007
Copy link
Contributor

@krauthosting sure, you're an owner now:) thanks

@krauthosting
Copy link
Author

@felixfontein @l00ptr We created now a draft of the filtered repo for review 😄 But mind we will force push there and break any remotes during the QA and update once we finally split. Please give us feedback on:

https://github.com/krauthosting/community.proxmox (just for QA and later our PRs)

We progressed on to close these open issues:
ansible-collections/community.general#5449
ansible-collections/community.general#6843

But we still have those issues with PRs left:
ansible-collections/community.general#7969
ansible-collections/community.general#7817

Once we have those PRs closed and your feedback we can do the last filter-repo run and initialize community.proxmox and move all other issues without PRs. Guess that the desired workflow to have a clean collection split :hugs

@krauthosting
Copy link
Author

krauthosting commented Feb 28, 2024

Progress Update: We've imported the modules from community.general using the repo-filter below and have migrated their namespace to community.proxmox. The docs are building fine thanks to ansibull-docs and sanity+unit tests are passing too.

# Test scaffolding
tests/.gitignore
tests/.config.yml
tests/galaxy-importer.cfg
tests/integration/requirements.yml

# Unit Tests Scaffolding
tests/unit/requirements.txt
tests/unit/requirements.yml
tests/unit/plugins/modules/utils.py
tests/unit/compat
# Unit Tests
tests/unit/plugins/inventory/test_proxmox.py
glob:tests/unit/plugins/modules/test_proxmox*

# Integration Tests
glob:tests/integration/targets/proxmox*

.gitignore

# Helper plugins
plugins/module_utils/version.py
plugins/doc_fragments/attributes.py
# Core Plugins
plugins/doc_fragments/proxmox.py
plugins/inventory/proxmox.py
plugins/module_utils/proxmox.py
glob:plugins/modules/proxmox*

@felixfontein
Copy link
Contributor

You might want to remove

tests/integration/requirements.yml
tests/unit/requirements.txt
tests/unit/requirements.yml
tests/galaxy-importer.cfg
tests/utils/

from the tree filter and add them directly to the result if needed (tests/galaxy-importer.cfg isn't needed at all). Changes to these files are contributing to quite a few commits, that make the contributor stats look like I've been doing a huge amount of work on the proxmox modules/plugins :) - just look at https://github.com/krauthosting/community.proxmox/graphs/contributors

@mariolenz
Copy link
Contributor

This issue has been closed. I don't think you should still discuss here, it would be better to move your discussions to the new repo (or maybe to the forum).

PS
The collection doesn't have a name yet:
https://github.com/ansible-collections/community.proxmox/blob/59f422042c9c5540dd33cc1c0e64e79d7003de5c/galaxy.yml#L3-L4

@Andersson007
Copy link
Contributor

yeah, forum/target repo feels like a good place for related discussions:)

@xn4p4lm
Copy link

xn4p4lm commented Mar 10, 2024

👋 Hello! Know the discussion here is transitioning to a new location, where would that be?

Was starting to work on my own proxmox collection, then saw this was created last month.

Would be happy to help contribute to this module!

I'm also xn4p4lm over on the Ansible Forums

@Andersson007
Copy link
Contributor

@xn4p4lm hello, great, thanks! Help is always welcome in the community collections! I see you already joined the forum group, cool

cc @krauthosting ^

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

6 participants