05-13-2026 02:15 AM
Hi all,
I recently wanted to start using a GitHub repository for my workflow management, especially to keep things consistent across different Meraki organizations. It took me a little bit of trial and error to get it to work properly, so I wanted to share my experience here.
Just a quick disclaimer: I'm not saying this is the absolute "single source of truth," but this is what I discovered and how it finally worked for me. I hope writing this out helps somebody in the future! Also, my conclusions might only be partially correct, so if anyone wants to add their two cents or clarify anything, you are more than welcome.
A huge thanks to this YouTube video which was the only place I could find this specific information!
Here is the breakdown of how the Git names, imports, and folder structures need to be set up:
If you are using an optional folder to house your workflows, it must be defined during the Git repository definition in your workspace [Automation > Workspace > Workflows > Actions > Manage Git Repositories]
Code Path
The naming convention is very strict. The structure should look like this:
optional_folder/ ├── Workflow1__workflow_unique_name/ │ └── workflow_unique_name.json ├── Workflow2__workflow_unique_name/ │ └── workflow_unique_name.json
The Rules:
To put this into perspective, let's use the official Cisco DevNet Workflows Automation repo (https://github.com/CiscoDevNet/CiscoWorkflowsAutomation) as an example.
Repository Definition:
Resulting File Structure: Based on the above definition, the file structure looks like this:
Meraki/ ├── BlinkMerakiDeviceLEDs__definition_workflow_02NXTSAQL5ZNK3kEJpVUecfDz1ZNss1zGXd/ │ └── definition_workflow_02NXTSAQL5ZNK3kEJpVUecfDz1ZNss1zGXd.json ├── CheckAvailableFirmwareForNetwork__definition_workflow_02M30GYJJSYJL0wQPPnkQgIcavBkG6796mF/ │ └── definition_workflow_02M30GYJJSYJL0wQPPnkQgIcavBkG6796mF.json
Once your repository is set up, you can easily bring it in using the import option. Just navigate to: Automation > Workspace > Workflows > Actions > Import Workflow
From there, select the Git tab, choose your repo, pick the file and the version, and happy importing!
A quick note on this: Until I nailed down the exact file structure and naming conventions I mentioned above, the "Filename" dropdown menu simply wouldn't populate for me when using my repo. I did some minor testing with other naming conventions without any luck. In the end, I just mimicked what was already available in the Cisco DevNet repo, and it worked perfectly!
Hopefully, having this written out here will save someone some time and make it much easier to find when Googling for a solution. Let me know if this works for you, or if you have any other tips or corrections to share!
Cheers!
05-13-2026 11:47 AM
Awesome information.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide