Bug 847049

Summary: Bundling doesn't work in Domain mode
Product: [JBoss] JBoss Operations Network Reporter: Roger Hui <rhui>
Component: ProvisioningAssignee: Lukas Krejci <lkrejci>
Status: CLOSED DUPLICATE QA Contact: Mike Foley <mfoley>
Severity: high Docs Contact:
Priority: medium    
Version: JON 3.1.0CC: dowoods, hrupp, loleary, myarboro
Target Milestone: ---   
Target Release: JON 3.3.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-05-21 17:37:05 UTC Type: Feature Request
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Roger Hui 2012-08-09 14:19:55 UTC
Description of problem:
how they can deploy applications to domain nodes in a way without that many human interactions? Same thing for Datasources? 

There isn't a concept of deployments in Domain mode for EAP 6, and the alternatives is to create a child in deployment and create an operation to deploy it to my server groups. The point of bundling is to have a deployment package and have it deploy to all the nodes in the cluster.

Comment 3 Heiko W. Rupp 2012-09-26 20:05:26 UTC
Options that I see (the list may not be complete of course):

1) copy content directly to managed servers
 + simple, almost works with existing bundles  (hash generation is
 missing)
 - hash code generation is missing
 - hash code algorithm in as7 may change
 - we will not hit servers on platforms without RHQ agent
 + users can use their existing semantics of grouping AS-Servers
 together to deploy bundles

2a) add the as7 api to bundles and add a new <rhq:xxx> ant-target to
support
 + deploy via api will reach the right servers
 + deploy via api will reach servers on boxes without agents
 - very tight coupling of bundles to a specific plugin; changes in
 as7-plugin code will require bundle changes
 - only for as7 ; what if the next FuseSource product e.g. has a
 different api?
 - users need to be educated to deploy to a rhq-group which contains
 server-groups only

2b) write recipes that just lay down the file on the host with the domain controller and then use the jboss-cli to do the deploy magic.
 + No changing of the bundling mechanism
 - users need to be educated to deploy to a rhq-group which contains the platform of the DC only
 - each recipe needs to have ant-calls embedded that call something like "/bin/sh $AS/bin/jboss-cli.sh --deploy /tmp/foo..."
 - not an integrated version that makes it easy for users.
 - depending on process ownership, passing credentials to the called script
  is not easily possible and requires having them in clear in the recipes.
 

3) add general functionality that bundles can delegate the content
deploy / update / removal to the actual plugin
 - most work
 + cleanest solution
 + may be reused by drift
 + the actual deploy / update / removal code stays inside the as7-plugin
 - will need some call-backs from the bundle-agent-plugin in the PC,
 which forwards to the actual (as7) plugin
 - users need to be educated to deploy to a rhq-group which contains
 server-groups only


For me option 3 is the most attractive, as it allows for extensions in the future when other products with APIs come along (JSR 88 anyone? :-)

Comment 4 mark yarborough 2012-11-06 20:05:09 UTC
Per 3.1.2 triage with loleary, mfoley, ccrouch, asantos: Okay to move to JON 3.2.

Comment 10 Lukas Krejci 2014-05-21 17:37:05 UTC
Closing as this is covered by BZ 1050014, too.

*** This bug has been marked as a duplicate of bug 1050014 ***