redhat-cop / openshift-applier

Used to apply OpenShift objects to an OpenShift Cluster
Apache License 2.0
102 stars 61 forks source link

How might we accelerate adoption of applier? #23

Open etsauer opened 6 years ago

etsauer commented 6 years ago

I'm starting a thread to start to brainstorm/propose how we can go about increasing the adoption of applier, both on the app and ops sides.

Some things on my mind at the moment are:

@redhat-cop/casl @redhat-cop/cant-contain-this @redhat-cop/developer-workflow

logandonley commented 6 years ago

I like the idea of some labs to go through which would demonstrate how to build out the templates & inventory from scratch, rather than using something like the labs-ci-cd project. Labs-ci-cd is great for once you already know how to use the applier, but I think it introduces too much all at once if you've never used it before.

I'd be happy to help write/edit some of these labs once we get an idea of what we want to cover, since I go through the process of teaching the applier on all the projects I'm on.

etsauer commented 6 years ago

@logandonley sounds great. Let's figure out an mvp skeleton of some kind that we can get merged into the repo so that we can do PRs in small chunks.

sherl0cks commented 6 years ago

This is precisely the approach the Labs enablement took. Check out https://rht-labs.github.io/enablement-docs/#/1-the-manual-menace/README and https://github.com/rht-labs/enablement-docs/tree/master/exercises/1-the-manual-menace before doing anything else.

That said, the biggest barrier to adoption IMO is support status. We need have this part of the product or at least the Mike Barrett's of the world saying this type of approach is ideal/preferred.

rdebeasi commented 6 years ago

+1 to all of this. labs-ci-cd is great if you just want to pull a cake out of the oven, but we should give folks the recipe too.

Also, it would be fantastic to have documentation on the convention of using an .openshift-applier directory, and maybe a simple example application with applier directories and Jenkinsfiles. There's documentation on openshift_cluster_content, but the idea of putting some of this content in an applier directory is is "tribal knowledge."

@pcarney8, @nmalvankar, and I are working on a "booster" project that could double as a sample of how to use the applier.

pcarney8 commented 6 years ago

what would be crazy awesome is an interactive tutorial like the RHOAR stuff.

sabre1041 commented 6 years ago

@pcarney8 katacoda would be pretty nifty

etsauer commented 6 years ago

@sherl0cks I know i've harped on this before, but I don't see a big need to productize this. We should teach "applier" as if its a pattern, not a tool, and use it to enable on the oc process | oc apply concepts and infrastructure as code practices with Ansible via Git, and in that way, we can avoid "support" type conversations.

sherl0cks commented 6 years ago

I know where you stand on that.

You asked how we drive adoption. Literally the only push back I have ever gotten with the approach is support status.

Its entirely possible that this group decides that enablement work will have larger impact than removing the support detraction.

On Tue, May 22, 2018, 12:16 Eric Sauer notifications@github.com wrote:

@sherl0cks https://github.com/sherl0cks I know i've harped on this before, but I don't see a big need to productize this. We should teach "applier" as if its a pattern, not a tool, and use it to enable on the oc process | oc apply concepts and infrastructure as code practices with Ansible via Git, and in that way, we can avoid "support" type conversations.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/redhat-cop/openshift-applier/issues/23#issuecomment-391089751, or mute the thread https://github.com/notifications/unsubscribe-auth/ABRfYeq0mJQJmh7PZmpfYPhpTujF8vz3ks5t1FXbgaJpZM4UIqBk .

pcarney8 commented 6 years ago

@sabre1041 exactly, i was thinking similar like this: https://learn.openshift.com/middleware/rhoar-getting-started-spring :+1: which is powered by katacoda!

etsauer commented 6 years ago

@pcarney8 @sabre1041 agree. a katacoda quickstart would be wicked.

logandonley commented 6 years ago

Has anyone here worked on a katacoda with an OCP environment before? I'm not seeing it as an option on here: https://www.katacoda.com/docs/scenarios/environments, though clearly OpenShift katacodas exist.

On Tue, May 22, 2018 at 3:38 PM Eric Sauer notifications@github.com wrote:

@pcarney8 https://github.com/pcarney8 @sabre1041 https://github.com/sabre1041 agree. a katacoda quickstart would be wicked.

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/redhat-cop/openshift-applier/issues/23#issuecomment-391115080, or mute the thread https://github.com/notifications/unsubscribe-auth/AYtGPKyhGANmkwT--XoSnXtgpO1i7DZvks5t1GktgaJpZM4UIqBk .

sherl0cks commented 6 years ago

@springdo be advised of this thread.

Please, please, please be mindful of maintenance folks. If katacoda is really deemed as that valuable (honestly I struggle to see the value over just spinning up minishift if needed), then we need to integrate that with Labs enablement, not build a separate offering. We simply do not have the luxury to duplicate efforts.

pcarney8 commented 6 years ago

@logandonley https://www.katacoda.com/courses/openshift this what you're looking for?

logandonley commented 6 years ago

@pcarney8 When you go to create a katacoda course you need to specify the environment, but OpenShift doesn't show up as an option on the list, despite those courses (as you linked) existing. So I'd like to see the source of one of those.

But I think as @sherl0cks said, katacoda might be overkill. And at least for me, I would find it more valuable if it was a lab I could do at the beginning of residencies with the customer to get them on board with how it works (ideally run in our residency cluster).

sabre1041 commented 6 years ago

@logandonley @pcarney8 I agree. I would recommend to start just providing a simple getting started walkthrough. This could consist of the following:

etsauer commented 6 years ago

Latest directory structure proposal from conversation with @pcarney8 and @logandonley :

project_root/
  .openshift/ <-- aligns with pre-existing conventions in the ecosystem (e.g. Launch, Fabric8)
    templates/
    params/
    projects/
    ... etc. ...
  .applier/ - traditional Ansible directory structure.
    inventory/
    playbooks/
    roles/
oybed commented 6 years ago

@etsauer I realize I am missing quite a bit here from being on vacation, but a few questions for starters:

pcarney8 commented 6 years ago

@oybed I really like the logical separation between where OpenShift-y things live and where Ansible-y things live. it reinforces to me that you can take the .openshift directory and do whatever you want with it. run it by hand, whatever, but then having the .applier dir allows you to automate these things

etsauer commented 6 years ago

@oybed

etsauer commented 6 years ago

All that to said, I don't ever intend to treat of of the directory stucture stuff as "These are the rules", just "this is a convention to help you build a mental model"

springdo commented 6 years ago

Bit late to the game on this one as was away last week delivering the enablement but here are some of my thoughts.....

pcarney8 commented 5 years ago

Since we already have 3 katacoda scenarios for the applier can we please link to them in this repo?

rdebeasi commented 5 years ago

@pcarney8 I've proposed tutorial links in #90.