Thursday, March 15, 2018

Error : Parameter Type 'ActionPreference' is not supported.

If you create a new command and you press the button "discover parameters", you might get the error "Parameter Type 'ActionPreference' is not supported".

Don't panic, there is an easy fix.

Thursday, March 1, 2018

Convert ALL snapmirror DP relations to XDP with WFA

I was asked to automate the conversion of all snapmirror relations from DP to XDP.
So here is a workflow (version 4.1) that should work as an example.

It asks for the new mirror-vault snapmirror policy name and lists your snapmirror relations (all of them)

Tuesday, February 27, 2018

WFA 4.2 has gone GA

OnCommand Workflow Automation 4.2 GA has been posted to the NSS Site.

Workflow Automation 4.2GA includes the following features and enhancements:

Tuesday, February 13, 2018

WFA - Replace the SSL Certificate

In WFA you probably use https, and if you are a good sysadmin, you replace the SSL certificate.

I took me quite some time to replace my certificate with my "wildcard certificate" I use in my lab-environment.

Here is how I did it.

Saturday, February 10, 2018

Wfa - Execute MySql NonQuery PowerShell function

You may or may not know that WFA, when coding in PowerShell, comes with the CmdLet "Invoke-MySqlQuery" (aliased as imysql for the gurus).

The cmdlet comes in handy very often but is built for "QueryCommands".
What I mean by that is that it assumes that your Query will return "Records".

But what if you want to execute an insert, update or delete statement ?

Tuesday, February 6, 2018

WFA maintenance workflow (powershell only)

If you are working with WFA quite a lot, there are some maintenance tasks that might be handy.  And they are either not possible in the GUI, or they take a lot of manual work.

  • Clean ALL execution logs
  • Clean ALL reservations
  • Enable Full RBAC
here is a workflow to do this...

Thursday, January 25, 2018

Advanced SQL queries in WFA Filters

[Article from Christian Bauernfeind]

In a workflow we built recently, we needed to know the combined size of all LUNs in a given volume.  The SQL to calculate that number is fairly straightforward:

SELECT,SUM (lun.size_mb)
FROM cm_storage.volume JOIN cm_storage.lun ON lun.volume_id =
GROUP BY lun.volume_id

However, how can we return this information.  And why would this even be a big deal ?

To answer this question in detail, you should first understand how WFA filters work.

How to protect all categories in bulk

WFA comes with a Cdot pack that contains a bunch of demo workflows.  You can hide them in the portal by going to "administration - WFA configuration - Advanced - show workflows" and then uncheck the packs you don't want to see.

However, from the rest API, these workflows are still visible.  If you truly want to hide them, you should add every workflow to a category and then restrict every category.

Wednesday, January 17, 2018

WFA No snap-ins have been registered for Windows PowerShell version 5

This is around for a while, but still not fixed apparently.

Problem :
if you want Vcenter integration with WFA and you installed the latest Vmware PowerCLI. You will get the error "No snap-ins have been registered for Windows PowerShell version 5".

Explanation :
Vmware (finally) changed their PowerCli names to "module" instead of the old "snapin". In WFA however, we are still looking for "snapin".

Easy fix :
Just goto the WFA install folder, under /posh/ you will find a WFAWrapper.ps1. Do a search replace of the word "snapin" with "module" and the problem will be fixed.

Thursday, December 7, 2017

How to create WFA datasources with Python, c# or any other language

A colleague of mine had an issue with one of his datasources.  The issue wasn't the point, it was how he had created the datasource that was inspiring.  He actually created his CSV files outside of WFA and then in his datasource just copied them in.

$qtree_export_policy = "D:\WFA_Datasources\Qtree_Export_Policy.csv"
Get-WFALogger -message("Grabbing the file - " + $qtree_export_policy)
Copy-Item $qtree_export_policy .\

This made me think...