People, by nature, don’t like repetitive tasks. Even worse repetitive tasks will often lead to humans making mistakes: someone forgets to copy a file, someone forgets to set a setting. To manage growth and taking cost out while managing your IT landscape, automation will be key. It will improve accountability, efficiency and predictability, while reducing cost, variability and risk.

Our team has been working hard on a number of libraries to help our customers automate and manage deployments of SDL Knowledge Center. The libraries are available as PowerShell modules. PowerShell is a powerful scripting tool that is becoming the ad-hoc standard for anyone managing and automating a Microsoft ecosystem.

These libraries are made available as open source initiatives on GitHub. When companies think of open source, these days they think "business agility," a quality they increasingly value above all others in the fast-changing marketplace… and that’s not different for SDL.

The following libraries are available:

  • ISHRemote
    PowerShell module that provides a scripting alternative for our Content Manager API. Everything that will be possible through the API will be possible through PowerShell. This module will help you to automate, for example, publishing documents, changing data already in the database, importing content, exporting metadata, provisioning users, and so on. For more info, see https://github.com/sdl/ISHRemote.
  • ISHBootstrap
    PowerShell script repository that aims at fully automating the installation and configuration of SDL Knowledge Center. Ultimate goal is to be able to spin up new Knowledge Center servers on demand and take them down when needed. Initially, the module will focus on the Content Manager part. For more info, see https://github.com/Sarafian/ISHBootstrap.
  • ISHDeploy
    PowerShell module that provides the necessary tooling to configure Content Manager of SDL Knowledge Center in an automated way. Our goal is to allow continuous deployments and to prevent configuration drift. This module uses the “Code as Configuration” principle as a guideline. “Code as Configuration” means that you will need to express your configuration in a PowerShell script and that you no longer need to know which configuration files to change, which services to restart, and so on. Configuration scripts will be cross-version compliant as long as the referenced feature is compatible with that Content Manager release. For more info, see https://github.com/sdl/ISHDeploy.

Ooh, and finally, open source wouldn’t be open source if weren’t welcoming contributions from the community.

Anonymous
  • thank you for sharing.

    With regards to ISHBootstrap, please consider ISHBootstrapDemo (github.com/.../ISHBootstrapDemo) if you want to get a quick demo.

    ISHBootstrapDemo is a small repository that showcases how to bootstrap locally an newly created Windows environment. The only requirement is adding a couple of values into a json file, such as the connection string.

    In the repository you will find even a copy-paste option that allows to skip downloading or saving actions. Just paste the small PowerShell fragment to the administrator console and let the magic happen as described on your json configuration file.

    Perfect to setup a new demo environment.