Commit Graph

107 Commits

Author SHA1 Message Date
Joe Clarke
48e7ba46b3 Ignore .vscode. 2022-12-10 20:10:41 -05:00
Joe Clarke
0b50c0e683 Add CiscoLive module with sample topologies. 2022-12-10 20:10:02 -05:00
CML-TAC
2191ef1b8a Fixed NXOSv 9500 148 directory (#30)
Rename directory.
2022-11-30 08:03:34 -05:00
oliveruhlar
f9b6e0d205 Fix for sim.video.memory (#29)
* change sim.video.memory range

* set default sim.video.memory

Co-authored-by: Oliver Uhlar <ouhlar@cisco.com>
2022-11-29 13:50:41 -05:00
Joe Clarke
c66dbf84b3 Remove trailing whitespace. 2022-11-27 12:34:16 -05:00
oliveruhlar
82da71d916 Validate action and some fixes for node definitions (#28)
* Validation by schema action for node definitions

* fix sim.video.model for windows 10 nd

* change action checkout version

* fix node definitions (do not explicitly set `boot_disk_size` as this may break booting.  Instead, let libvirt use the actual size of the backing disk)

Co-authored-by: Oliver Uhlar <ouhlar@cisco.com>
2022-11-27 12:32:31 -05:00
CML-TAC
0de8f83503 Fixed Win Server 2019 node definition and added NXOSv 9500 (#26)
* Create README.MD

adding palo alto node and image definition

* Update README.MD

* Created readme

Created readme for Windows 10 node definition

* fixed typo

* added node def

* Delete README.md

* Delete winServer2019.yaml

* Add files via upload

* updated

* windows 2019

* added server 2019

* updated readme

* updated

* added node definitions

* added readme

* added node def

* added readme

* added node def

* added readme

* added node def

* added readme

* fixed typo

* added node def

* already exists

* updated fields

* Update winServer2019.yaml

Fixed Windows Server 2019 node definition

* Update winServer2019.yaml

fixed video model

* Create nxosv9500-148.yaml

Added NXOSv 9500 128 ports

* Create readme.md

Added readme

* Update readme.md

fixed formatting

* Delete README.MD

removed duplicate readme

* Update readme.md

Fixed Typo

* Rename node-definitions/cisco/NXOSv 9500 128 ports/nxosv9500-148.yaml to node-definitions/cisco/NXOSv 9500 148 ports/nxosv9500-148.yaml

Fixed directory name
2022-11-26 07:53:06 -05:00
shawnjury
b837227eac Breakout tool update add mac support (#25)
* breakout update and MAC OS support

Added getAllNodes function to cmlApiCalls.py.
Added Mac OS support into main.py
Added new logic to get all nodes, find label and node_definition, sort by label and add the SecureCRT ini files.  This matched what the breakout tool provided for my machine.

* Update main.py

* Using Lab_title

Changed to use the LabTitle for the Directory/CRT.  This makes it more human readable when you have multiple labs.
2022-11-03 06:30:35 -04:00
Alexander Deca
2cf2c8af59 Update README.MD for PAN-OS (#24)
* Updated README.md

* Updated README

* update
2022-10-16 11:40:00 -04:00
Marc
5765a01b71 adding arista veos definition (#22)
* initial veos yaml build

* adding veos directory and README

* removing vEOS from outside of parent dir

* fixing README

* modifing README and YAML settings for definition
2022-07-07 06:35:05 -04:00
Joe Clarke
d8b4d03839 Add support for clustering.
Submitted by:	Tomas Mikuska
2022-05-18 09:07:01 -04:00
sgherdao
c991ec19e4 breakout to iTerm2 script (#21)
Add a script to generate iTerm2 configurations from the breakout tool console connections.
2022-05-11 16:14:44 -04:00
sgherdao
b636b84985 added brk2tmuxp.py script (#20)
This script provides a way to turn the CML breakout labs config into tmux configuration for easy console access.
2022-05-05 16:48:21 -04:00
Joe Clarke
7451c5ae7d Allow for migration between 2.2 and 2.3+.
Submitted by:	Tomas Mikuska
2022-04-27 17:41:51 -04:00
Joe Clarke
d6cd9ecb96 Delete README.MD
Uppercase changes like this break weird filesystems like macOS.
2022-04-20 11:19:04 -04:00
Joe Clarke
0852bd0350 Add definitions for the DevNet Expert CWS. 2022-04-20 11:07:35 -04:00
CML-TAC
d2f142619c added wsa, esa, juniper qfx, hpe, windows 10. (#19)
* Create README.MD

adding palo alto node and image definition

* Update README.MD

* Created readme

Created readme for Windows 10 node definition

* fixed typo

* added node def

* Delete README.md

* Delete winServer2019.yaml

* Add files via upload

* updated

* windows 2019

* added server 2019

* updated readme

* updated

* added node definitions

* added readme

* added node def

* added readme

* added node def

* added readme

* added node def

* added readme

* fixed typo

* added node def

* already exists

* updated fields
2022-04-13 10:03:49 -04:00
Joe Clarke
34f9af8475 Set for release. 2022-02-20 15:23:44 -05:00
Joe Clarke
eff63cda6b New migration (#17)
* Begin support for CentOS > Ubuntu migration.

* Don't rely on the script being on the source host.  Copy it there each
  time.
* Remove the prep and unprep options.  OpenSSH must be enabled on the
  remote host.
* Allow for moving from 2.2.2 to 2.3.0.
* Fail if all labs cannot be stopped.

* WIP: Switch to rsync for migration

Support broader migration targets and handle the case where libvirt
might not be an overlay (in 2.3).

TODO: Need to support non-overlay for offline migration and need to call
the actual migration script once the restore/migration is complete.

* Format and fix some function use.

* Mount the overlay on the right machine.

* Begin to add offline support.

TODO: Determine the correct place to extract refplat images.

* Map LIBVIRT_IMAGES to LIBVIRT_IMAGES.

* Don't assume the script is in /usr/local/bin.

* Don't wait for labs to stop when we don't stop them.

* Fix a number of bugs in migration.

* Fix a bug in the use of `cut`.

While here, make rsync show progress and ensure we use rsync as root on
the remote machine.

* Refactor when the data migration is done.

* Make sure we copy the right local directories.

Also, fix rsync command line to enable compression.

* Fix the conversion of libvirt from CentOS to Ubuntu.

* Make sure migration mode is properly passed.

Also, handle image copying correctly.

* Check to see if we're migrating from the local host.

* Make sure we check an IP.

* Check that hostname resolution is working.

* Allow alembic to handle the libvirt domain changes.

* Fix permissions of node disks.

Also, don't mask errors.

* Add a comment.

* Flesh out support for offline migration.

* Make the backup file very explicit.

* Don't try and mount the overlay if we don't need it.

Also add support for running without confirmation.

* Fix some issues spotted by shellcheck.

* Update docs for version migration.

* Fix logic error to allow for migration.

* Expose tar output so people can see progress.

* Add progress for tar via checkpoints.

Use checksum verification to decide what to rsync.

* Provide a better means to show progress.

Submitted by:	Justin Guagliata

* Remove errant '-'.

* Remove the 'z'.

* This needs to be exported.

* Add a single occurrence for each tar extract command.

* Some fixes.

* Move back to straight tar to fix estimates
* Fix double extract on restore
* Uniform progress indicators for backup and restore

Submitted by:	Justin Guagliata

* Add some signal traps.

* Add some echoes to clean up the output.

* Only remove the backup file on error.

* Use grep on a string properly.

* Give more verbosity to rsync.

* Some fixes from Tomas.

* Exclude *.orig and *.rej files that may be found in node defs.
* Make sure we only migrate mapped dirs when doing migration.

* Add support for migrating libvirt networks.

* Added Palo Alto

* ignore vscode workspace

* added readme and renamed directory

* removed vscode workspace file

* update

* rename directory palo-alto

* edited while loop to account for deleted devices

this will max out at 100 nodes added. 
to add more than 100 nodes, edit line 26

* updated while loop to account for deleted devices

this will now check all nodes from n0 to n99. 
I found that deleted nodes breaks the previous script because after 1 node was not found, it ended. 
to check for nodes higher than n99, edit line 24

* Update main.py

* updated to account for deleted nodes

* Add Cumulus VX image

* Updated contributer list

* Add Charlie Fenwick's cool use case around Jupyter.

This use case demonstrates how a Jupyter notebook can be used to
provision a new lab from zero (with a nod toward Ansible as the way to
configure it).

* fixed readability / adjusted for login.yaml

* Create login.yaml

* added support for more default devices

added support for:
unmanaged switches
asav
ftdv
server
alpine
coreos
desktop
ubuntu

* Make user configurable.

Also, do not migrate the default network.

* Add support for migrating libvirt ifaces.

* Add the --get-ifaces command.

* Update docs with --user option.

* Support iface-list differences.

* Fix numerous issues.

* Add a missing sudo.

* Make sure we account for migration when checking for space.

* Fix typo.

Reported by:	Tomas Mikuska

* Fix some markdown issues and clarify bridge migration.

* More markdown consistency fixes.

* Add the SD-WAN as code use case.

* This is done as part of cleanup.

* Add version info and a --version flag for displaying it.

* Add the ability to update the script itself from GitHub.

* Use an equals expression.

* Fix version comparison.

* Fix --version comflict.

* Bump version.

* Document the --update flag.

* Make the URL a bit more modular.

Co-authored-by: Alexander Deca <alexander@deca-consulting.be>
Co-authored-by: M35a2 <49795550+M35a2@users.noreply.github.com>
2022-02-08 12:12:48 -05:00
Joe Clarke
47923879c3 Add SD-WAN as code use case. 2021-12-07 09:25:03 -05:00
Joe Clarke
c1ff7e37cd Merge pull request #15 from M35a2/master
added support for trex
2021-12-05 11:44:18 -05:00
M35a2
96ba859d14 added support for trex
added support for trex -- line 78
2021-12-03 13:38:03 -07:00
Joe Clarke
a9bf89be01 Merge pull request #14 from M35a2/master
support for more default devices
2021-10-24 13:07:32 -04:00
M35a2
8adac17bae added support for more default devices
added support for:
unmanaged switches
asav
ftdv
server
alpine
coreos
desktop
ubuntu
2021-10-20 15:40:57 -06:00
M35a2
19185fda09 Create login.yaml 2021-10-20 15:39:08 -06:00
M35a2
8bdc99128f fixed readability / adjusted for login.yaml 2021-10-20 15:38:09 -06:00
Joe Clarke
f513b0f134 Add Charlie Fenwick's cool use case around Jupyter.
This use case demonstrates how a Jupyter notebook can be used to
provision a new lab from zero (with a nod toward Ansible as the way to
configure it).
2021-10-07 13:13:26 -04:00
Joe Clarke
086a9ab8bc Merge pull request #12 from alexanderdeca/master
Add Cumulus VX image
2021-09-23 16:39:24 -04:00
Alexander Deca
425d630505 Updated contributer list 2021-09-23 10:55:43 +02:00
Alexander Deca
38af2043b0 Add Cumulus VX image 2021-09-21 09:18:45 +02:00
Joe Clarke
314ce6f40b Merge pull request #11 from M35a2/master
edited to account for deleted devices
2021-09-20 16:48:36 -04:00
M35a2
8a3e1f0374 updated to account for deleted nodes 2021-09-20 13:16:53 -06:00
M35a2
a739da1d29 Update main.py 2021-09-20 13:12:13 -06:00
M35a2
5231d69a0a updated while loop to account for deleted devices
this will now check all nodes from n0 to n99. 
I found that deleted nodes breaks the previous script because after 1 node was not found, it ended. 
to check for nodes higher than n99, edit line 24
2021-09-20 12:09:47 -06:00
M35a2
92db690c6f edited while loop to account for deleted devices
this will max out at 100 nodes added. 
to add more than 100 nodes, edit line 26
2021-09-20 12:02:07 -06:00
Joe Clarke
44313308ce Merge pull request #10 from alexanderdeca/master
Added Palo Alto
2021-09-16 14:51:50 -04:00
Alexander Deca
4d214f4f5d rename directory palo-alto 2021-09-16 20:29:54 +02:00
Alexander Deca
6ec3ab68b6 update 2021-09-16 19:08:21 +02:00
Alexander Deca
9a961fa8ed removed vscode workspace file 2021-09-16 19:07:40 +02:00
Alexander Deca
d3d571d82c added readme and renamed directory 2021-09-16 18:56:04 +02:00
Alexander Deca
5770cb5709 ignore vscode workspace 2021-09-16 18:25:32 +02:00
Alexander Deca
c4d909930b Added Palo Alto 2021-09-16 17:43:06 +02:00
Joe Clarke
fa0a5d338c Add the Juniper vMX node and image defs.
This is EXPERIMENTAL at this point.
2021-08-27 16:58:45 -04:00
Joe Clarke
32b135e9a8 Merge pull request #9 from M35a2/master
adding microsoft server 2019
2021-08-16 10:07:04 -04:00
ben
d69360d10f adding microsoft server 2019 2021-08-13 12:46:56 -06:00
Joe Clarke
e3c9b2ed51 Merge pull request #8 from M35a2/master
python script to create secureCRT sessions for breakout
2021-08-13 11:32:11 -04:00
ben
3eeda3e13d removed ... ill re-add it later... 2021-08-12 20:00:00 -06:00
ben
5b4d1aab6b adding win server 2019 as node def 2021-08-12 12:15:44 -06:00
ben
1be93cd1e8 commit 2021-08-12 11:14:36 -06:00
ben
1432ff4352 commit 2021-08-12 11:09:36 -06:00