I'm wondering about a feature of Alteryx Connect. It looks like the Connect loaders are configured to easily load workflows saved within an Alteryx Gallery.
However, I can't seem to find a way to load files saved outside of the Gallery in a similar manner.
For a number of scheduling dependency needs, we are leveraging the AlteryxEngineCMD to execute workflows that are saved directly on-disk on our Alteryx Server, outside of the Gallery environment. Is there a way to load these workflows into Alteryx Connect out of the box?
@Claje The Alteryx Loader for Connect reads the workflow metadata from the Gallery database. If the workflows you are wanting to load to Connect are not in Gallery they cannot be loaded using this loader. You can load them manually to connect using the + button in the bottom right corner, or you can load them from the file system using the File Loader. This would require changing the extensions for the file loader to include the workflow extensions, and the workflows would be loaded to the Data Sources section under Files instead of to the Alteryx Workflows section.
@Claje clicking on the + on the bottom left of connect and adding a new asset is a good way to add a new asset, however if you want to automate the process and schedule updates you might want to look at using the alteryx loader as a base and modifying it to scrape alteryx workflows from your desktop.
Think of the Alteryx Loader as an ETL workflow which extracts metadata from the Alteryx Gallery via API, transforms it and loads it to Alterys Connect via API. Its not too difficult to modify the API input to point to your local alteryx files via the directory tool. Bear in mind certain metadata attributes like version number or number of times a workflow is run will not be available to you as that information is only kept in server.
Below is an example of a workflow I created that scrapes a folder on my computer and uploads the metadata to connect.
You will notice that I have only populated the first of four inputs as the first input contains information relating to the alteryx asset itself while the others are used to build the NEXUS view based on connections to other assets like input and output files and databases (Something I have not done in the example below).
NOTE: Metadata attributes like "DESCRIPTION" and "OWNER_ID" can be scraped from your workflow by opening your workflow as an XML file. This is hidden inside the macro which I have provided a screenshot of below.
With the latest release of Connect - 2018.2, we should be able to pick up Macros located on shared drives if these are available to the Gallery server at the time of load.
My company has about 600 workflows and macros stored on a network drive. Our Alteryx Server Scheduler runs these workflows On Disk. I kinda just want to point a loader at the network drive and have it load all the workflows in one go.
The only option I'm seeing right now is to use the file loader and the workflows will be added as datasources. Does this mean the metadata (which tables each workflow reads and writes to) is not extracted?
Currently, the Gallery loader can only load workflows published to the Gallery as we are utilizing the Gallery's APIs.
Also, we are relying on quite a few metadata information pieces from Gallery to load them into Connect.
My suggestion would be to actually start the Gallery on Server and load workflows into it, even if for the purpose of Connect load.
@joe_lipski the Files loader can be used to harvest the workflows from a disk but we won't parse any workflow relevant metadata information. that means no owners, no high-level metadata (owner, last run), and no lineage. the workflow would just be registered as a file together with the UNC path to it. That's it.