k3s-io/k3s-ansible

ansible-galaxy

itwars opened this issue ยท 36 comments

Hi all,
Here is my proposal:

I will probably create a new branch to test the ansible-galaxy directory structure and reorganize the structure!

Are you ok with that way to do it?

If you need any pointers, I was initially refactoring those roles with aim to put them in ansible-galaxy at k3s-io/k3s#1649, but don't have time right now to get back to that.

Those refactored roles are currently used by me in https://github.com/thaum-xyz/ankhmorpork/tree/master/ansible

Ok I will dive into your code, then create a new branch, and after testing this branch will be perhaps merge to master :)

@ebesson @jpraczyk @xanmanning @onedr0p are all working on similiar goals. What would be the proper way to form a consensus?

Let's talk! @ebesson @jpraczyk @xanmanning @onedr0p @emansom
What about a slack? Just send me your email to my email and I will be please to make it!

vincent.rabah@gmail.com

and as my first proposal, I have create a new branch call ansible-galaxy (beware I've just push yml file as it, this branch doesn't work yet!)

Emailed ๐Ÿ˜Š

I have create k3s-ansible.slack.com

Emailed ;-)

forty commented

Any progress on this?

rdxmb commented

Seems that the master changed too quickly and the changes for galaxy too slow - because IMHO this seems a re-structuring of that repository.

I could help doing that, but parallel changes in the master will get merge conflicts very quickly.

rdxmb commented

My suggestion is that we take some time to refactor that - while the commits to master should have a break.

@itwars what do you think?

Yes I agree, for this purpose I've create the branch ansible-galaxy

rdxmb commented

Yes, but this branch was created - in April?

while the commits to master should have a break.

And we should merge the refactoring as soon as possible. Otherwise, this will be a neverending story or never get merged, as it happend already once in k3s-io/k3s#1649

So I would create a new branch for that. But: the break is very important, until the refactoring is in progress (!)

Edit: Maybe we could technically stop commting to master for some days while the refactoring is in progress? This would really help!

rdxmb commented

Also, I would like to welcome @geerlingguy to help doing that, for he is a very experienced ansible-guy ๐Ÿ‘

Hi everyone, I would like to point out that there is another k3s galaxy role that is well maintained, already in ansible-galaxy and works wonderfully. It would be nice if these could merge into one here. Maybe the maintainer there, @xanmanning could comment.

rdxmb commented

Sounds good, I will have a look at it.

In a comment above also #39 (comment) https://github.com/thaum-xyz/ankhmorpork/tree/master/ansible is mentioned.

Edit: @onedr0p What about your repository https://github.com/onedr0p/k8s-cluster-k3s-ubuntu-ansible ?

@rdxmb my repo uses @xanmanning k3s role under the hood. It's an opinionated way to provision Ubuntu, k3s, CNIs and other things I wanted.

Hi everyone, I would like to point out that there is another k3s galaxy role that is well maintained, already in ansible-galaxy and works wonderfully. It would be nice if these could merge into one here. Maybe the maintainer there, @xanmanning could comment.

Thanks for your kind words @onedr0p. I have been asked a number of times about working in this role rather than my own or even creating PRs to merge my code in.

Unfortunately I'm quite constrained by time at the moment with a lot going on personally and some health issues as well. I did join the Slack group kindly set up my @itwars however time constraints have made it difficult to put in any valuable contribution on my part.

My role was created as a way of me advancing my career, mostly to write better quality Ansible but to also learn about Kubernetes. I'm still extremely new to Kubernetes as I don't work with it daily. This is why I display the warning about use of my role in production.

There are also valid reasons I can see for people not wanting to pick my role given the direction I'm intending on taking. I picked k3s as a project because at the time I don't think anyone else had created a role. I started a day or two after general release so as to not get influenced by other people's existing code so I can build the quality of my own code. I have always welcomed PRs though as this helps me learn and I've had some fantastic contributions. As this is a method for me to train myself I'm actually looking to go into the direction of implementing more validation checks into my role, which is intended to tell the operator of the role that everything is configured as expected and any deviations can be identified. The next step after that is to start looking at security best practices, implementing and validating those in the role. To me these are a sign of quality, however this may not be everyone's "cup of tea" (pardon the British expression).

TL;DR I'm under a lot of time constraints and I'm still in the early phases of my Ansible and Kubernetes journey so I'm not confident I can deliver real value.

rdxmb commented

Thanks, @xanmanning

As this is in the rancher-namespace, would somebody from rancher coordinate the refactoring-process, as I wrote above with pausing/blocking the commits to master or something like that?

@itwars As you created this project, could you do that?

