Sitecore-Instance-Manager icon indicating copy to clipboard operation
Sitecore-Instance-Manager copied to clipboard

Start SIM with a command-line manifest file

Open Eldblom-zz opened this issue 9 years ago • 5 comments

The point of this is to allow projects to simply store a manifest file describing the instance name, sitecore version, modules etc. to install. When setting up a fresh developer machine on the project, the manifest is retrieved with the source code and when double clicking the manifest file (e.g. extension .sim) would bring up SIM and automatically set up the instance for the project (with all the right versions and modules).

Eldblom-zz avatar Aug 28 '15 07:08 Eldblom-zz

It is planned for 2.0, it is not easy to make it with current implementation. It should be, however, easy to implement in SIM CMD, but it is very old and out of date.

AlenPelin avatar Aug 28 '15 07:08 AlenPelin

Proposed manifest format. @Eldblom any comments?

{
  "Version": "1.4",
  "Parameters": {
    "rootFolderPath": "The root folder for the installation. For example: C:\\inetpub\\wwwroot\\cms",
    "instanceNamePrefix": "Instance name prefix that will be used for creating web farm.For example:\r\nHaving instanceNamePrefix = cms, after installation following instances will be created:\r\n1. http://cms-cm1\r\n2. http://cms-cm2\r\n3. http://cms-pub\r\n4. http://cms-cd1\r\nhttp://cms-cd2"
  },
  "Properties": {
    "platform": "8.0 rev. 150529"
  },
  "Instances": [
    {
      "Type": "Databases",
      "Path": "$(rootFolderPath)-databases",
      "Properties": {
        "databases": {
          "core": "Sitecore.Core.MDF",
          "master": "Sitecore.Master.MDF",
          "web": "Sitecore.Web.MDF",
          "live": "Sitecore.Web.MDF"
        }
      }
    },
    {
      "Type": "Node",
      "Path": "$(rootFolderPath)-cm1-www",
      "Properties": {
        "dataFolder": "$(rootFolderPath)-cm1-data", 
        "bindings": [
          "http://{instanceNamePrefix)-cm1:80"
        ],
        "connectionStrings": [
          "core",
          "master",
          "web"
        ]
      }
    },
    {
      "Type": "Node",
      "Path": "$(rootFolderPath)-cm2-www",
      "Properties": {
        "dataFolder": "$(rootFolderPath)-cm2-data",
        "bindings": [
          "http://{instanceNamePrefix)-cm2:80"
        ],
        "connectionStrings": [
          "core",
          "master",
          "web"
        ]
      }
    },
    {
      "Type": "Node",
      "Path": "$(rootFolderPath)-pub-www",
      "Properties": {
        "dataFolder": "$(rootFolderPath)-pub-data",
        "bindings": [
          "http://{instanceNamePrefix)-pub:80"
        ],
        "connectionStrings": [
          "core",
          "master",
          "web",
          "live"
        ]
      }
    },
    {
      "Type": "Node",
      "Path": "$(rootFolderPath)-cd1-www",
      "Properties": {
        "dataFolder": "$(rootFolderPath)-cd1-data",
        "bindings": [
          "http://{instanceNamePrefix)-cd1:80"
        ],
        "connectionStrings": [
          "core",
          "live"
        ]  
      }
    },
    {
      "Type": "Node",
      "Path": "$(rootFolderPath)-cd2-www",
      "Properties": {
        "dataFolder": "$(rootFolderPath)-cd2-data",
        "bindings": [
          "http://{instanceNamePrefix)-cd2:80"
        ],
        "connectionStrings": [
          "core",
          "live"
        ]
      }
    }
  ]
}

AlenPelin avatar Sep 21 '15 05:09 AlenPelin

Look pretty straight forward, although ideally the manifest should cover the full capabilities of the tool (modules etc). Also, some of the settings could be left out as they should be picked up from the SIM tool settings, e.g. the manifest should not contain the location of the website and databases as this is up to the local machine settings - although it should be able to override the machine settings.

On 21 Sep 2015, at 3:43 PM, Alen Pelin [email protected] wrote:

Proposed manifest format. @Eldblom any comments?

{ "Version": "1.4", "Parameters": { "rootFolderPath": "The root folder for the installation. For example: C:\inetpub\wwwroot\cms", "instanceNamePrefix": "Instance name prefix that will be used for creating web farm.For example:\r\nHaving instanceNamePrefix as "cms", after installation following instances will be created:\r\n1. http://cms-cm1\r\n2. http://cms-cm2\r\n3. http://cms-pub\r\n4. http://cms-cd1\r\nhttp://cms-cd2 }, "Properties": { "platform": "8.0 rev. 150529" } "Instances": [ { "Type": "Databases", "Path": "{rootFolderPath}-databases", "Properties": { "databases": { "core": "Sitecore.Core.MDF", "master": "Sitecore.Master.MDF", "web": "Sitecore.Web.MDF", "live": "Sitecore.Web.MDF" } } }, { "Type": "Node" "Path": "{rootFolderPath}-cm1-www", "Properties": { "dataFolder": "{rootFolderPath}-cm1-data", "bindings": [ "http://{instanceNamePrefix}-cm1:80" ], "connectionStrings": [ "core", "master", "web" ] } }, { "Type": "Node" "Path": "{rootFolderPath}-cm2-www", "Properties": { "dataFolder": "{rootFolderPath}-cm2-data", "bindings": [ "http://{instanceNamePrefix}-cm2:80" ], "connectionStrings": [ "core", "master", "web" ] } }, { "Type": "Node" "Path": "{rootFolderPath}-pub-www", "Properties": { "dataFolder": "{rootFolderPath}-pub-data", "bindings": [ "http://{instanceNamePrefix}-pub:80" ], "connectionStrings": [ "core", "master", "web", "live" ] } }, { "Type": "Node" "Path": "{rootFolderPath}-cd1-www", "Properties": { "dataFolder": "{rootFolderPath}-cd1-data", "bindings": [ "http://{instanceNamePrefix}-cd1:80" ], "connectionStrings": [ "core", "live" ]
} }, { "Type": "Node" "Path": "{rootFolderPath}-cd2-www", "Properties": { "dataFolder": "{rootFolderPath}-cd2-data", "bindings": [ "http://{instanceNamePrefix}-cd2:80" ], "connectionStrings": [ "core", "live" ] } } ] } — Reply to this email directly or view it on GitHub.

Eldblom-zz avatar Sep 30 '15 21:09 Eldblom-zz

Is this worth working on now or is 2.0 close enough to make this wasted effort?

peterpociask avatar Feb 15 '18 15:02 peterpociask

Unfortunately SIM 2.0 development was stopped due to be replaced by SIF.

I do not recommend to develop new features to SIM as it is in sustained state.

AlenPelin avatar Feb 15 '18 22:02 AlenPelin