Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 72 additions & 0 deletions docs/API/Iglu Controller/create-a-new-builder.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
id: create-a-new-builder
title: "Create a new Builder"
description: "Create a new Builder using the REST API."
sidebar_label: "Create a new Builder"
hide_title: true
hide_table_of_contents: true
api: eJztWEtvGzcQ/ivEnhJAluQ27cEoCjh2Crg91LCVk2IU3N2RljGX3PBhWxD03ztD7lNax3Z6cA/2wdCSw+E3w5lvhtwmOdjMiMoJrZKT5MwAd8A4U3DPPnohczDMW6HWzBXArj5dL9jp5cU0mSQVN7wEB8YmJ8ttovADFWQ8K+DiHOcF6fvmwWzww8A3LwzkyYkzHiZ7uy5Q9RktZBfnuA93bKM9u+fKMadZFjHR/mmNSChCYHFFyZOTbeI2FW0ulIM1GJxaaVNyF4d+/ZDsdjcRA1j3UecbWvO04agn06hSOZLnVSVFxkl+9tXSou0hAp1+hcwNDF5G1wxtniRrQWLBINoHrRcPCaKsjK7AOAGW1EavtuqtM3gUyW7PgSPzpP4pWPpMakXIvJGExXCVFZ2QPfWOPr0FU5vg9C2oEZS1pm7DVGsJXBESUj6GsN5ubGoAYFxpg2lseUR5OLPbNQ5/wjOZLkuu8uZ8FkasY1hp7yrvzgX95lLq+89qZQDqbJASZAgdS8GJClL9AKSl5A9/6tSGeEKzaNan1gnnQ/oc+LPZf9RtfUQHApMElC/JBlTgOR3rPaSF1re0ucFgudnVP0bWDlPiqvYIEyvW35UJy74EHV8SQtQ5ZQxv302jR7nnuVGZzpmj041/D5lg17h8dGpwCp0EN4YTaQkHpR2LleFpPRbgVqwV/vwLNs9R3g9SxCTDWIePJnYtTzwRv6XOQ0x6WxwGV5h8TuBw73QMl7DppU+R/65bo0ZtjqJPCAVcIwc5sL2m+sDLGI9XkbxrITzRSisbDfppPj/k8ytw3qgYvFQ5avLHomKZ9VkG1q68lG8U/0bxbxT/RvFvFP9/o/gPL2H1FHv6QO0ll9T6o4QOQZwD0IdQd1yKnPEMQyUPtxkdFNTs/h+qwNDzYIweS5Ke1VGkMfL4ZaWrNmTCxBSY0tFwNJXk6qsXmd3YizNKO7bSPlDdaxn588uMLHmONzGvMDoLhEsw4fXg//KcQLwGc4e0CSpDVxPXMK42LKjBIPSmuUBndawzhEQ9yCtZRYQKrtBIJUmlbdDGqRAns7S9+9pgU7zdBwJMCucqezKbwQMvKwlTLGIzXonZ3XFCF2wLGVrqNmEFjv9zS+ywvOnPXZM5EXEr0WIm/c29PhAEcBOgxB9/NJf6R6rZqaK3CYachAkQ3B2fAVhczn7baG+OQuvwe3AM+fiqexX4FM3qmrLHNmqH6xasbY7i40Z0VivUdEHdyLD5qRe17U4nV3c5+63BoH/o7TNoGzqSj61AJ9cr5t3goIZHRPtVO4726nQcaCvzvC3E8/2620ZQu9+gci6bcQyVQQWMhaxnyiNlqtN7WJ26uViUCDUdvlArHWKvzo6LtfTsDJPRaLTaUCgdHPyiIHK1IbZynfkSEzfms448MKJkysLzVjeG69G1rlmyDGsujaa0vnnX5BiGVuHTkGICBY5s8Z7evCgjI5b5dD49DrUWExg91AvbRx6z9i4ULfG85NWvzlQHD25WSS76/X+kkGVT16kvKYhccGi7TbmFz0budjQcnwUpLHJheSopmlZc2v2XwT7Id02z+p794HvhKPbAQL1nSyycnqQCo91xIwheYDG0BjjZRbjjsrOI7mhBmru1Bzy+mzQrTvHqWbnvyt70yPny7+sFpXb9Zlnng+H3xCL4H3FiQgdvBU4NY9tEcrX2fE2yUSf9/Qvfnpfu
sidebar_class_name: "post api-method"
info_path: docs/API/Iglu Controller/iglu-controller-api
custom_edit_url: null
hide_send_button: true
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Create a new Builder"}
>
</Heading>