Edit: I have had a look over https://github.com/PyratLabs/ansible-role-k3s . It seems to be a very powerful - and also a kind of complex project for me. I like the idea to have a simpler way within this repository. However, it would be interesting to listen to rancher and what they prefer for "their" repository.
Technically, the first step would be to create a new branch based on the actual master here.

rdxmb commented

seems there is no interest in doing that. Actually, I do not have time and priority for that anymore.

Are you folks open for related PRs?

Anyone fancy taking over as maintainer of my Ansible role? I don't have a lot of time to maintain it any more ๐Ÿ˜ž .

https://galaxy.ansible.com/xanmanning/k3s (Currently ranked number 1 k3s role by downloads on Ansible Galaxy).

Sorry to hijack, but if there's future interest in putting an official k3s Ansible role into galaxy I've got a fair following already. ๐Ÿคท

@xanmanning , I will look into your project and let you know.

@xanmanning I can take it. @jon-stumpf Do you want to pair on this?

If make sense we could also merge anything into here.

It would be a shame to see @xanmanning work left unmaintained, I vote we migrate his work here if any maintainer here is up for it.

@xanmanning How would you like us to proceed?

I'm probably not going to be much help in terms of direction as I'm really just looking for an out and wanted to offer the opportunity for the code to be maintained by a bigger community, be it the k3s team or the k8s@home folk. Otherwise I'm just going to have to abandon the project

Happy for any features you like to be picked out into this repo, or for ownership of my repo to be transferred and features from this repo merged in.

Probably depends on interest, workloads and appetite as to which route is taken and I'm keen to try and assist with the transition.

@xanmanning I volunteer. โœ‹

I can start the process by both reviewing the existing PRs in your repo and selecting which features make sense to start PRing here until k3s-io folks are confident with the changes or with taking it as the official repo. Until there, I will be happy to keep everything updated in your namespace. o/

Feel free to contact me via ayrton at riseup.net or via GitHub issues/discussions.

@xanmanning if all else fails you could make @ayr-ton and I co-maintainers of your current repo, that's if you don't mind us bugging you once a year if something should come up that needs your attention ;) It would be a shame to lose all your commit history, ansible galaxy downloads etc..

I am also worried about the current state of the issues and PRs on this repo not getting any love from the maintainers and I wish one of them would chime in with their thoughts so it's not a dead-end.

@onedr0p count on me to help with the PRs revision effort o/
So, reviewing the current plan:

  • Give a burst on the waiting revisions so we could move forward with current fixes and implementations
  • Once we get a stable flow, start making PRs from there to here.

On my side, I will give preference to anything that improves the flow for contributors (CI for the playbook, etc) or existing playbook flows that don't break any contract or idempotency.

Once we get a stable flow, start making PRs from there to here.

Honestly I feel we cannot make that decision until we get a maintainer of this repo on-board, without that your efforts might be for nothing.

I strongly feel the best course of action would be to have a @k3s-io team member fork @xanmanning ansible repo into a new repository (or for it to be transferred), deprecate this one and divvy out permissions to the new one. But all that takes coordination from maintainers if they want this to happen.

@onedr0p and @ayr-ton, I have reviewed all of the issues and PRs for this repo. Many can be closed. I have three PRs open and received no response to an email that I sent early last month. It would be good to get a new repo open under k3s-io so we could start fresh.

Hi folks,

When I've initiate this issue, it was just for a matter of being compliant with ansible galaxy pattern: when you

ansible-galaxy init dummy

It create a directories structure with empty yaml files:

dummy      โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ vars
                       โ”‚
                       โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ tests
                       โ”‚
                       โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ templates
                       โ”‚
                       โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ tasks
                       โ”‚
                       โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ meta
                       โ”‚
                       โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ handlers
                       โ”‚
                       โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ files
                       โ”‚
                       โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ defaults

So we must spread existing yaml files to thoses directories. And voilร !

@itwars Seems that the discussion evolved. We could keep discussing the ansible-galaxy scheme here and/or move the other discussions to new issues to keep this one focused.

Current threads:

  • Ansible Galaxy support for the current repo (the original issue)
  • https://galaxy.ansible.com/xanmanning/k3s maintainability as the most mature role we have for k3s instead of creating a new galaxy submission. If there are new topics/issues to discuss we can create an issue there.
  • Integrate the code from xanmanning/k3s here in small PRs (starting from the galaxy feature) or maintain a fork here as part of k3s-io repos officially (could be a new issue, but the decision is up to k3s-io/k3s-ansible core committers)

I'm comfortable with any directions. Is a matter of which opportunities both communities want to invest energy.

@onedr0p and @ayr-ton, do you want to discuss a roadmap?

Did this ever go anywhere? I see that https://github.com/PyratLabs/ansible-role-k3s still displays a help-wanted sign.