# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ### Added - Cloud images for `create_vm_from_cloud_init` are downloaded by Proxmox itself when the node has an active storage with content type `import` (Proxmox 8.2+): `download-url` with checksum verification, then `import-from` as the root disk. The image no longer passes through the node's root filesystem. Files are named `netork--.` and reused; Ubuntu's `.img` is stored as `.qcow2`. Without such a storage, or for an image type Proxmox cannot import, the SSH download into `/var/lib/vz/template/netork-images` is used as before. - `HypervisorDriver` contract methods `start_vm`, `stop_vm`, `reboot_vm`, `suspend_vm` and `get_vm_config`. They accept a VM's name or vmid, raise `ValueError`/`RuntimeError` instead of returning a result dict, and wait for the Proxmox task to finish. `power_vm` is unchanged. - Snapshot methods `get_vm_snapshots`, `create_vm_snapshot`, `delete_vm_snapshot`, `rollback_vm_snapshot` for VMs and containers (containers never save RAM state). - `reboot_host()` restarts the node through the API instead of SSH. ### Changed - `get_vms()` reports `vmid` as a string (`"100"`), following napalm-device-types 2.0. Ordering stays numeric. ## [0.1.0] - 2024-01-01 ### Added - Initial release of the Proxmox VE NAPALM driver - Support for classic Linux networking (`/etc/network/interfaces`, Linux bridges) - Support for Proxmox SDN (zones: VLAN, QinQ, VXLAN, EVPN; VNets and subnets) - Support for Open vSwitch (OVS) bridges, bonds, and internal ports - Password and API token authentication via `proxmoxer` - Implemented NAPALM methods: - `open`, `close`, `is_alive` - `get_facts` - `get_interfaces`, `get_interfaces_ip`, `get_interfaces_counters` - `get_environment` (CPU, memory, temperature sensors) - `get_arp_table` (via `/proc/net/arp`) - `get_mac_address_table` (Linux bridge fdb + OVS appctl) - `get_vlans` (SDN VNet tags + `bridge vlan show`) - `get_network_instances` (SDN zones as NAPALM network instances) - `get_ntp_servers`, `get_ntp_stats` - `get_snmp_information` - `get_users` - `get_config`, `load_merge_candidate`, `load_replace_candidate` - `compare_config`, `commit_config`, `discard_config`, `rollback` - `get_lldp_neighbors`, `get_lldp_neighbors_detail` - `get_ipv6_neighbors_table` - `ping`, `traceroute`, `cli` - `get_route_to` - 149 unit tests with ~79% code coverage - Full type annotations