<MethodEndpoint
method={"post"}
path={"/builder"}
context={"endpoint"}
>

</MethodEndpoint>



Create a new Builder using the REST API.

<Heading
id={"request"}
as={"h2"}
className={"openapi-tabs__heading"}
children={"Request"}
>
</Heading>

<ParamsDetails
parameters={[{"name":"cacheID","in":"query","required":true,"description":"The Cache ID that you want to create the builder in.","schema":{"type":"integer","format":"int64"}}]}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={{"description":"Create a new Builder","content":{"application/json":{"schema":{"type":"object","required":["name","description","git","build","cachix"],"properties":{"name":{"type":"string"},"description":{"type":"string"},"git":{"type":"object","required":["noClone","url","branch","requiresAuth","username","token"],"properties":{"noClone":{"type":"boolean"},"url":{"type":"string"},"branch":{"type":"string"},"requiresAuth":{"type":"boolean"},"username":{"type":"string"},"token":{"type":"string"}}},"build":{"type":"object","required":["command","buildTrigger","outputDir","allowUnfree","parallelBuilds","sandboxed","maxJobs","cores","substituters"],"properties":{"command":{"type":"string"},"buildTrigger":{"type":"string","enum":["manual","webhook","cron"]},"cron":{"type":"string","description":"Required if buildTrigger is \"cron\""},"outputDir":{"type":"string"},"allowUnfree":{"type":"boolean"},"parallelBuilds":{"type":"boolean"},"sandboxed":{"type":"boolean"},"maxJobs":{"type":"integer"},"cores":{"type":"integer"},"substituters":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"signingKeys":{"type":"array","items":{"type":"string"}}},"title":"substituter"}}}},"cachix":{"type":"object","required":["mode","push"],"properties":{"mode":{"type":"string","enum":["manual","auto"]},"cachixPublicSigningKey":{"type":"string"},"cachixSigningKey":{"type":"string"},"push":{"type":"boolean"}}}},"title":"builderCreationRequest"}}}}}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"Returned if the request was successfull","content":{"application/json":{"schema":{"type":"object","required":["name","description","git","build","cachix"],"properties":{"name":{"type":"string"},"description":{"type":"string"},"git":{"type":"object","required":["noClone","url","branch","requiresAuth","username","token"],"properties":{"noClone":{"type":"boolean"},"url":{"type":"string"},"branch":{"type":"string"},"requiresAuth":{"type":"boolean"},"username":{"type":"string"},"token":{"type":"string"}}},"build":{"type":"object","required":["command","buildTrigger","outputDir","allowUnfree","parallelBuilds","sandboxed","maxJobs","cores","substituters"],"properties":{"command":{"type":"string"},"buildTrigger":{"type":"string","enum":["manual","webhook","cron"]},"cron":{"type":"string","description":"Required if buildTrigger is \"cron\""},"outputDir":{"type":"string"},"allowUnfree":{"type":"boolean"},"parallelBuilds":{"type":"boolean"},"sandboxed":{"type":"boolean"},"maxJobs":{"type":"integer"},"cores":{"type":"integer"},"substituters":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"signingKeys":{"type":"array","items":{"type":"string"}}},"title":"substituter"}}}},"cachix":{"type":"object","required":["mode","push"],"properties":{"mode":{"type":"string","enum":["manual","auto"]},"cachixPublicSigningKey":{"type":"string"},"cachixSigningKey":{"type":"string"},"push":{"type":"boolean"}}}},"title":"builderCreationRequest"}}}},"400":{"description":"Returned if the request body was malformed or is deemed invalid according to the schema","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"title":"error"}}}},"401":{"description":"Returned if the request was invalid, i.e no body or the cacheID is invalid or not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"title":"error"}}}},"403":{"description":"Returned if the request was made aunauthenticated","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"title":"error"}}}},"500":{"description":"Returned if the Server encounters any errors during the creation process","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"title":"error"}}}}}}
>

