Commit Graph

328 Commits

Author SHA1 Message Date
dlavigne
486cd5d099 Doc issetup action. 2016-02-09 14:53:10 -05:00
Kris Moore
c8b123df65 Add new API call to start a iohyve guest
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "action" : "start",
   "name" : "bsdguest"
}

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

Response:
-------------------------------
{
  "args": {
    "start": {
      "name": "bsdguest"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 14:42:56 -05:00
Kris Moore
c5c10a0616 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-09 14:25:03 -05:00
Kris Moore
e6b285ebfd Add API call to start the iohyve installation of a guest from
an ISO

FYI, this only boots the VM with the ISO, to do the install
the user still needs to run "iohyve console <name>" from the system,
which uses serial mode to bring up a terminal

REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "name" : "bsdguest",
   "iso" : "FreeBSD-10.2-RELEASE-amd64-disc1.iso",
   "action" : "install"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "name" : "iohyve",
   "id" : "fooid",
   "args" : {
      "action" : "install",
      "iso" : "FreeBSD-10.2-RELEASE-amd64-disc1.iso",
      "name" : "bsdguest"
   }
}

Response:
-------------------------------
{
  "args": {
    "install": {
      "iso": "FreeBSD-10.2-RELEASE-amd64-disc1.iso",
      "name": "bsdguest"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 14:21:34 -05:00
dlavigne
566e4e35c3 Clarify clonefrom. 2016-02-09 14:13:33 -05:00
dlavigne
f568b58228 Doc setup action. 2016-02-09 14:11:33 -05:00
Kris Moore
bef748977e Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-09 13:50:22 -05:00
Kris Moore
2fa64a2031 Add API call to create a new iohyve guest
REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "action" : "create",
   "name" : "bsdguest",
   "size" : "10G"
}

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

Response:
-------------------------------
{
  "args": {
    "create": {
      "name": "bsdguest",
      "size": "10G"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 13:50:08 -05:00
dlavigne
dd0bf124fb Doc createbe action. 2016-02-09 13:13:08 -05:00
dlavigne
4524a7970b Doc activatebe action. 2016-02-09 13:02:31 -05:00
Kris Moore
3c329b4292 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-09 12:47:07 -05:00
Kris Moore
a36081c77e Add new API call to iohyve, which returns true/false
if iohyve has been setup on the box

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

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

Response:
-------------------------------
{
  "args": {
    "issetup": {
      "setup": "true"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 12:46:41 -05:00
JoshDW19
4ed13b1d46 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-09 12:32:37 -05:00
JoshDW19
3b9d2375e4 Add API call to destroy the "target" boot environment and force unmount it. Any
Verification should be done through the client.

REST Request:
-------------------------------
PUT /sysadm/beadm
{
   "target" : "red",
   "action" : "destroybe"
}

WebSocket Request:
-------------------------------
{
   "id" : "fooid",
   "args" : {
      "action" : "destroybe",
      "target" : "red"
   },
   "name" : "beadm",
   "namespace" : "sysadm"
}

Response:
-------------------------------
{
  "args": {
    "destroybe": {
      "target": "red"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
2016-02-09 12:31:32 -05:00
Kris Moore
30ffeccfd4 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-09 12:08:03 -05:00
Kris Moore
c3c809fcbc Add new API call to do the initial setup of Iohyve
Both the pool/nic are required for setup to complete.

REST Request:
-------------------------------
PUT /sysadm/iohyve
{
   "nic" : "re0",
   "pool" : "tank",
   "action" : "setup"
}

WebSocket Request:
-------------------------------
{
   "id" : "fooid",
   "name" : "iohyve",
   "args" : {
      "pool" : "tank",
      "nic" : "re0",
      "action" : "setup"
   },
   "namespace" : "sysadm"
}

Response:
-------------------------------
{
  "args": {
    "setup": {
      "nic": "re0",
      "pool": "tank"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 12:07:12 -05:00
JoshDW19
f58eb8ce08 New API call for creating a new boot environment. An optional flag is shown below.
By specifying clonefrom which passes along the -e flag it will clone from a inactive boot environment.

REST Request:
-------------------------------
PUT /sysadm/beadm
{
   "action" : "createbe",
   "newbe" : "red",
   "clonefrom" : "green"
}

WebSocket Request:
-------------------------------
{
   "id" : "fooid",
   "args" : {
      "newbe" : "red",
      "clonefrom" : "green",
      "action" : "createbe"
   },
   "namespace" : "sysadm",
   "name" : "beadm"
}

Response:
-------------------------------
{
  "args": {
    "createbe": {
      "clonefrom": "green",
      "newbe": "red"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 11:49:39 -05:00
JoshDW19
6a3ffaa308 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-09 10:36:44 -05:00
JoshDW19
f9e5dc615d API call for activating a different boot environment
REST Request:
-------------------------------
PUT /sysadm/beadm
{
   "target" : "bootthingy",
   "action" : "activatebe"
}

WebSocket Request:
-------------------------------
{
   "name" : "beadm",
   "args" : {
      "action" : "activatebe",
      "target" : "bootthingy"
   },
   "namespace" : "sysadm",
   "id" : "fooid"
}

Response:
-------------------------------
{
  "args": {
    "activatebe": {
      "target": "bootthingy"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-09 10:35:37 -05:00
Ken Moore
787369def3 Change the default reply code for an invalid subsystem to 400 BadRequest instead of 404 NoContent. 2016-02-09 09:57:50 -05:00
Ken Moore
f775458d31 Merge branch 'master' of github.com:pcbsd/sysadm 2016-02-09 09:19:20 -05:00
Ken Moore
e1b9bc833c Fix up the detection of the localhost address when there is both IPv4 and IPv6 information available for the connection. 2016-02-09 09:18:21 -05:00
dlavigne
6dc31f5254 Doc renamebe action. 2016-02-08 15:25:27 -05:00
Kris Moore
5b140b8c6e Remove bad lock file 2016-02-08 14:27:25 -05:00
JoshDW19
10e9423d61 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-08 14:26:13 -05:00
JoshDW19
6d8815a220 Really cool message because I forgot to include the modified webackend.cpp in the last commit. 2016-02-08 14:25:40 -05:00
JoshDW19
849230bf2f Add API call for BEADM to rename a boot environment
REST Request:
-------------------------------
PUT /sysadm/beadm
{
   "source" : "newname",
   "action" : "renamebe",
   "target" : "bootthingy"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "name" : "beadm",
   "id" : "fooid",
   "args" : {
      "source" : "newname",
      "target" : "bootthingy",
      "action" : "renamebe"
   }
}

Response:
-------------------------------
{
  "args": {
    "renamebe": {
      "source": "newname",
      "target": "bootthingy"
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
2016-02-08 14:24:16 -05:00
Kris Moore
75fd288768 Added doctoc 2016-02-08 14:12:48 -05:00
Kris Moore
20114a9d04 Add few more line-breaks 2016-02-08 13:31:39 -05:00
Kris Moore
d6ece0f201 Add some line-breaks 2016-02-08 13:31:00 -05:00
Kris Moore
ccd73e7270 Update the various lpreserver API backends, to use new CLI
syntax, and uppdate README with further information about testing
2016-02-08 13:12:06 -05:00
Kris Moore
0300aab643 Update API test script to use 'sudo' if running as user and
needing to pkg install utils
2016-02-08 12:30:27 -05:00
Kris Moore
172962421c Fix required modules section 2016-02-08 11:37:49 -05:00
Kris Moore
1110170081 Update the SysAdm README with much more useful information 2016-02-08 11:35:12 -05:00
dlavigne
48a9463262 Add beadm class. 2016-02-05 13:23:29 -05:00
dlavigne
8f3b7ec2e0 Doc cleanall action. 2016-02-05 13:02:40 -05:00
dlavigne
6b3a2750f8 Doc cleanreleases action. 2016-02-05 12:29:56 -05:00
dlavigne
9c5df4348c Doc cleanreleases action. 2016-02-05 12:11:38 -05:00
dlavigne
8760097189 Doc cleanjails action. 2016-02-05 11:56:34 -05:00
dlavigne
91358a6b35 Doc capjail action. 2016-02-05 11:46:36 -05:00
dlavigne
8f431e81c6 Doc rmiso command. 2016-02-05 11:06:53 -05:00
Kris Moore
23d5136e22 Merge branch 'master' of https://github.com/pcbsd/sysadm 2016-02-05 11:04:09 -05:00
Kris Moore
1ba65b3388 Add new API class and call for 'beadm', with the initial listbes
API call

REST Request:
-------------------------------
PUT /sysadm/beadm
{
   "action" : "listbes"
}

WebSocket Request:
-------------------------------
{
   "name" : "beadm",
   "namespace" : "sysadm",
   "id" : "fooid",
   "args" : {
      "action" : "listbes"
   }
}

Response:
-------------------------------
{
  "args": {
    "listbes": {
      "11.0-CURRENTJAN2016-up-20160128_150853": {
        "active": "NR",
        "date": "2016-01-28",
        "mount": "/",
        "nick": "14:57",
        "space": "10.2G"
      },
      "initial": {
        "active": "-",
        "date": "2016-01-28",
        "mount": "-",
        "nick": "07:00",
        "space": "1.2G"
      }
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-05 11:02:47 -05:00
dlavigne
b7d4a52981 Doc renameiso action. 2016-02-05 10:59:38 -05:00
dlavigne
24295f65a1 Doc fetchiso action. 2016-02-05 08:53:13 -05:00
dlavigne
208ce54e98 Clarify description for deactivatepool. 2016-02-05 08:40:21 -05:00
Brandon Schneider
5cde5b594d Add new iocage API to clean all.
REST Request:
-------------------------------
PUT /sysadm/iocage
{
   "action" : "cleanall"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "args" : {
      "action" : "cleanall"
   },
   "id" : "fooid",
   "name" : "iocage"
}

Response:
-------------------------------
{
  "args": {
    "cleanall": {
      "success": "All iocage datasets have been cleaned."
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-04 22:39:32 -06:00
Brandon Schneider
285002d9e8 Add new iocage API call to clean all templates.
REST Request:
-------------------------------
PUT /sysadm/iocage
{
   "action" : "cleantemplates"
}

WebSocket Request:
-------------------------------
{
   "args" : {
      "action" : "cleantemplates"
   },
   "name" : "iocage",
   "id" : "fooid",
   "namespace" : "sysadm"
}

Response:
-------------------------------
{
  "args": {
    "cleantemplates": {
      "success": "All templates have been cleaned."
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-04 22:36:02 -06:00
Brandon Schneider
920a51f997 Add new iocage API call to clean all RELEASEs
REST Request:
-------------------------------
PUT /sysadm/iocage
{
   "action" : "cleanreleases"
}

WebSocket Request:
-------------------------------
{
   "id" : "fooid",
   "namespace" : "sysadm",
   "args" : {
      "action" : "cleanreleases"
   },
   "name" : "iocage"
}

Response:
-------------------------------
{
  "args": {
    "cleanreleases": {
      "success": "All RELEASEs have been cleaned."
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-04 22:34:01 -06:00
Brandon Schneider
dbbcf44d35 Add new iocage API call to clean all jails.
REST Request:
-------------------------------
PUT /sysadm/iocage
{
   "action" : "cleanjails"
}

WebSocket Request:
-------------------------------
{
   "namespace" : "sysadm",
   "args" : {
      "action" : "cleanjails"
   },
   "id" : "fooid",
   "name" : "iocage"
}

Response:
-------------------------------
{
  "args": {
    "cleanjails": {
      "success": "All jails have been cleaned."
    }
  },
  "id": "fooid",
  "name": "response",
  "namespace": "sysadm"
}
2016-02-04 22:31:19 -06:00