Skip to content

CML Lab Builder 2.1.0

Choose a tag to compare

@Specops13 Specops13 released this 21 Oct 01:27
· 33 commits to main since this release

CML Lab Builder 2.1.0 (formerly ENCOR Lab Builder)

The app has a new name, because not every lab is for ENCOR any more. The repo is now Specops13/cml-lab-builder. Old encore-lab-app links redirect.

How to get it

  • 1.7 to 2.0 users: this is a normal in-app update. The app shows CML Lab Builder 2.1.0 is ready: click Update now. From the command line, run ENCORLab update-install. The program and runtime are unchanged.
  • New users: download the Windows zip, the Linux tar.gz or the .deb (sudo apt install ./encorlab_2.1.0_amd64.deb). The .deb upgrades a 2.0.0 package in place.

Your data moves by itself

On the first start of 2.1.0 your data is copied:

  • From: %APPDATA%\encorlab or ~/.config/encorlab
  • To: %APPDATA%\cml-lab-builder or ~/.config/cml-lab-builder

Every file is checked by SHA-256. The saved keyring password is copied to the new name. A one-time note says Your data moved to ….

Nothing is deleted. The old folder stays, with a MOVED.txt note. Installed app updates (app/) also stay there, because the installed boot loader looks for them in that folder. Patches and rollback keep working.

If you roll back to 2.0, it still finds its data in the old folder. Files the old version writes there later are copied over on the next 2.1 start.

Changed

  • New name: CML Lab Builder appears in the UI, window title, help, reports, CLI and menu entry.
  • New file types: .cmllab (labs) and .cmlcourse (courses). .encorlab and .encorcourse files still import.
  • Library: now published in library/. The old labs/ folder is kept for 2.0 and older.
  • New command: cmllab (pip/source, and /usr/bin/cmllab in the .deb). encorlab still works.
  • Environment variables: CMLLAB_* variables are accepted. ENCOR_* still works.
  • Progress per track: a lab can set track: (the default is ENCOR). The ENCOR exam-domain view counts only ENCOR labs.

Fixed: NX-OS (nxosv9000) consoles, e.g. EVPN-VXLAN

  • Commands timing out after login: NX-OS puts a bare \r before its prompt (\r\r\n line endings). The prompt matcher needed a line start, so every command timed out after login.
  • Other fixes:
    • Escape codes are now stripped.
    • The console server's own consoles> prompt is no longer taken for a device prompt.
    • The app sends terminal width 511 (NX-OS rejects width 0).
    • It answers --More--, waits for slow output and answers the POAP and admin-password setup dialogs.
    • After the console exec-timeout it logs in again, trying the new NX-OS login setting first, then the device login, then admin/cisco and admin/admin.
  • Clear errors: a node that is not running says so. Every console error shows the reason and the last 20 console lines.
  • SSH host key: the UserWarning: Unknown ssh-rsa host key message is gone. The console server's key is now trusted on first use and stored in <data>/known_hosts. Settings shows its fingerprint and has a Forget host key button. If the key changes, you get a clear error.
  • New: Test console. In the lab view, test each node's console. It shows each stage (SSH, open node, prompt, login, command) and the raw last console lines.

Not renamed yet (comes with a later full release)

These keep their old names because 1.7–2.0 updaters depend on them:

  • the program file ENCORLab(.exe)
  • the asset names
  • the .deb package encorlab and /opt/encorlab
  • encorlab-patch-*.zip
  • the ENCOR-<lab> lab titles in CML

See CHANGELOG.md. Verify downloads with SHA256SUMS.