</StatusCodes>



Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
id: get-info-about-all-builders-for-a-cache
title: "Get Info about all Builders for a Cache"
description: "Returns all Builders for a given CacheID"
sidebar_label: "Get Info about all Builders for a Cache"
hide_title: true
hide_table_of_contents: true
api: eJy9V1Fv2zgM/iuCnzaga7rbdg/F4YBu3Q3BXoZu9xQUhWwztlpZ8igpbRDkvx8p24mTytdeD9hTU4siP1LkR3KTleAKVK1X1mTn2RX4gMYJqbX4GJQuAZ1YWhRSVGoFRnySRQ3zy+wkayXKBjwJZOeLTWboH1JQ7M4V6/sZANf0D8LPoBDK7NxjgJMjqz9q6BSL+aXwtfRibYO4l8YLb0XUcUpKHEk0MjvfZH7dsjFlPFSAdEQQG+m7T7+/z7bba7bpWmscOL7x29kZ/zm0eyHos5g7gdFtKIVakn0QF8HXZN+JwiJC4YU0JYVA5F1IxL2icxbsgkKoWXhpgykJTGEJl/FsT7atVoVke7Nbx0Y3j92QiJKDpDw0bvTd5rdkm0ONtgX0qnOlB/G0oCpHMiY0OV3anvQvtTtwHpWp+OAgOIlzMDLXMFaaW6tBGj4kqao6QLW/WOCExnvIa2vvAurE8XacNgv2psd+iHSPaw/iQDOlgldeR7x96Eh1pfzTEURorVPeUg6n4OcoTVEnj0h9cICTsabzO0hr7Z12kpIwHWtjC20NpA63e2fZQwbJPtsYq2ckFyU8uGTaNPLh1ubpszuA9qay7EASMDx4lBIrl3TYhdwR6NBxyUvLIp1EpF1Vhn5+hfVzlO+SbxTIEb4YYGY+rUHHyLqEx8f8dglLZcCJeyDOQEF0amykNuclemHgvmMWkqiVBmIbYXXZfROK2RhBlmuBwZihpGzTECmly+Yg3Yen50vEserh6VC2wU1kHuGtwCfjLFt1mNETyg+F9jmUZKuRM73+/Ys+y9oEB7aoVtLD14kSbENOtJ0+HSfGHshQaIA3KvUqQx0G3wZfqjRPPhWC/v36l4QXe0/MUIf8X/lJuS4GEwQ0dY1sN8q5qQ7SIiyBOmpJ6Uu/oyDNELVNhyygmlCjLCqfziOKAHWD5n8wSU3Fdkhlz+2R2+3xcwFf0pIEgnnasrYpq8cVDXgVDqm+zD8Ona2D8D497tBn8RmRCEg9Hnq6WaYf4FhAmZXUqhz46qXjzYSvwDgmYhg9eJf24N20B9w5wfk4jDHizqBeC26lBJmhwq9z4UP6ET6kH4FD7yD68R1wRX0CTEEh567I4zcYQFUMN00UXIInRjCVsF0A+vRwv8hFngr66s24LXBr5Jklmw2DFpF19KXbEWKLzmrvW3c+m8GDbFoNp8QFMyL32eptxmO7gyJ0xb1g6Oom8vzienz2ndF3AHcSO4isf9gWYs2AxAil+/HXsCr0rhw36wsjLr7NBZH/Lsrxhuiuiz9oN8E33t6B+TMWoTJLG833xTivdBCfKPxoaUpA1vbIyI+a68tF9aUtQkNPFR9oeMmEklMR96T9N7rf8vzQX1nEO9/Q8kNevxrC3JF9jLIigTeufs3LFD9Kh+Xs9Oz0bWRO6zwNFexLv819AS/m5J6QOXWu1FYY17Zj9zb77PsvG2X/fp6mxVmrpTJdD4hjXZdYi90ET8lQE1z+tNnkVDh/o95u+XO3cnLylMr1C8tSane8dY5BvrrqF43X4pm7aBJrzMPRCkz0GVgq5vVKomI4MZdPYpPhdWnRT0TZRVFA60e3HpUta9nV25fPPyj7/gFhUnLy
sidebar_class_name: "get api-method"
info_path: docs/API/Iglu Controller/iglu-controller-api
custom_edit_url: null
hide_send_button: true
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Get Info about all Builders for a Cache"}
>
</Heading>

