brooklyn-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bostko <...@git.apache.org>
Subject [GitHub] incubator-brooklyn pull request: Improve winrm docs
Date Fri, 18 Sep 2015 12:31:47 GMT
Github user bostko commented on a diff in the pull request:

    https://github.com/apache/incubator-brooklyn/pull/907#discussion_r39849538
  
    --- Diff: docs/guide/yaml/winrm/index.md ---
    @@ -115,40 +116,172 @@ This is only a very simple example. A core complex example can
be found in the [
     Brooklyn source code]({{ site.brooklyn.url.git }}/software/database/src/main/resources/org/apache/brooklyn/entity/database/mssql).
     
     
    -Known Limitations and Special Cases
    ------------------------------------
    +Tips and Tricks
    +---------------
    +
    +The best practices for other entities (e.g. using [VanillaSoftwareProcess](../custom-entities.html#vanilla-software-using-bash))
    +apply for WinRM as well.
    +
    +### Execution Phases
    +
    +Blueprint authors are strongly encouraged to provide an implementation for install, launch,
stop 
    +and checkRunning. These are vital for the generic effectors such as stopping and restarting
the 
    +process.
    +
    +### Powershell
    +
    +Powershell commands can be supplied directly using config options such as `launch.powershell.command`.
    +
    +### Rebooting
    +
    +Where a reboot is required as part of the entity setup, this can be configured using
    +config like `pre.install.reboot.required` and `install.reboot.required`. If required,
the 
    +installation commands can be split between the pre-install, install and post-install
phases
    +in order to do a reboot at the appropriate point of the VM setup.
    +
    +## Powershell scripts and configuration files on classpath
    +
    +Often, blueprints will require that (parameterized) scripts and configuration files are
available to be copied to the
    +target VM. These must be URLs resolvable from the Brooklyn instance, or on the Brooklyn
classpath. One simple way 
    +to achieve this is to compile the support files into a .jar, which is then added to AMP's
'dropins' folder. Alternatively, 
    +an OSGi bundle can be used, referenced from the catalog item. 
    +
    +Ensure that these scripts end each line with "\r\n", rather than just "\n".
    +
    +### Install Location
    +
    +Blueprint authors are encouraged to explicitly specify the full path for file uploads,
and 
    +for paths in their Powershell scripts (e.g. for installation, configuration files, log
files, etc).
    +
    +
    +### How and Why to re-authenticate within a powershell script
    +
    +Brooklyn will run powershell scripts by making a WinRM call over HTTP. For most scripts
this will work, however for
    +some scripts (e.g. MSSQL installation), this will fail even if the script can be run
locally (e.g. by using RDP to
    +connect to the machine and running the script manually)
    +
    +For example in the case of MS SQL server installation, there was no clear indication
of why this would not work. 
    +The only clue was a security exception in the installation log.
    +
    +When a script is run over WinRM over HTTP, the credentials under which the script are
run are marked as
    +'remote' credentials, which are prohibited from running certain security-related operations.
The solution was to obtain
    +a new set of credentials within the script and use those credentials to exeute the installer,
so this:
    --- End diff --
    
    type "execute"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message