2 Replies Latest reply: Sep 14, 2011 4:14 PM by user602376 RSS

    Best SES Migration Strategy Between Environments (Dev -> QA -> Prod)

      We have a fairly large number of database data sources in our SES implementation. These data sources do contain environment-specific configuration settings, such as JDBC connection string, database user/password, etc. We also have a custom XLST and CSS for the UI layer.

      I wonder what strategies there are for moving the SES configuration settings (data sources, search attributes, XSLT/CSS, identity manager plug-in, etc) between different environments, such as Development to QA, or QA to Production?

      Re-creating these data sources by-hand is contrary to established best practices at the client as it is very error prone.

      I understand there is a data backup and recovery for restoring SES after a crash, but am not sure if this would work for migrating between environments, or if there is another way of doing this.

      Any advice/suggestions anyone has is appreciated!
        • 1. Re: Best SES Migration Strategy Between Environments (Dev -> QA -> Prod)
          You can use the "searchadminctl" in the bin directory of SES to export/import the definition & associated parameters of the SES objects
          The program will both work as a interactive command prompt, or you can script it so that it doesn't prompt for anything.
          It works by using xml files

          Export process:

          searchadminctl -p <password> -c http://<Source servername>:<port>/search/ws/admin/SearchAdmin source -export "<source name>" -configFile <filelocation>/<filename>.xml

          The -c option allows you to connect to any other SES server

          This will put the source definition in a file.It will have environment specific things and hence we need to parse the XML file to removing these values, such as Database Connection Strings.

          For Passwords, we need to update the entry and set the encryption to false and While importing, Put the unencrypted password.
          <parameter name="Password"><value encrypted="false"></value></parameter

          Import Process:

          Then for import, it is the same command but with the term "create" or "update" where "export" is. Also replace the source SES server with the target server url and password where we need to create the SES objects.

          • 2. Re: Best SES Migration Strategy Between Environments (Dev -> QA -> Prod)
            We are facing similar issues as well. We are unable to migrate Search Attributes (we created quite a few for our environment).

            searchadminctl does not provide any option to export search attributes. So, looks like we will need to do this manually.