<MethodEndpoint
method={"get"}
path={"/builder"}
context={"endpoint"}
>

</MethodEndpoint>



Returns all Builders for a given CacheID

<Heading
id={"request"}
as={"h2"}
className={"openapi-tabs__heading"}
children={"Request"}
>
</Heading>

<ParamsDetails
parameters={[{"name":"cacheID","in":"query","required":true,"description":"The Cache ID that you want to query.","schema":{"type":"integer","format":"int64"}}]}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={undefined}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"A 200 Is returned if the Auth was correct and a builder with the given ID was found","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"builder":{"type":"object","properties":{"id":{"type":"number"},"name":{"type":"string"},"description":{"type":"string"},"enabled":{"type":"boolean"},"trigger":{"type":"string"},"cron":{"type":"string"},"webhookurl":{"type":"string"}},"required":["id","name","description","enabled","trigger","webhookurl"],"title":"builder"},"git":{"type":"object","properties":{"repository":{"type":"string"},"branch":{"type":"string"},"gitusername":{"type":"string"},"gitkey":{"type":"string"},"requiresauth":{"type":"boolean"},"noclone":{"type":"boolean"}},"title":"git"},"buildoptions":{"type":"object","properties":{"cores":{"type":"number"},"maxjobs":{"type":"number"},"keep_going":{"type":"boolean"},"extraargs":{"type":"string"},"substituters":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string"},"signingKeys":{"type":"array","items":{"type":"string"}}},"title":"substituter"}},"parallelbuilds":{"type":"boolean","description":"Defines wether or not to start new builds while an old build is already running"},"command":{"type":"string"}},"title":"buildoptions"},"cachix":{"type":"object","properties":{"push":{"type":"boolean"},"target":{"type":"string"},"apikey":{"type":"object","properties":{"key":{"type":"number"},"id":{"type":"number"}},"title":"apikey"},"signingkey":{"type":"object","properties":{"id":{"type":"number"},"privateKey":{"type":"string"},"publicKey":{"type":"string"}},"title":"signingkey"},"builder_id":{"type":"string"},"buildoutputdir":{"type":"string"},"id":{"type":"number"}},"title":"cachix"},"cache":{"type":"object","properties":{"id":{"type":"number"},"githubusername":{"type":"string"},"ispublic":{"type":"boolean"},"name":{"type":"string"},"permission":{"type":"string"},"preferredcompressionmethod":{"type":"string"},"uri":{"type":"string"},"priority":{"type":"number"},"problems":{"type":"array","items":{"type":"object","properties":{"heading":{"type":"string"},"description":{"type":"string"}}}}},"title":"cache"},"lastrun":{"type":"object","properties":{"log":{"type":"string"}},"title":"builderRun"}},"title":"dbBuilder"}}}}},"400":{"description":"A 400 Error is returned if the given cacheID is invalid or not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}}}}}},"403":{"description":"A 403 Error is returned if the request was not properly authenticated","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}}}}}},"500":{"description":"A 500 Error is returned in case the Server encounters a generic Error in the fetching of the builders","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}}}}}}}}
>

</StatusCodes>



35 changes: 35 additions & 0 deletions docs/API/Iglu Controller/iglu-controller-api.info.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
id: iglu-controller-api
title: "Iglu Controller API"
description: "This is the documentation of the Iglu Controller API. The Controller is part of the [Iglu Project](https://github.com/iglu-sh)."
sidebar_label: Introduction
sidebar_position: 0
hide_title: true
custom_edit_url: null
---

import ApiLogo from "@theme/ApiLogo";
import Heading from "@theme/Heading";
import SchemaTabs from "@theme/SchemaTabs";
import TabItem from "@theme/TabItem";
import Export from "@theme/ApiExplorer/Export";

<span
className={"theme-doc-version-badge badge badge--secondary"}
children={"Version: 0.0.1"}
>
</span>

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Iglu Controller API"}
>
</Heading>



This is the documentation of the Iglu Controller API. The Controller is part of the [Iglu Project](https://github.com/iglu-sh).



Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
id: returns-user-information-for-an-api-token
title: "returns user information for an API Token"
description: "Get user information about a given API Token"
sidebar_label: "returns user information for an API Token"
hide_title: true
hide_table_of_contents: true
api: eJy9Vk1PGzEQ/SuWT60UklC1F1RViigF1Atq6Qmhyrs7yRp27a09DqQR/70z4wQSsmmFhIoCbOz5eJ73PLNLXUEsg+3QeqeP9CmgShGCsm7qQ2t4WZnCJ1RGzewcnJpcnKtLfwtOD3SEMgWLC310tdSmsz9vgZ+vH64HOkDsvIsQ9dFSvxuP+d92sm+AKTiolJ1SdEl7Z6Ka+uQqCl56h+CQ/UzXNbYUNKObyM5LHcsaWsNPuOiAwvniBkokxy74DgLanLo0ZBg37EwIZkFmFqGN//a31YaNS20BQT8M9MxinQoG7UwLGyYRg3UzNrGxSwXh3tgsvG/AON7d60a5Wxujzcfc3Q4whRCgKn1Lz2LYAta+6jUnfvaEsT5T13M4qkDRbFfnhVWrwVScqS/1lgp29vlnoNFiw6vCnuYVB3cQ8djEGqoz/vv6nHYG617EGUWfS+oqg0C//X4VBLo0oX9zahuo6ST7d6P93a+RUkQArtyqwsZ+tP21LyP68Jessh3TdGrv+2VjAu5J+STHPlafKJXkWyTzLfps0OjM/fvx4W6zmChaVmckK+5OUYWN5oE1qEnCWtqHdaWn61HiQDmPioif24rsfBC7AkygCMgdTOzZOnXE4eu1HLqevo/zlbY/9DXDiaJldcKeW8e7qwknA/8OgZSkiHPqjwghKuMWZBoTDP8TdMK+7jR6BuIsN0aPmEGZB4wxyjhIoWGyEbt4NBrBvWm7BoakkhENitH8UPOQWA+Q7wwvI3gcI48YOAYHFxtuokIhreSHLzKonrAOnlc2z6yvQNXKpcyjbS2FjwufwoEI4pMIlWefpF/J83zWJHVM9Q2+aciBou0kuayJNPpw+MqXqSUu8vT0WZ89QYbqkjY21sif79fa5Up8LoJnpq7frEuZJ49U0pLBQazfsgC48BnLeDgeHspl9RFbI/znaaOzrOLujKcn0tPWcH/Wph8F9tKXhBWLCPc46hpjXR5LDQfN+rmSDqBJDzUh5u/LZWEi/AjNwwMv/0oQ5MWCjmmCNQXzQq8ZA5kz3F9JcCIaPSlL6Fiac9MkGQ3PbwPr7lHGpyeXZGvSVuN/JjCJvh40brERm2CKhRyVoA5WIERMlIiuzB8neUBo
sidebar_class_name: "get api-method"
info_path: docs/API/Iglu Controller/iglu-controller-api
custom_edit_url: null
hide_send_button: true
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"returns user information for an API Token"}
>
</Heading>

<MethodEndpoint
method={"get"}
path={"/user"}
context={"endpoint"}
>

</MethodEndpoint>



Get user information about a given API Token

<ParamsDetails
parameters={undefined}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={undefined}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"Returned if a user was found","content":{"application/json":{"schema":{"type":"object","properties":{"caches":{"type":"array","items":{"type":"object","properties":{"id":{"type":"number"},"githubusername":{"type":"string"},"ispublic":{"type":"boolean"},"name":{"type":"string"},"permission":{"type":"string"},"preferredcompressionmethod":{"type":"string"},"uri":{"type":"string"},"priority":{"type":"number"},"problems":{"type":"array","items":{"type":"object","properties":{"heading":{"type":"string"},"description":{"type":"string"}}}}},"title":"cache"}},"newestCashedHashes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"number"},"path":{"type":"string"},"cache":{"type":"number"},"updatedat":{"type":"string"},"cderiver":{"type":"string"},"cfilehash":{"type":"string"},"cfilesize":{"type":"string"},"creferences":{"type":"string"},"csig":{"type":"string"},"cstorehash":{"type":"string"},"cstoresuffix":{"type":"string"},"parts":{"type":"string"},"compression":{"type":"string"}},"title":"hash"}}},"title":"userData"}}}},"401":{"description":"A 401 Header is returned if the Auth was incorrect, not provided or the bearer token was corrupted","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}}}}}},"500":{"description":"A 500 Error is returned when the Server encounters any issue.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}}}}}}}}
>

</StatusCodes>



24 changes: 24 additions & 0 deletions docs/API/Iglu Controller/sidebar.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import type { SidebarsConfig } from "@docusaurus/plugin-content-docs";

const sidebar: SidebarsConfig = {
apisidebar: [
{
type: "doc",
id: "API/Iglu Controller/iglu-controller-api",
},
{
type: "category",
label: "UNTAGGED",
items: [
{
type: "doc",
id: "API/Iglu Controller/build",
label: "This route returns user information based on the provided token in the Auhtorization header",
className: "api-method get",
},
],
},
],
};

export default sidebar.apisidebar;
16 changes: 16 additions & 0 deletions docs/Components/Controller/Builder/builder-creation.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
id: builder-controller-relation
title: "Builder Controller Relation"
description: "This is how the Iglu Controller communicates with Builders."
---

## How are builders started?
Builders (or rather the containers) are not started directly by the Iglu Controller, but rather a Scheduler Server. This Scheduler server runs in the background and starts the containers when a new build is requested / according to a cron schedule.
The Scheduler Server is automatically setup when you spin up the Iglu Controller, so you don't have to worry about it.
The Files for this Scheduler are located unter `lib/scheduler` in the Iglu Controller repository.
## How does the Iglu Controller communicate with Builders / The Scheduler?
All of these compontens communicate via this schema:
![Iglu Controller Scheduler Communication](/img/docs/Controller/Builder/iglu-controller_scheduler_builder_relation.png)
## How can I add a new Builder?
Well first you can create one via the Iglu Controller UI in the "Builders" section.
You can also create a new Builder via the Rest API of the Iglu Controller. This API is documented here: [Iglu Controller API](/docs/API/Iglu%20Controller/create-a-new-builder)
1 change: 1 addition & 0 deletions docs/Components/Controller/intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
TBA
Loading