Commit Graph

458 Commits

Author SHA1 Message Date
Kris Moore
7ca64172ab Add link to Qt doc 2016-03-12 05:27:55 -05:00
Ken Moore
29a51bf61e Switch the WebSocket message send mechanism over to a signal/slot combination so that we don't get threads trampling each other on high-latency connections. 2016-03-11 18:55:27 -05:00
Kris Moore
1878d25d46 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-03-11 08:10:07 -05:00
Kris Moore
cb4c4eb544 Change how we parse incoming WebSocket TCP/SSL data. Its possible
that data coming in will be mixed with several messages at once,
lets parse those properly, and also implement some sanity checking
to make sure we aren't being flooded with a potential buffer overflow
2016-03-11 08:08:51 -05:00
Kris Moore
9a8d509798 Fix seg fault getting ipv6 addr 2016-03-10 23:44:44 -05:00
Ken Moore
9f99d4c5a7 Clean up the iohyve fetch parsing a bit more, and turn off some of the debugging (leave the iohyve fetch-specific debugs on though). 2016-03-04 13:16:12 -05:00
Ken Moore
4ba9edabbe Oops - forgot to include this last change to the parsing routine to the iohyve fetch parsing. 2016-03-04 11:11:28 -05:00
Ken Moore
857919958a Update the iohyve fetch event structure, and make the whole process log structure available under the "process_details" variable in the event. 2016-03-04 11:05:39 -05:00
Kris Moore
b761863341 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-03-03 16:05:52 -05:00
Kris Moore
87e40a8467 Rename DispatcherParsing.h -> DispatcherParsing.cpp
Add first parsing function for iohyve fetch, will continue
with it tomorrow
2016-03-03 16:05:18 -05:00
dlavigne
9ae2bac697 Clarify resize limitation. 2016-03-03 15:32:53 -05:00
dlavigne
32a662c47d Doc version command. 2016-03-03 15:23:00 -05:00
Ken Moore
1b1ee8bb22 Merge branch 'master' of github.com:pcbsd/sysadm 2016-03-03 15:19:54 -05:00
Ken Moore
9396d7ae1a Merge branch 'master' of github.com:pcbsd/sysadm 2016-03-03 15:19:47 -05:00
dlavigne
31a4424b26 Doc resizedisk action. 2016-03-03 15:17:28 -05:00
Ken Moore
d2ef14a0d1 Large update to the dispatcher/events systems. Now there is a new DispatcherParsing.h file where any subsystem-specific dispatcher calls may be detected/parsed/handled as needed, and the iohyve fetch routine was updated to use this routine (for a proof of concept - could probably still use a bit more log output). 2016-03-03 15:16:55 -05:00
Kris Moore
91a2c700cb Add API call to show iohyve version
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "action" : "version"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "args" : {
      "action" : "version"
   },
   "id" : "fooid",
   "name" : "iohyve"
}

