2.2. Deploy a Profile

Deploy a profile to the child container

Having created the child container, as described in Section 2.1, “Create a Fabric”, you can now deploy a profile to it.
Note
Do not deploy profiles that have the same PID defined with different values. If you do, the fabric uses the values of the last one deployed.
To deploy a profile to the container, follow these steps:
  1. Open a terminal and cd to the $FUSE_HOME/quickstarts/beginner/camel-log directory.
  2. Build the camel-log quickstart by entering this command:
    $ mvn clean install
  3. Upload the camel-log quickstart profile to the fabric container by entering this command:
    $ mvn fabric8:deploy
    Note
    If this is the first time you've run this command, it prompts you to enter the username and password to use to log into the fabric container.
  4. Deploy the quickstarts-beginner-camel.log profile into the child container by entering this console command:
    JBossFuse:karaf@root> fabric:container-change-profile child quickstarts-beginner-camel.log
  5. Verify that the camel-log quickstart profile, quickstarts-beginner-camel.log, was uploaded successfully by entering the fabric:status console command:
    JBossFuse:karaf@root> fabric:status
    [profile]                           [instances]    [health]
    fabric                              1              100%
    fabric-ensemble-0000-1              1              100%
    jboss-fuse-full                     1              100%
    quickstarts-beginner-camel.log 1 100%
  6. Verify that the quickstarts-beginner-camel.log profile deployed successfully to the child container, issuing the fabric:container-list command:
    JBossFuse:karaf@root> fabric:container-list
    until the child container's status changes to success:
    [id]     [version]  [type]  [connected]  [profiles]                      [provision status]
    root*    1.0        karaf   yes          fabric                          success           
                                             fabric-ensemble-0000-1                            
                                             jboss-fuse-full                                                                       
      child  1.0        karaf   yes          quickstarts-beginner-camel.log  success

View the sample output

When it is running, the quickstarts-beginner-camel.log profile writes a message to the container's log every five seconds. To verify that the profile is running properly, you can look for these messages in the child container's log, as follows:
  1. Connect to the child container, by entering the following console command:
    JBossFuse:karaf@root> container-connect child
  2. After logging on to the child container, view the child container's log using the log:tail command, as follows:
    JBossFuse:karaf@root> log:tail
    You should see some output like the following:
    2016-06-16 11:47:51,012 | INFO  | #2 - timer://foo | log-route
        | ? ? | 153 - org.apache.camel.camel-core - 2.17.1.redhat-630187
        | >>> Hello from Fabric based Camel route! : child
    2016-06-16 11:47:56,011 | INFO  | #2 - timer://foo | log-route
        | ? ? | 153 - org.apache.camel.camel-core - 2.17.1.redhat-630187
        | >>> Hello from Fabric based Camel route! : child
  3. Type Ctrl-C to exit the log view and return to the child container's console prompt.
  4. Type Ctrl-D to exit the child container's console, which returns you to the root container's console.