Skip to main content

Deploying an SDD project

When you are satisfied with your project, it’s time to deploy it. There are 2 ways to deploy your project: Cosaic cloud or local. Each way has its advantages and disadvantages, depending on your use case.

Cloud publishing

Publishing to the Cosaic cloud is the easier of the two methods. Finsemble does everything for you—all you need to do is click a button. Sharing the installer is as easy as sharing a link. Because cloud publishing is so straightforward, we recommend that you use this method for simple deployments if you can. We follow the standard industry practices to keep your project secure.

When you publish to the cloud, your executable and all the assets reside on the cloud.

note

During a proof of concept (POC), our engineers likely publish their projects to the Cosaic cloud.

Limitations of cloud publishing

As we have just seen, publishing to the cloud is easy and convenient. However, cloud publishing has some limitations.

Company policy. The most frequently occurring limitation is your own policies. If your IT department requires that you deploy all the software on premises, you can’t deploy to the cloud unless they make an exception for you. In most companies, such an exception is unlikely.

Access through a URL. Deployment to the cloud means that your executable and all your assets are behind a randomly generated URL. This means that anyone that has this URL can access what you publish. If this makes you uneasy, publish locally.

Internet access required to start Finsemble. When you publish to a cloud, your customers will need internet access to start Finsemble.

Making changes is hard. If you deploy Finsemble and then you want to make changes to the assets and the executable, you must do so from the original installation that created the deployment.

Limited customization. You can deploy to the cloud any customizations that you can access via SDD. For many changes that require the SDK, cloud deployment might still be possible, but we haven’t tested such a deployment. Use at your own risk.

Signing. You can’t sign your installer.

To publish to the cloud

  1. In the Smart Desktop Designer, navigate to the Dashboard page. Open your current project.

  2. Click “Publish”.

  3. The SDD displays a URL where you can get a link to the installer. Collect this link. The cloud takes about 10 to 15 minutes to generate the installer.

Local deployment

Most Finsemble customers deploy locally. The primary reason for this is the IT department policy.

There are 2 important advantages of deploying locally. First, you have full control over where you host Finsemble. You must have access to a web server to host your deployment, but if your firm already deploys products locally, this is not usually a problem.

The other advantage is that you have full access to all features available in the SDK, which is not possible with SDD.

To publish locally

  1. Open the Smart Desktop Designer and navigate to the Dashboard page. Open your current project. Make sure your project has a name, such as “My Project”.

    note

    When you create a new project, Finsemble names it “default”. Change this name to something that is meaningful to you.

  2. Click “Select folder” and choose a location for your project folder. If you intend to collaborate on the project with other people, you need to save it somewhere where they can access it. You can save the project to a OneDrive folder or on a file server. Or, simply save it to your Documents folder. If you open the folder you just selected, the contents should look similar to this:

    The project folder

    Depending on your folder settings, you might not see the .gitignore file.

  3. Open a bash or command prompt and navigate to move the directory of that new project folder. Run yarn install or npm install. Now your folder looks like this:

    The project folder after running the install command

    If you used npm, you’ll have a package-lock.json file instead of a yarn.lock file.

  4. If necessary, move the public folder to the server you want to deploy from. Make sure that that location is accessible using the http protocol, such as on a web server.

  5. Open the package.json file, and change the URL locations to the server you moved your public folder to.

    tip

    If you are testing this process but don’t have access to a web server, change the URL to “localhost:3375”.

  6. Run yarn makeInstaller or npm run makeInstaller. Now your folder looks like this:

    The project folder after making the installer

And your “installer” folder should look like this:

The installer folder

Instead of “My Project”, you’ll see your project name.

::: note

When running the makeInstaller script with arguments using npm, be sure to include --

(for example `npm run makeInstaller -- --environment production`). 

:::

  1. If you changed your manifestUrl to localhost:3375, run yarn finsemble server or npm run finsemble server at this time.
  1. Run installer/My Project.exe to launch your smart desktop.

    If something goes wrong

    Occasionally you will run into a problem while following the steps to publish your project. You might see an error message like this:

    The error message that likely indicates a wrong or missing link

    Although the message talks about connectivity issues, the most likely cause is that you pointed your manifest to a wrong link. You need to edit your package.json file. Its manifest is pointing to a non-existent link. Go back to step #4 and verify that the location is accessible.

If you get this error:

The error message about the unreachable manifest. You pointed your package.json at a local server, but you didn’t start your local server. Quit out of that dialog, go to your project folder, and run yarn finsemble server. When you see the message “Listening on port 3375”, you can try to run your .exe again.

See also

Deploying your smart desktop