none
Conditional Affiliate application SSO settings Deployment RRS feed

  • Question

  • Hi,

    I want to know if I can conditionally deploy SSO settings through BTDF. Meaning, once the settings are packaged in the MSI, I use Octopus Deploy to deploy this package to the BizTalk environments. I would like to know if there is an option to control if the SSO settings will be deployed or if they can be skipped.
    I might want the SSO settings to be deployed the first time and not needed to deploy them for the later deployments. IS there an way to control this.

    Regards,
    Ujjwal


    -Ujjwal

    Monday, September 19, 2016 9:23 AM

Answers

  • Hi Janardhan,

    I have got this configured as below.

      <Target Name="CustomPostDeployTarget">

        <Exec Command="&quot;$(DeployTools)\SSOSettingsFileImport.exe&quot; &quot;$(CustomSSOApplicationName)&quot; /settingsFile:&quot;$(SettingsFilePath)&quot; /userGroupName:&quot;$(SsoAppUserGroup)&quot; /adminGroupName:&quot;$(SsoAppAdminGroup)&quot;" WorkingDirectory="$(WorkingDirPath)\" Condition="$(ImportSSOSettings) == 'true'"/>

      </Target>

    ImportSSOSettings is a variable, which I am bringing in from the InstallSheildWizard.

      <SetEnvUIConfigItem>
        <PromptText>Should SSO Settings be imported?</PromptText>
        <PromptValue>false</PromptValue>
        <ValueType>Checkbox</ValueType>
        <EnvironmentVarName>ImportSSOSettings</EnvironmentVarName>
      </SetEnvUIConfigItem>

    This is working OK for me. Thanks for the pointers.

    Regards,

    Ujjwal


    -Ujjwal

    • Marked as answer by Angie Xu Friday, September 30, 2016 7:12 AM
    Wednesday, September 21, 2016 2:12 PM

All replies

  • Hi Ujjwal,

    Post first deployment if you wish to skip the SSO deployment in future deployments you can set <IncludeSSO> to false :

    <PropertyGroup>
     ...
     <IncludeSSO>false</IncludeSSO>
     ...
    </PropertyGroup>
    If you turn on <IncludeSSO>True in the btdfproj file, then ALL variables (key/value pairs) in the SettingsFileGenerator will be put into SSO.

    Then in future you you wish runtime configuration with SSO-backed storage without putting the values in the settings file (or at least not for all environments) then consider using the UpdateSSOConfigItem MSBuild task to create or update a particular name-value pair.


    <UpdateSSOConfigItem BizTalkAppName="$(BizTalkAppName)" SSOItemName="YourSSOItemName" SSOItemValue="ExplicitValueOrAnMSBuildPropertyReference" />


    Rachit Sikroria (Microsoft Azure MVP)

    Monday, September 19, 2016 6:16 PM
    Moderator
  • Hello Ujjwal,

    I Used Octopus deploy to deploy the BizTalk projects and we have seen some issues when doing this approach..creating SSO first time and updating next time etc...

    SO we have decided to DELETE the SSO application every time with the deployment and create it again which worked perfectly alight..

    In Octopus deploy create two steps one for delete SSO and one for create SSO.

    Thanks


    JB

    Monday, September 19, 2016 9:42 PM
  • Hi Janardhan,

    I have got this configured as below.

      <Target Name="CustomPostDeployTarget">

        <Exec Command="&quot;$(DeployTools)\SSOSettingsFileImport.exe&quot; &quot;$(CustomSSOApplicationName)&quot; /settingsFile:&quot;$(SettingsFilePath)&quot; /userGroupName:&quot;$(SsoAppUserGroup)&quot; /adminGroupName:&quot;$(SsoAppAdminGroup)&quot;" WorkingDirectory="$(WorkingDirPath)\" Condition="$(ImportSSOSettings) == 'true'"/>

      </Target>

    ImportSSOSettings is a variable, which I am bringing in from the InstallSheildWizard.

      <SetEnvUIConfigItem>
        <PromptText>Should SSO Settings be imported?</PromptText>
        <PromptValue>false</PromptValue>
        <ValueType>Checkbox</ValueType>
        <EnvironmentVarName>ImportSSOSettings</EnvironmentVarName>
      </SetEnvUIConfigItem>

    This is working OK for me. Thanks for the pointers.

    Regards,

    Ujjwal


    -Ujjwal

    • Marked as answer by Angie Xu Friday, September 30, 2016 7:12 AM
    Wednesday, September 21, 2016 2:12 PM
  • Hi Ujjwal,

    Good to know that it is working...Have you tested adding new entry to SSO and also modify a value to existing key in the SSO using custom targets?

    Thanks


    JB

    Wednesday, September 21, 2016 11:04 PM
  • I agree with Janardhan Bikka, the Deploy should be able to create the entire end-state in one operation when possible.

    Which means you should completely redeploy any SSO settings during install.  I would even extent that to other semi-permanent settings such as Event Sources.

    Basically, the result of a Deploy should be the same regardless if it's a fresh install or re-deploy.

    Thursday, September 22, 2016 2:09 AM
    Moderator