Fast and easy deployment with WiX 3.10 for Visual Studio 2015

Nino Crudele's Blog

Wix is a great toolset which able to provide all we need to create a great deployment, I’m preparing the setup for jitGate, now in private beta test and I’m using WiX 3.10, this version support Visual Studio 2015, the installation is very simple and the 3.10 build is available here.

Essentially WiX is a toolset completely based on top of Windows Installer and it is completely base on XML scripting, here the name Windows Installer XML Toolset, WiX Toolset.

WiX is free and open source and the framework is able to cover all the large number of features and options offered by Microsoft Windows Installer, it also provide a large number of tool to made easy creating our deployment database and WiX already offers a large number of setup dialog forms ready and we can also customize them.

WiX is able to offer a great WPF setup interfaces, the Wix setup…

View original post 173 more words

Turning hyper-v on and off (VT-x is not available while running boot2docker on VirtualBox)

boot2docker_VT-x_not-available

Today I was trying boot2docker, and I was not able to start the docker engine, so I tried to run the virtual machine directly from VirtualBox and I saw that the problem was “VT-x is not available”. Searching in internet I found that this is because you don’t have the proper hardware (VT-x is not supported by your main board), or you have Hyper-V installed and active, this was my case.

So, when I would like to run docker I need to run this command and turn off hyper-v (this could also give you more performance, so if you schedule to don’t use VMs in your day work it’s good to have that supervisor disabled):

bcdedit /set hypervisorlaunchtype off

then you need to reboot, and yes it is boring!

The following command to turn it back on:

bcdedit /set hypervisorlaunchtype auto (or on, on my computer was set to auto)

and reboot.

Adding a PaaS Cloud Service (Web, Woker Role) to a Virtual Network

A PaaS cloud service, web or worker role, can be added in a Virtual Network only by changing its service configuration file (ServiceConfiguration.Cloud.cscfg).

You need to add the NetworkConfiguration node just after the Role node as follow:

<?xml version="1.0" encoding="utf-16"?>
<ServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" serviceName="MyAzureApplication" osFamily="3" osVersion="*" schemaVersion="2013-03.2.0" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
    <Role name="MyMvcWebRole">
        <ConfigurationSettings>
            <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx" />
        </ConfigurationSettings>
        <Instances count="1" />
    </Role>
    <NetworkConfiguration>
        <VirtualNetworkSite name="myazure-vnet"/>
        <AddressAssignments>
            <InstanceAddress roleName="MyMvcWebRole">
                <Subnets>
                    <Subnet name="MainSubnet"/>
                </Subnets>
            </InstanceAddress>
        </AddressAssignments>
    </NetworkConfiguration>
</ServiceConfiguration>

Visual Studio: Create self-signed certificate for ClickOnce (.pfx)

When you want to create a ClickOnce deployment you should sign the automatically generated manifest using an Authenticode certificate, providing a certificate took from the local computer cert store or passing a .pfx file.

To create an homemade self-signed .pfx file (for testing purpose only!!!), open the “Visual Studio Command Promt (2010)” or the “Developer Command Prompt for VS2012” and run the following two steps:

makecert.exe -sv TestCodeSign.pvk -n “CN=Test Code Sign” TestCodeSign.cer

pvk2pfx.exe -pvk TestCodeSign.pvk -spc TestCodeSign.cer -pfx TestCodeSign.pfx -po password

If you want, you can also omit the password.

Now that you have your own homemade certificate you can use it, especially useful while using command-line tools like mage (or mageUI with GUI support).

Stay Tuned! 😉