From TeamCity to VSTS – My DevOps Journey – Part 2

In my last post I commenced my journey to integrate our old deployment process with the new shiny VSTS Release Management system. The whole story was about leveraging processes that were already working for us and the flow looked something like this:

deploy_pipeline

The previous step in the process involved getting TeamCity to grab the build output from VSTS and deploy it using our old deployment PowerShell. With this working, my next goal was to be able to trigger the whole process from Release Management so I could either pick the build I wanted to deploy or trigger it from a successful build in VSTS.

I thought, this is going to be mad easy.

Alas, it turned out to be a little more difficult…

Continue reading…

From TeamCity to VSTS – My DevOps Journey

My team recently migrated to Visual Studio Team Services and as a result we have a goal to consolidate our deployment processes using the powerful Release Management framework. While this is the goal, for the moment I was interested in somehow getting our current build process in Team City to work along side our shiny new ALM provider.

Visual Studio Team Services and TeamCity. You would think they would go together like chocolate and lobster but with some work I was able to achieve a little unity…

Continue reading…

Simulating Surface Pro 3 in the Simulator

I’m working on a project at the moment that needs to run on a Surface Pro 3. During testing there were some weird redraw issues that only appeared on the Surface 3.   We were unable to reproduce this in our dev environments because  the simulator that comes with Visual Studio doesn’t have a screen size that is compatible with the Surface 3.

For reference, the surface 3 has these specs:

  • Screen Size: 12″
  • Resolution: 2160×1330
  • Scaling Factor: 140%

But fortunately, it turns out you can actually create your own profiles for any device you want in the simulator. Basically you just create an XML file to describe the screen settings and then put into a directory to be picked up by the simulator when it starts.

Step 1: Create a xml configuration file that describes the resolution

It should look like this (the content is pretty self explanatory):

<?xml version="1.0" encoding="UTF-8"?>
<ArrayOfHardwareConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <HardwareConfiguration>
        <Name>12-2160x1440</Name>
        <DisplayName>Surface Pro 3 - 12" 2160 x 1440 (3:2, 140%)</DisplayName>
        <Resolution>
            <Height>1440</Height>
            <Width>2160</Width>
        </Resolution>
        <DeviceSize>12</DeviceSize>
        <DeviceScaleFactor>140</DeviceScaleFactor>
    </HardwareConfiguration>
</ArrayOfHardwareConfiguration>

 Step 2: Put the file in a location for the simulator to use it

The file name needs to start with HardwareConfigurations. For example, HardwareConfigurations-Surface3.xml

Put the file in the directory:

C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Simulator\12.0\HardwareConfigurations\

(You may need to create the HardwareConfigurations directory).

Step 3: Win!

Restart the Simulator, select the new device and you’re good to go!

ScreenSizeMenu

 

Log me off damn it!!!

One of the coolest new features in the Retail POS for AX 2012 R2 is the ability to host custom controls and entirely change it’s look and feel. These custom controls implement IPOSCustomControl and import a reference to IApplication using MEF. That way you have access to the transaction and can effectively run any POS operation you like. Shane Erstad has written a great introduction to Adding a Custom User Control to the POS if you require further information on the topic.

The problem arises when you first try to use the Log Off operation…

Continue reading…

Rebuilding custom Build activities for TFS 2012

At our company Fred I’ve sort of inherited the role of TFS administrator. So as part of this I get to deal with upgrading our TFS server to 2012; and as part of the upgrade we need to ensure that Builds continue to work, So since a 2010 Build machine will NOT work with a 2012 Team Foundation Server, we need to ensure our builds work on a 2012 build machine!

p.s. Jason Prickett has a few hints that help to get started if you’re thinking about going through a TFS upgrade – http://blogs.msdn.com/b/jpricket/archive/2012/10/24/upgrading-your-build-definitions-from-tfs2010-to-tfs2012.aspx

Continue reading…

You're doing it wrong!!! Well some of it at least…

My current role has me involved in several projects utilising the Microsoft Dyanamics AX framework. As part of my work I wanted to use Team Foundation Server to automate a build procedure that wasn’t specifically .NET and would require a custom build template to pull it off. I originally wrote our build templates for other projects using Team Foundation Server 2005. We had never bothered to upgrade them to the Windows Workflow style build templates but had rather utilised upgrade templates to get them to work. I had done a small amount of work with the new style of build templates but I needed to know more so I started doing some serious research on what had changed.

Continue reading…

Adding a toolbar button to restore window layouts in VS2010

I use multiple monitors at my place of work to spread my development environment over the largest area possible. I have the code window on my left monitor and all of the other tool windows like Solution Explorer on my right monitor. This gives me the largest amount of work space possible for me to write code with as well as having quick access to the solution explorer and property windows.

Continue reading…