Add temporary http endpoint
parent
f2b7054a16
commit
dff27ad8f2
|
@ -1,11 +1,16 @@
|
|||
module Api
|
||||
class DeviceCertsController < Api::AbstractController
|
||||
def show
|
||||
render json: {finish: :this}
|
||||
end
|
||||
|
||||
def create
|
||||
mutate DeviceCerts::Create.run(raw_json, device: current_device)
|
||||
# TODO(Connor) - This is just a stub.
|
||||
serial = params["serial_number"] || raise("no serial supplied")
|
||||
tags = params["tags"] || raise("no tags supplied")
|
||||
NervesHub.new_device(serial, tags)
|
||||
certs = NervesHub.sign_device(serial)
|
||||
data = certs
|
||||
data[:nerves_hub_host] = NervesHub.hostname()
|
||||
data[:nerves_hub_port] = NervesHub.port()
|
||||
data[:nerves_hub_ca] = NervesHub.ca()
|
||||
render json: data
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -93,7 +93,7 @@ class NervesHub
|
|||
csr_safe = Base64.strict_encode64(csr_bin)
|
||||
|
||||
data = {
|
||||
identifier: serial_number
|
||||
identifier: serial_number,
|
||||
csr: csr_safe,
|
||||
}
|
||||
resp = conn.post(device_sign_path(serial_number), data.to_json(), headers())
|
||||
|
@ -102,7 +102,7 @@ class NervesHub
|
|||
FileUtils.rm(key_file)
|
||||
FileUtils.rm(csr_file)
|
||||
ret = {
|
||||
cert: Base64.strict_encode64(cert)
|
||||
cert: Base64.strict_encode64(cert),
|
||||
csr: csr_safe,
|
||||
key: key_safe,
|
||||
}
|
||||
|
@ -112,6 +112,18 @@ class NervesHub
|
|||
!(current_cert.nil? && current_key.nil?)
|
||||
end
|
||||
|
||||
def self.hostname
|
||||
NERVES_HUB_HOST
|
||||
end
|
||||
|
||||
def self.port
|
||||
NERVES_HUB_PORT
|
||||
end
|
||||
|
||||
def self.ca
|
||||
Base64.strict_encode64(File.read(@current_ca_file))
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def self.devices_path
|
||||
|
|
|
@ -27,7 +27,7 @@ FarmBot::Application.routes.draw do
|
|||
# Singular API Resources:
|
||||
{
|
||||
device: [:create, :destroy, :show, :update],
|
||||
device_cert: [:create, :show],
|
||||
device_cert: [:create],
|
||||
fbos_config: [:destroy, :show, :update,],
|
||||
firmware_config: [:destroy, :show, :update,],
|
||||
public_key: [:show],
|
||||
|
|
Loading…
Reference in New Issue