"use client"; import { useActionState } from "react"; import { FormField, Select } from "@unlocalhosted/metalui"; import type { FormState } from "@/app/actions/types"; import { PlusIcon, ServerIcon, TagIcon } from "@/components/icons"; import { CopyIconButton, TextField } from "@/components/settings-fields"; import { PlateBody, PlateFooter } from "@/components/settings-plate"; import { Alert, Button } from "@/components/ui"; const expiries = [ { value: "30", label: "30 days" }, { value: "90", label: "90 days" }, { value: "180", label: "6 months" }, { value: "365", label: "1 year" }, { value: "never", label: "No expiration" }, ]; function Command({ children }: { children: string }) { return (
{children}
{state.token}
Start it on your machine
The runner is one file and needs Node.js 18+ and git. Download it, then start it with the token. Jobs run as the user that starts it, so use an account (or a VM or container) set aside for it.
It shows up as online here within a few seconds. Jobs with runs-on: self-hosted{" "}
run on any runner; use labels to pick particular ones.