Overview
NetDevOps
  • Introduction
  • CXTM Basics
  • CXTM Projects
  • CXTM Test Cases
  • CXTM Test Automation
  • Revisit Imported Test Cases
  • CXTM Batches
  • NetDevOps
  • CXTM Reporting
  • CXTM References
  • Bonus: Project Users
  • Bonus: CXTM REST API

This section of the lab introduces you to the concept of NetDevOps which is the idea of applying DevOps principles to network infrastructure and teams. First, you will explore Git and setup your base git repo's main branch. Then, you will create your config change branch to create your very own Continuous Integration (CI) pipeline to deploy and test an Infrastructure-as-Code (IaC) change to your test network. Prior to the configuration change, you will leverage your first batch of test cases you created to perform a quick baseline check. Then, the configuration change will bring up OSPF neighobrs between your XR9Kv and C8Kv routers. Once that peering is established, iBGP neighbors will be configured between your CSR1Kv and N9Kv to your C8Kv. Following the routing changes to your network, you will leverage your routing batch of test cases to validate the new state of your network is functioning as expected.

Upon the successful execution of this pipeline, your configuration change branch is ready to be merged to your main branch. Doing this is outside the scope of this lab as this action, in reality, could perform one of two things: 1) Continuous Delivery (CD) where the pipeline is waiting on you to perform that merger through the merge or pull request process to inturn make and test the configuration changes to your production network; i.e. during a scheduled change or maintenance window 2) Continuous Deployment (also CD) where the pipeline would not wait for your interaction but instead upon success of configuraton change and testing against your test network, automatically rollout the changes (and testing) to your production network.

You will use Git for version control of your Infrastructure as Code (IaC) / Network as Code (NaC). The Git tooling for this lab will make use of GitLab. GitLab has been deployed for the lab and all users share the same instance. Additionally, an empty repository has been created for you. These two pre-requisites have been done for you in this lab for the sake of time. If interested in discusssing details on setup, please reach out to an instructor.


To get started, you will login to the GitLab instance with your username to view your empty repo. You will be populating your repo in the next section with all of the development work you have been doing to build out your staging fabric up to this point in the lab. You will also create some additional files for your prod fabric that are similar to the files used for knowing how to connect to your staging fabric.


Step 1 - Login to GitLab

Login to the GitLab instance by clicking the URL below or copying the URL into a new tab in your browser window:

Login using the information below:

  • Username: pod25
  • Password: cisco.123
  • Then click Sign in


Step 2 - Review Empty Lab Repo

Once logged into GitLab, your screen should look similar to the screenshot below. This is what an empty Git repo looks like in GitLab as well as in GitHub if you were to use that for source control. Empty repos provide you the steps and information to intialize and commit code to the repo. This will be the action you perform in the next section.

Contine to the next section to start creating directories and files to initialize your repo