Managing Lab Repositories

In Cisco Modeling Labs, users can create their own lab from scratch, import a lab from a CML topology YAML file, or import a lab from the list of sample labs in Tools ‣ Sample Labs. When you install CML, it includes a set of sample labs, but you can update, augment, or replace that list of sample labs on your CML server.

Sample labs in CML are associated with a lab repository, which is linked to a Git repository. You can define your own lab repositories and link them to public or private Git repositories. You synchronize the content from the Git repository and cache it on your CML controller, which makes the labs available for your users to browse and import within the CML UI.

The default sample lab repository is named cml-community, and it points to the folder lab-topologies in the Git repository https://github.com/CiscoDevNet/cml-community.

Note

  • CML always uses the default branch when it synchronizes the content from a lab repository.

  • The catalog of sample labs on your CML server are only updated when a CML administrator synchronizes the associated lab repository. After changes or new labs have been added to the associated Git repository, you must return to the Lab Repositories page to synchronize the lab repository to make those changes and new sample labs available on your CML instance.

  • If your network requires proxies to access the Internet, you will probably need to configure proxies on your CML server before you can synchronize the cml-community and other lab repositories. See How do I configure proxy in CML? in the CML FAQ for information on configuring a proxy.

Procedure


Log in to the CML UI as a user with administrator privileges.

Click the Tools ‣ System Administration menu item.

On the System Administration page, click Lab Repository.

The Lab Repositories page is shown with a table of your CML server’s lab repositories.

Lab Repositories Administration Page

Lab Repositories Administration Page

Click Add to add a new lab repository.

Enter the Name of the lab reposiory, which is just a label that will be used to identify the lab repository.

Choose a descriptive name for your lab repository. When users browse sample labs on your CML server, CML shows them the lab name and the repository name. If you configure multiple lab repositories on your CML server, users can also filter the sample lab list to show only the sample labs from a specific lab repository.

Emter the Git URL for the lab repository.

Enter the Folder for the lab repository.

If the Git repository contains content other than sample labs, you can use the Folder property to specify which folder in the repository contains the sample labs. If your sample labs are contained under one directory (and its sub-directories), setting the Folder property will make CML faster at working with the lab repository and synchronizing labs from it.

Click Submit to create the lab repository.

Note

You cannot edit existing repositories (e.g., name, URL, folder). To update a lab repository, remove and re-create the repository.

After adding a lab repository, click the Refresh All button to synchronize the content and pull it down to the CML controller.

Repository content must be refreshed manually after adding a new repository. Only labs in the configured and synchronized repositories will appear in the catalog of labs under Tools ‣ Sample Labs.


Once you have added and refreshed your repository, its labs are cached locally on your CML server. The new sample labs are immediately available for users of your CML instance to browse and import.

Related Topics