Response:
-------------------------------
{
  "args": {
    "version": {
      "version": "iohyve v0.7.3 2016/01/08 Bear in a Datacenter Edition"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-03 14:22:53 -05:00
Kris Moore
213e8191c9 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-03-03 13:57:35 -05:00
Kris Moore
9b03d42d87 Add API call to resize a VM disk
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "disk" : "disk0",
   "name" : "bsdguest",
   "action" : "resizedisk",
   "size" : "20G"
}

WebSocket Request:
-------------------------------
{
   "name" : "iohyve",
   "id" : "fooid",
   "args" : {
      "size" : "20G",
      "action" : "resizedisk",
      "disk" : "disk0",
      "name" : "bsdguest"
   },
   "namespace" : "sysadm"
}

Response:
-------------------------------
{
  "args": {
    "resizedisk": {
      "disk": "disk0",
      "name": "bsdguest",
      "size": "20G"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-03 13:57:16 -05:00
dlavigne
1edaf3ff6e Doc deletedisk action. 2016-03-03 13:49:57 -05:00
Kris Moore
1b46761032 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-03-03 13:38:12 -05:00
Kris Moore
f91651d342 Add API call to remove a disk from a VM
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "disk" : "disk1",
   "name" : "bsdguest",
   "action" : "deletedisk"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "id" : "fooid",
   "name" : "iohyve",
   "args" : {
      "name" : "bsdguest",
      "action" : "deletedisk",
      "disk" : "disk1"
   }
}

Response:
-------------------------------
{
  "args": {
    "deletedisk": {
      "disk": "disk1",
      "name": "bsdguest"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-03 13:37:57 -05:00
dlavigne
31dce38318 Doc listdisks action. 2016-03-03 13:33:23 -05:00
dlavigne
f180b2ee05 Doc adddisk action. 2016-03-03 13:28:11 -05:00
Kris Moore
04ee45494f Add new API call to add/create a disk for a VM
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "name" : "bsdguest",
   "action" : "adddisk",
   "size" : "10G"
}

WebSocket Request:
-------------------------------
{
   "args" : {
      "size" : "10G",
      "name" : "bsdguest",
      "action" : "adddisk"
   },
   "id" : "fooid",
   "namespace" : "sysadm",
   "name" : "iohyve"
}

Response:
-------------------------------
{
  "args": {
    "adddisk": {
      "bsdguest": {
        "size": "10G"
      }
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-03 13:24:02 -05:00
Kris Moore
f5fbb30ebb Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-03-03 13:11:48 -05:00
Kris Moore
30cb48e926 Add API call to list disks connected to a VM
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "name" : "bsdguest",
   "action" : "listdisks"
}

WebSocket Request:
-------------------------------
{
   "args" : {
      "action" : "listdisks",
      "name" : "bsdguest"
   },
   "id" : "fooid",
   "namespace" : "sysadm",
   "name" : "iohyve"
}

Response:
-------------------------------
{
  "args": {
    "listdisks": {
      "disk0": "10G"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-03 13:11:13 -05:00
dlavigne
124172ed8a Doc delete action. 2016-03-03 12:59:54 -05:00
Kris Moore
caf6bd1e06 Add new API call to delete an iohyve guest
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "action" : "delete",
   "name" : "bsdguest"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "id" : "fooid",
   "args" : {
      "action" : "delete",
      "name" : "bsdguest"
   },
   "name" : "iohyve"
}

Response:
-------------------------------
{
  "args": {
    "delete": {
      "name": "bsdguest"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-03 12:46:03 -05:00
Ken Moore
2312271340 Merge branch 'master' of github.com:pcbsd/sysadm 2016-03-03 11:59:22 -05:00
Ken Moore
1fc3b3fbb4 Couple changes:
1) Fix the event registration detection (string/array for args, not object/array)
2) Add a 30 second connection timeout for the client to successfully authorize before the server will close the connection.
2016-03-03 11:57:45 -05:00
dlavigne
a83bae9f6c Start docs for dispatcher subsystem. 2016-03-03 11:19:32 -05:00
Ken Moore
4fa264ea4f Merge branch 'master' of github.com:pcbsd/sysadm 2016-03-03 10:53:58 -05:00
Ken Moore
21fbf8643a A couple fixes to try and track down a seg fault when a distpatch finishes. 2016-03-03 10:53:27 -05:00
Kris Moore
cf5390676e Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-03-03 10:46:41 -05:00
Kris Moore
b886a597f9 Remove >/dev/nulls 2016-03-03 10:46:24 -05:00
dlavigne
e57f7fecea Add ssl management actions. 2016-03-03 10:45:18 -05:00
Kris Moore
283f660b25 Make sure we stop the daemon process 2016-03-03 10:28:31 -05:00
Ken Moore
26080479d2 Merge branch 'master' of github.com:pcbsd/sysadm 2016-03-03 10:08:56 -05:00
Ken Moore
94ab5c3ac2 Change a couple "delete" calls to the Qt ->deleteLater() function in the dispatcher. 2016-03-03 10:08:27 -05:00
dlavigne
358009fd8b Doc list_pools action. 2016-03-03 10:06:51 -05:00
Kris Moore
5f148d5388 Show debug output from iso fetch slots 2016-03-03 10:07:15 -05:00
dlavigne
47f6f813f8 Fix incorrect subheading. 2016-03-03 09:47:31 -05:00
dlavigne
d995b75b27 Doc list-devices action. 2016-03-03 09:43:17 -05:00
dlavigne
682215f6a1 Document listisos action. 2016-03-03 09:28:40 -05:00
Ken Moore
1b0cd22e84 Add a new API call to the iohyve subsystem: action="listisos"
This will list all the known ISO files which iohyve can use.

REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "action" : "listisos"
}

WebSocket Request:
-------------------------------
{
   "name" : "iohyve",
   "namespace" : "sysadm",
   "id" : "fooid",
   "args" : {
      "action" : "listisos"
   }
}

Response:
-------------------------------
{
  "args": {
    "listisos": [
      "TRUEOS10.2-RELEASE-08-19-2015-x64-netinstall.iso"
    ]
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-02 14:56:39 -05:00
Ken Moore
10df62f69f Merge branch 'master' of github.com:pcbsd/sysadm 2016-03-02 13:17:19 -05:00
Ken Moore
ffc6211e65 Fix a sysctl lookup error checking bug (will return empty/0 value instead of a random byte array/value when the sysctl does not exist). 2016-03-02 13:16:19 -05:00
dlavigne
005e4b4a5d This section has been reworked. New info to follow. 2016-03-02 12:55:02 -05:00
Ken Moore
a14e9a30d6 Add a new API call: sysadm/zfs (action==list_pools)
This subsystem can be expanded later for any zfs/zpool command calls

REST Request:
-------------------------------
PUT /sysadm/zfs
{
   "action" : "list_pools"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "args" : {
      "action" : "list_pools"
   },
   "name" : "zfs",
   "id" : "fooid"
}

Response:
-------------------------------
{
  "args": {
    "tank": {
      "alloc": "71.8G",
      "altroot": "-",
      "cap": "32%",
      "dedup": "1.00x",
      "expandsz": "-",
      "frag": "18%",
      "free": "148G",
      "health": "ONLINE",
      "size": "220G"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-03-02 12:34:17 -05:00