Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
v0.7.1
PVE API client
Fixed
- Removed unused imports.
v0.7.0
PVE API wrapper
Added
service installcommand to install a services that runs the server automatically.POST /custom-api/v1/lxc/{id}/exec-asyncendpoint.GET /custom-api/v1/cmd/{id}endpoint.
Fixed
- custom handlers header content type.
- missing custom handlers write response call on errors.
PVE API client
Added
POST /custom-api/v1/lxc/{id}/exec-asyncimplementation asPVE.LXC.ExecAsync.GET /custom-api/v1/cmd/{id}implementation asPVE.LXC.GetCMDResult.GET /nodes/{node}/lxc/{id}/configimplementation asPVE.LXC.Update.POST /nodes/{node}/lxc/{vmid}/cloneimplementation asPVE.LXC.Clone.POST /nodes/{node}/lxc/{vmid}/templateimplementation asPVE.LXC.CreateTemplate.
v0.6.1
PVE API client
Fixed
- Fixed app version.
- LXC features properties are now pointes.
v0.6.0
PVE API wrapper
Added
GET /custom-api/v1/lxc/{id}/ipendpoint.POST /custom-api/v1/lxc/{id}/execendpoint.
Fixed
- pve api wrapper host option is now
--host. - pve api wrapper port option is now
--port.
PVE API client
Added
GET /access/permissionsimplementation asPVE.Access.GetPermissions.GET /cluster/resourcesimplementation asPVE.Cluster.GetVMIDs,PVE.Cluster.GetRandomVMIDandPVE.Cluster.IsVMIDAvailable.GET /nodes/{node}/firewall/rulesimplementation asPVE.Node.Firewall.GetRule.POST /nodes/{node}/firewall/rulesimplementation asPVE.Node.Firewall.NewRule.DELETE /nodes/{node}/firewall/rules/{pos}implementation asPVE.Node.Firewall.DeleteRuleandPVE.Node.Firewall.DeleteRuleByPos.GET /nodes/{node}/lxc/{id}/interfacesimplementation asPVE.LXC.GetInterfacesandPVE.LXC.GetInterface.GET /nodes/{node}/lxc/{id}/status/currentimplementation asPVE.LXC.GetStatus.POST /nodes/{node}/lxc/{id}/status/rebootimplementation asPVE.LXC.Reboot.POST /nodes/{node}/lxc/{id}/status/resumeimplementation asPVE.LXC.Resume.POST /nodes/{node}/lxc/{id}/status/shutdownimplementation asPVE.LXC.Shutdown.POST /nodes/{node}/lxc/{id}/status/startimplementation asPVE.LXC.Start.POST /nodes/{node}/lxc/{id}/status/stopimplementation asPVE.LXC.Stop.POST /custom-api/v1/lxc/{id}/execimplementation asPVE.LXC.Exec.
Fixed
PVE.LXC.Createhostname assignment.PVE.LXC.Createnet assignment.PVE.LXC.Createmultiple networks support.
Changed
PVE.LXC.Createrequest'sFeaturesproperty is now a struct.
v0.5.0
PVE API wrapper
Added
- new http server that redirects http requests to the desired proxmox instance.
- proxmox error response wrapping into
pkg/errors.HTTPError.
PVE API client
Added
/nodes/:node/lxc/:vmidimplementations.
Fixed
- pve api result assignment.
PVE.versionhttp method.PVE.Lxc.GetAllempty result.
v0.4.0
Changed
- Cluster endpoints implementations are now located under
PVE.Clusterfield. - Cluster Firewall endpoints implementations are now located under
PVE.Cluster.Firewallfield. - Node endpoints implementations are now located under
PVE.Nodefield. - Node Firewall endpoints implementations are now located under
PVE.Node.Firewallfield. - Node APT endpoints implementations are now located under
PVE.Node.APTfield. - Node Storage endpoints implementations are now located under
PVE.Node.Storagefield. - LXC endpoints implementations are now located under
PVE.LXCfield.
v0.3.0
Added
- Node's APT endpoints implementations.
v0.2.1
Fixed
GetClusterFirewallAliaseshttp method is now get.GetClusterFirewallIPSethttp method is now get.GetClusterFirewallRulesurl path is now correct.
v0.2.0
Added
- Helpers:
BoolToIntconvertstrueto1andfalseto0.NewStr,NewIntandNewBoolmethods that converts the primitive value to a pointer to it.
- Cloudflare Zero Trust support with Service Tokens.
- Proxmox Cluster:
GetClusterFirewallAliasesretrieves all cluster firewall aliases.GetClusterFirewallAliasretrieves cluster firewall alias by it's name.CreateClusterFirewallAliascreates a cluster firewall IP or Network Alias.UpdateClusterFirewallAliasupdates a cluster firewall IP or Network alias.DeleteClusterFirewallAliasremoves a cluster firewall IP or Network alias.GetClusterFirewallIPSetretrieves all cluster firewall IPSets.GetClusterFirewallRulesretrieves all cluster firewall rules.
- Proxmox nodes:
GetAllretrieves all nodes.Getretrieves a single nodes.GetNodeRulesretrieves node's firewall rules.GetNodeRulesByPosRetrieves a single node's firewall rule using rule's position (pos) as an index.ReadNodeLogRetrieves node's firewall log entries.GetNodeDatastoresretrieves node's datastores info.GetNodeDatastoreContentretrieves node's datastores info.DownloadISOToNodeDatastoredownloads an iso from an url into a node's datastore.DownloadVZTemplateToNodeDatastoredownloads a vztemplate from an url into a node's datastore.
- Proxmox LXC:
GetLxcsreturns node's lxc index per node.CreateLxccreates an LXC container and return useful information to interact with it after it's creation.
Changed
- Main package was renamed from proxmoxapi to pve.
pve.NewEnvCredsmethod can now return an error.pve.Newandpve.NewWithCredentialsmethods now sends a Get Version request to the remote proxmox api to check for valid credentials.pve.Credentialsnow have a Set method that adds the authorization header to the given http request.
v0.1.0
Added
- Proxmox api token credentials support.
- Proxmox api version endpoint.