PageSourceSearch

https://osbuild.org/assets/js/4d64b52d.96af107d.js

js osbuild.org collected 2026-10-04 00:30:30 UTC 4,561 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunksaurus=self.webpackChunksaurus||[]).push([[3568],{12918:(e,o,s)=>{s.r(o),s.d(o,{assets:()=>a,contentTitle:()=>l,default:()=>u,frontMatter:()=>i,metadata:()=>t,toc:()=>c});const t=JSON.parse('{"id":"developer-guide/projects/osbuild/modules/stages/org.osbuild.coreos.platform","title":"org.osbuild.coreos.platform","description":"\x3c!--","source":"@site/docs/developer-guide/02-projects/osbuild/modules/stages/org.osbuild.coreos.platform.md","sourceDirName":"developer-guide/02-projects/osbuild/modules/stages","slug":"/developer-guide/projects/osbuild/modules/stages/org.osbuild.coreos.platform","permalink":"/docs/developer-guide/projects/osbuild/modules/stages/org.osbuild.coreos.platform","draft":false,"unlisted":false,"editUrl":"https://github.com/osbuild/osbuild/tree/main/stages/org.osbuild.coreos.platform.meta.json","tags":[],"version":"current","frontMatter":{"custom_edit_url":"https://github.com/osbuild/osbuild/tree/main/stages/org.osbuild.coreos.platform.meta.json"},"sidebar":"developer","previous":{"title":"org.osbuild.coreos.live-artifacts.mono","permalink":"/docs/developer-guide/projects/osbuild/modules/stages/org.osbuild.coreos.live-artifacts.mono"},"next":{"title":"org.osbuild.cpio.out","permalink":"/docs/developer-guide/projects/osbuild/modules/stages/org.osbuild.cpio.out"}}');var r=s(74848),n=s(28453);const i={custom_edit_url:"https://github.com/osbuild/osbuild/tree/main/stages/org.osbuild.coreos.platform.meta.json"},l="org.osbuild.coreos.platform",a={},c=[{value:"Schema 1",id:"schema-1",level:2},{value:"Schema 2",id:"schema-2",level:2}];function d(e){const o={code:"code",h1:"h1",h2:"h2",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",...(0,n.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(o.header,{children:(0,r.jsx)(o.h1,{id:"orgosbuildcoreosplatform",children:"org.osbuild.coreos.platform"})}),"\n",(0,r.jsx)(o.p,{children:(0,r.jsx)(o.strong,{children:"Setup a CoreOS platform"})}),"\n",(0,r.jsx)(o.p,{children:"In CoreOS we have the concept of a platform (i.e. AWS, GCP, Metal, QEMU)\nwhere each platform has its own provided disk image with slightly\ndiffering settings/behavior. This stage will perform the necessary\nconfiguration for the given platform. This configuration boils down to\na few steps:"}),"\n",(0,r.jsxs)(o.ol,{children:["\n",(0,r.jsx)(o.li,{children:"Locate the source of platform specific information that is provided\nin the CoreOS filesystem tree already (the platforms.json)."}),"\n",(0,r.jsx)(o.li,{children:"Copy the platforms.json file into the /boot/ partition, which is\nsometimes used by coreos-installer."}),"\n",(0,r.jsx)(o.li,{children:"Read the platforms.json to fetch and platform specific kernel\narguments or grub configuration to set. These arguments/config\nare primarily console settings."}),"\n",(0,r.jsxs)(o.li,{children:["Apply any platform specific kernel arguments along with the\n",(0,r.jsx)(o.code,{children:"ignition.platform.id=\\{platform-name\\}"})," kernel argument."]}),"\n",(0,r.jsxs)(o.li,{children:["Create the grub ",(0,r.jsx)(o.code,{children:"console.cfg"})," file and apply any platform\nspecific grub console configuration.\nThis stage is highly CoreOS specific and subject to change in the\nfuture if/when we change the way platform specific information is\ndefined in our broader efforts to share more defaults with OSBuild."]}),"\n"]}),"\n",(0,r.jsx)(o.h2,{id:"schema-1",children:"Schema 1"}),"\n",(0,r.jsx)(o.pre,{children:(0,r.jsx)(o.code,{className:"language-json",children:"{}\n"})}),"\n",(0,r.jsx)(o.h2,{id:"schema-2",children:"Schema 2"}),"\n",(0,r.jsx)(o.pre,{children:(0,r.jsx)(o.code,{className:"language-json",children:'{\n  "options": {\n    "additionalProperties": false,\n    "properties": {\n      "platform": {\n        "description": "The target platform name/ID",\n        "type": "string"\n      }\n    }\n  },\n  "devices": {\n    "type": "object",\n    "additionalProperties": true\n  },\n  "mounts": {\n    "type": "array"\n  }\n}\n'})})]})}function u(e={}){const{wrapper:o}={...(0,n.R)(),...e.components};return o?(0,r.jsx)(o,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},28453:(e,o,s)=>{s.d(o,{R:()=>i,x:()=>l});var t=s(96540);const r={},n=t.createContext(r);function i(e){const o=t.useContext(n);return t.useMemo((function(){return"function"==typeof e?e(o):{...o,...e}}),[o,e])}function l(e){let o;return o=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),t.createElement(n.Provider,{value:o},e.children)}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.