openc3-cosmos-tool-docs 6.4.2 → 6.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/tools/staticdocs/404.html +1 -1
- data/tools/staticdocs/assets/images/alert_logs-8273c6912804a4a16ce15d59cedf266f32d8c0a4ace2ab25fd8d3f149fb7fed2.png +0 -0
- data/tools/staticdocs/assets/images/alert_notifications-c68f0ff77eec9c2bc0d31bd6693fce4055d21722f985e418c05533992be71631.png +0 -0
- data/tools/staticdocs/assets/images/checks_rb-4e28c3a8422638404e790054f83f6a61592f5cf848ff6d9bd1ce228813622c9a.png +0 -0
- data/tools/staticdocs/assets/images/disk_usage-c91c5ef35de6ec1c4ebcf485c6f74c68daeac6215bf185691ed613b7fd2a95cf.png +0 -0
- data/tools/staticdocs/assets/images/environment_variables-72bbb71e6f428ec5efa340eb402289b6d42a84d3c5ce724025d32415242dec09.png +0 -0
- data/tools/staticdocs/assets/images/process_metrics-534358ca0a064ed4c24ff1a29f48686d1189e331da23e0f7a6625405278b31eb.png +0 -0
- data/tools/staticdocs/assets/images/redis_metrics-646d362a7855604a8b6de1b7064f6949914be7b84ad1ab78822990d56d6ebcc1.png +0 -0
- data/tools/staticdocs/assets/images/refresh_interval-8673071593ce24cb2bb0adedfd0e7fc4d612496c393c7f3f52ba37db497f9344.png +0 -0
- data/tools/staticdocs/assets/images/right_click-81df09085fe9f75805cf35b5876177789eef0d879b54a734a8395e3817f1959d.png +0 -0
- data/tools/staticdocs/assets/images/script_suite-0d1f45f9226d3ac0ed12d5ce91220dccf88402fd8582c4512acc8886a3cf2249.png +0 -0
- data/tools/staticdocs/assets/images/system_health_configuration-728cde02f1da6b75e606152e113e288b6d949dd1f4183c4691b0f61c4c47b30e.png +0 -0
- data/tools/staticdocs/assets/images/system_overview_gauges-3975fb0011287cf4f98af7dfdf9dba681943913c0b47642645cd19b583e35b74.png +0 -0
- data/tools/staticdocs/assets/images/systemhealth-fc26a7d9cda6242569255ecd4264d1c91ad47d85a3805b610d3c946e0d10cfbf.png +0 -0
- data/tools/staticdocs/assets/js/019369f3.52424baa.js +1 -0
- data/tools/staticdocs/assets/js/058ffc22.82c2873e.js +1 -0
- data/tools/staticdocs/assets/js/0686a885.f620e3dc.js +1 -0
- data/tools/staticdocs/assets/js/{078dbab0.43788fd9.js → 078dbab0.babf69ab.js} +1 -1
- data/tools/staticdocs/assets/js/0f5d161c.bc74590c.js +1 -0
- data/tools/staticdocs/assets/js/0ff569c9.14ed0a79.js +1 -0
- data/tools/staticdocs/assets/js/103cc3be.b15ac140.js +1 -0
- data/tools/staticdocs/assets/js/13196248.e1f20841.js +1 -0
- data/tools/staticdocs/assets/js/13c1b4e4.58a03be2.js +1 -0
- data/tools/staticdocs/assets/js/1602.a7ddd3dc.js +1 -0
- data/tools/staticdocs/assets/js/1e02e6a3.68a73184.js +1 -0
- data/tools/staticdocs/assets/js/2047b354.58bf5de8.js +1 -0
- data/tools/staticdocs/assets/js/22b3ac48.5ab6a17a.js +1 -0
- data/tools/staticdocs/assets/js/2368.4443f5c4.js +4 -0
- data/tools/staticdocs/assets/js/2bb7bf90.882f03a1.js +1 -0
- data/tools/staticdocs/assets/js/2c15ad40.a56e1a40.js +1 -0
- data/tools/staticdocs/assets/js/35398c5c.d6cb2a82.js +1 -0
- data/tools/staticdocs/assets/js/3687.062fee32.js +101 -0
- data/tools/staticdocs/assets/js/3dd7ef3b.4782cafe.js +1 -0
- data/tools/staticdocs/assets/js/40365d27.cdd0a061.js +1 -0
- data/tools/staticdocs/assets/js/411898ad.63be48ce.js +1 -0
- data/tools/staticdocs/assets/js/42170351.49ebb70c.js +1 -0
- data/tools/staticdocs/assets/js/43652efd.deefbd37.js +1 -0
- data/tools/staticdocs/assets/js/54d0d530.9fccf082.js +1 -0
- data/tools/staticdocs/assets/js/59ed27a4.6a4d4905.js +1 -0
- data/tools/staticdocs/assets/js/5b233ba7.169a9701.js +1 -0
- data/tools/staticdocs/assets/js/5bc719f6.adbdce65.js +1 -0
- data/tools/staticdocs/assets/js/5c6ce5ec.1827793d.js +1 -0
- data/tools/staticdocs/assets/js/5fe211ef.866de8e9.js +1 -0
- data/tools/staticdocs/assets/js/6831b732.d0e1b5a6.js +1 -0
- data/tools/staticdocs/assets/js/696b4199.adf3731a.js +1 -0
- data/tools/staticdocs/assets/js/6b210247.bb5dedd5.js +1 -0
- data/tools/staticdocs/assets/js/6b65133b.c431a22a.js +1 -0
- data/tools/staticdocs/assets/js/6f92e431.13b5aeef.js +1 -0
- data/tools/staticdocs/assets/js/72c6d8a8.8f66ae6e.js +1 -0
- data/tools/staticdocs/assets/js/75e64983.31d1e579.js +1 -0
- data/tools/staticdocs/assets/js/7719.d199daa3.js +1 -0
- data/tools/staticdocs/assets/js/80c97f38.4f6a5637.js +1 -0
- data/tools/staticdocs/assets/js/{867640d5.32ca371f.js → 867640d5.9dd71bf3.js} +1 -1
- data/tools/staticdocs/assets/js/89e76475.a0353bb2.js +1 -0
- data/tools/staticdocs/assets/js/8b939c74.5fd8e3e8.js +1 -0
- data/tools/staticdocs/assets/js/8f7843ee.b3358f6f.js +1 -0
- data/tools/staticdocs/assets/js/9424f0b3.b8d6d2bf.js +1 -0
- data/tools/staticdocs/assets/js/964eb012.cb76dd8a.js +1 -0
- data/tools/staticdocs/assets/js/97535711.c3a1a5a1.js +1 -0
- data/tools/staticdocs/assets/js/99581c43.c9f8e384.js +1 -0
- data/tools/staticdocs/assets/js/9fb6059a.91edfcba.js +1 -0
- data/tools/staticdocs/assets/js/a677c089.d33ab1ca.js +1 -0
- data/tools/staticdocs/assets/js/a9987364.530c9592.js +1 -0
- data/tools/staticdocs/assets/js/a9b2dc27.50f54e80.js +1 -0
- data/tools/staticdocs/assets/js/{aa6b6c1b.bc122746.js → aa6b6c1b.dc1c4a62.js} +1 -1
- data/tools/staticdocs/assets/js/{b062d239.4e8142cb.js → b062d239.ff2df9fd.js} +1 -1
- data/tools/staticdocs/assets/js/b38a6d74.62bc94a3.js +1 -0
- data/tools/staticdocs/assets/js/b4596165.a2357781.js +1 -0
- data/tools/staticdocs/assets/js/b6d70f94.22ca3e8a.js +1 -0
- data/tools/staticdocs/assets/js/b9f60ba6.677e8e46.js +1 -0
- data/tools/staticdocs/assets/js/{bd0034eb.a201a4a7.js → bd0034eb.09d6bbbc.js} +1 -1
- data/tools/staticdocs/assets/js/c24eae19.3db158fe.js +1 -0
- data/tools/staticdocs/assets/js/cb8c3f08.0de82997.js +1 -0
- data/tools/staticdocs/assets/js/cd879be4.d650ab29.js +1 -0
- data/tools/staticdocs/assets/js/d1b923aa.240ccf18.js +1 -0
- data/tools/staticdocs/assets/js/d1bfc316.5c7b9c2f.js +1 -0
- data/tools/staticdocs/assets/js/{d24bf9b6.e348c06d.js → d24bf9b6.ea1e95ab.js} +1 -1
- data/tools/staticdocs/assets/js/d57a4b5d.82790d9f.js +1 -0
- data/tools/staticdocs/assets/js/d5d77c37.a1299467.js +1 -0
- data/tools/staticdocs/assets/js/d66bf9c0.8018f0a0.js +1 -0
- data/tools/staticdocs/assets/js/d8ca4191.ca5f5dde.js +1 -0
- data/tools/staticdocs/assets/js/d9b92eba.41086b81.js +1 -0
- data/tools/staticdocs/assets/js/db8fa1d0.5107d903.js +1 -0
- data/tools/staticdocs/assets/js/dbe31111.8f1677f3.js +1 -0
- data/tools/staticdocs/assets/js/dc5f7beb.dfbe012c.js +1 -0
- data/tools/staticdocs/assets/js/e501b0d1.512e0a0b.js +1 -0
- data/tools/staticdocs/assets/js/{f15615f1.a4d98d69.js → f15615f1.d668576a.js} +1 -1
- data/tools/staticdocs/assets/js/f75a5f33.d3a97a44.js +1 -0
- data/tools/staticdocs/assets/js/main.8c741ee1.js +38 -0
- data/tools/staticdocs/assets/js/runtime~main.7674b06d.js +1 -0
- data/tools/staticdocs/docs/configuration/accessors.html +2 -2
- data/tools/staticdocs/docs/configuration/command.html +2 -2
- data/tools/staticdocs/docs/configuration/conversions.html +10 -8
- data/tools/staticdocs/docs/configuration/format.html +2 -2
- data/tools/staticdocs/docs/configuration/interfaces.html +2 -2
- data/tools/staticdocs/docs/configuration/limits-response.html +19 -0
- data/tools/staticdocs/docs/configuration/plugins.html +9 -3
- data/tools/staticdocs/docs/configuration/processors.html +42 -0
- data/tools/staticdocs/docs/configuration/protocols.html +2 -2
- data/tools/staticdocs/docs/configuration/ssl-tls.html +2 -2
- data/tools/staticdocs/docs/configuration/table.html +3 -3
- data/tools/staticdocs/docs/configuration/target.html +2 -2
- data/tools/staticdocs/docs/configuration/telemetry-screens.html +9 -9
- data/tools/staticdocs/docs/configuration/telemetry.html +4 -2
- data/tools/staticdocs/docs/configuration.html +2 -2
- data/tools/staticdocs/docs/development/curl.html +1 -1
- data/tools/staticdocs/docs/development/developing.html +1 -1
- data/tools/staticdocs/docs/development/json-api.html +1 -1
- data/tools/staticdocs/docs/development/log-structure.html +1 -1
- data/tools/staticdocs/docs/development/roadmap.html +1 -1
- data/tools/staticdocs/docs/development/streaming-api.html +1 -1
- data/tools/staticdocs/docs/development/testing.html +1 -1
- data/tools/staticdocs/docs/development.html +1 -1
- data/tools/staticdocs/docs/getting-started/cli.html +16 -5
- data/tools/staticdocs/docs/getting-started/generators.html +19 -21
- data/tools/staticdocs/docs/getting-started/gettingstarted.html +1 -1
- data/tools/staticdocs/docs/getting-started/installation.html +1 -1
- data/tools/staticdocs/docs/getting-started/key-concepts.html +1 -1
- data/tools/staticdocs/docs/getting-started/podman.html +5 -2
- data/tools/staticdocs/docs/getting-started/requirements.html +1 -1
- data/tools/staticdocs/docs/getting-started/upgrading.html +2 -2
- data/tools/staticdocs/docs/getting-started.html +1 -1
- data/tools/staticdocs/docs/guides/bridges.html +1 -1
- data/tools/staticdocs/docs/guides/cfs.html +1 -1
- data/tools/staticdocs/docs/guides/custom-widgets.html +1 -1
- data/tools/staticdocs/docs/guides/dynamic-packets.html +3 -1
- data/tools/staticdocs/docs/guides/exposing-microservices.html +1 -1
- data/tools/staticdocs/docs/guides/little-endian-bitfields.html +1 -1
- data/tools/staticdocs/docs/guides/local-mode.html +1 -1
- data/tools/staticdocs/docs/guides/logging.html +1 -1
- data/tools/staticdocs/docs/guides/monitoring.html +1 -1
- data/tools/staticdocs/docs/guides/performance.html +1 -1
- data/tools/staticdocs/docs/guides/raspberrypi.html +1 -1
- data/tools/staticdocs/docs/guides/reference-architectures.html +1 -1
- data/tools/staticdocs/docs/guides/script-writing.html +1 -1
- data/tools/staticdocs/docs/guides/scripting-api.html +2 -2
- data/tools/staticdocs/docs/guides.html +1 -1
- data/tools/staticdocs/docs/meta/contributing.html +1 -1
- data/tools/staticdocs/docs/meta/licenses.html +1 -1
- data/tools/staticdocs/docs/meta/philosophy.html +1 -1
- data/tools/staticdocs/docs/meta/xtce.html +1 -1
- data/tools/staticdocs/docs/meta.html +1 -1
- data/tools/staticdocs/docs/privacy.html +1 -1
- data/tools/staticdocs/docs/tools/admin.html +2 -2
- data/tools/staticdocs/docs/tools/autonomic.html +2 -2
- data/tools/staticdocs/docs/tools/bucket-explorer.html +2 -2
- data/tools/staticdocs/docs/tools/calendar.html +2 -2
- data/tools/staticdocs/docs/tools/cmd-sender.html +2 -2
- data/tools/staticdocs/docs/tools/cmd-tlm-server.html +2 -2
- data/tools/staticdocs/docs/tools/command_history.html +2 -2
- data/tools/staticdocs/docs/tools/data-extractor.html +2 -2
- data/tools/staticdocs/docs/tools/data-viewer.html +2 -2
- data/tools/staticdocs/docs/tools/handbooks.html +2 -2
- data/tools/staticdocs/docs/tools/limits-monitor.html +2 -2
- data/tools/staticdocs/docs/tools/packet-viewer.html +2 -2
- data/tools/staticdocs/docs/tools/script-runner.html +12 -6
- data/tools/staticdocs/docs/tools/systemhealth.html +42 -0
- data/tools/staticdocs/docs/tools/table-manager.html +3 -3
- data/tools/staticdocs/docs/tools/tlm-grapher.html +2 -2
- data/tools/staticdocs/docs/tools/tlm-viewer.html +2 -2
- data/tools/staticdocs/docs/tools.html +2 -2
- data/tools/staticdocs/docs.html +1 -1
- data/tools/staticdocs/img/script_runner/checks_rb.png +0 -0
- data/tools/staticdocs/img/script_runner/environment_variables.png +0 -0
- data/tools/staticdocs/img/script_runner/right_click.png +0 -0
- data/tools/staticdocs/img/script_runner/script_suite.png +0 -0
- data/tools/staticdocs/img/systemhealth/alert_logs.png +0 -0
- data/tools/staticdocs/img/systemhealth/alert_notifications.png +0 -0
- data/tools/staticdocs/img/systemhealth/disk_usage.png +0 -0
- data/tools/staticdocs/img/systemhealth/process_metrics.png +0 -0
- data/tools/staticdocs/img/systemhealth/redis_metrics.png +0 -0
- data/tools/staticdocs/img/systemhealth/refresh_interval.png +0 -0
- data/tools/staticdocs/img/systemhealth/system_health_configuration.png +0 -0
- data/tools/staticdocs/img/systemhealth/system_overview_gauges.png +0 -0
- data/tools/staticdocs/img/systemhealth/systemhealth.png +0 -0
- data/tools/staticdocs/index.html +1 -1
- data/tools/staticdocs/lunr-index-1749788530521.json +1 -0
- data/tools/staticdocs/lunr-index.json +1 -1
- data/tools/staticdocs/markdown-page.html +1 -1
- data/tools/staticdocs/search-doc-1749788530521.json +1 -0
- data/tools/staticdocs/search-doc.json +1 -1
- data/tools/staticdocs/sitemap.xml +1 -1
- metadata +105 -79
- data/tools/staticdocs/assets/images/checks_rb-89f400098ff47774008ea420860c665c15ebf06819c3ee7050bed301ea0a9f46.png +0 -0
- data/tools/staticdocs/assets/images/right_click-371e3683026c0bb2b27187277b4e99727c6b52965e0190a5f81335248f40ef9b.png +0 -0
- data/tools/staticdocs/assets/images/script_suite-16647c3b3de01a8749f1b5c4ab2f8b452630df8c0470e5be38652acacfc98b5d.png +0 -0
- data/tools/staticdocs/assets/js/019369f3.5dd06a57.js +0 -1
- data/tools/staticdocs/assets/js/058ffc22.ed3ac5fa.js +0 -1
- data/tools/staticdocs/assets/js/0686a885.ef66a55c.js +0 -1
- data/tools/staticdocs/assets/js/0f5d161c.7aacaf90.js +0 -1
- data/tools/staticdocs/assets/js/0ff569c9.7aa50138.js +0 -1
- data/tools/staticdocs/assets/js/103cc3be.ff33b528.js +0 -1
- data/tools/staticdocs/assets/js/13196248.14de6ce1.js +0 -1
- data/tools/staticdocs/assets/js/13c1b4e4.2dafa283.js +0 -1
- data/tools/staticdocs/assets/js/1602.502ef9b1.js +0 -1
- data/tools/staticdocs/assets/js/1e02e6a3.d99a363c.js +0 -1
- data/tools/staticdocs/assets/js/2047b354.d91543a5.js +0 -1
- data/tools/staticdocs/assets/js/22b3ac48.5eb8d876.js +0 -1
- data/tools/staticdocs/assets/js/2368.fd1bb46a.js +0 -4
- data/tools/staticdocs/assets/js/2bb7bf90.1eee5bcb.js +0 -1
- data/tools/staticdocs/assets/js/2c15ad40.7f30b517.js +0 -1
- data/tools/staticdocs/assets/js/35398c5c.4f30c5da.js +0 -1
- data/tools/staticdocs/assets/js/3687.8bc61ef3.js +0 -101
- data/tools/staticdocs/assets/js/3dd7ef3b.dfbe9bb7.js +0 -1
- data/tools/staticdocs/assets/js/40365d27.42b05c12.js +0 -1
- data/tools/staticdocs/assets/js/411898ad.e55efd5d.js +0 -1
- data/tools/staticdocs/assets/js/42170351.2de491d4.js +0 -1
- data/tools/staticdocs/assets/js/43652efd.f7c95691.js +0 -1
- data/tools/staticdocs/assets/js/54d0d530.7cc2c5cc.js +0 -1
- data/tools/staticdocs/assets/js/5b233ba7.29533a03.js +0 -1
- data/tools/staticdocs/assets/js/5bc719f6.62d9a8b8.js +0 -1
- data/tools/staticdocs/assets/js/5c6ce5ec.40e0caf8.js +0 -1
- data/tools/staticdocs/assets/js/5fe211ef.2d29f3fb.js +0 -1
- data/tools/staticdocs/assets/js/6831b732.ec0009ac.js +0 -1
- data/tools/staticdocs/assets/js/696b4199.1c205c60.js +0 -1
- data/tools/staticdocs/assets/js/6b210247.32ded6d5.js +0 -1
- data/tools/staticdocs/assets/js/6b65133b.b2a62736.js +0 -1
- data/tools/staticdocs/assets/js/6f92e431.7bd2a1f1.js +0 -1
- data/tools/staticdocs/assets/js/72c6d8a8.21321ecc.js +0 -1
- data/tools/staticdocs/assets/js/75e64983.e0eb7741.js +0 -1
- data/tools/staticdocs/assets/js/7719.0d312792.js +0 -1
- data/tools/staticdocs/assets/js/80c97f38.a0dfbdf7.js +0 -1
- data/tools/staticdocs/assets/js/89e76475.20b3a636.js +0 -1
- data/tools/staticdocs/assets/js/8f7843ee.6d7c9cd4.js +0 -1
- data/tools/staticdocs/assets/js/9424f0b3.75b12400.js +0 -1
- data/tools/staticdocs/assets/js/964eb012.0eee94ba.js +0 -1
- data/tools/staticdocs/assets/js/97535711.630cee4d.js +0 -1
- data/tools/staticdocs/assets/js/99581c43.73b5cd90.js +0 -1
- data/tools/staticdocs/assets/js/9fb6059a.715fc441.js +0 -1
- data/tools/staticdocs/assets/js/a677c089.76d13f14.js +0 -1
- data/tools/staticdocs/assets/js/a9987364.3b3e7379.js +0 -1
- data/tools/staticdocs/assets/js/a9b2dc27.da1da6f1.js +0 -1
- data/tools/staticdocs/assets/js/b38a6d74.4a10f506.js +0 -1
- data/tools/staticdocs/assets/js/b4596165.08749f15.js +0 -1
- data/tools/staticdocs/assets/js/b6d70f94.776bc00f.js +0 -1
- data/tools/staticdocs/assets/js/b9f60ba6.ce400445.js +0 -1
- data/tools/staticdocs/assets/js/c24eae19.77326c08.js +0 -1
- data/tools/staticdocs/assets/js/cb8c3f08.73cefada.js +0 -1
- data/tools/staticdocs/assets/js/cd879be4.dc2adfcc.js +0 -1
- data/tools/staticdocs/assets/js/d1b923aa.57f5e162.js +0 -1
- data/tools/staticdocs/assets/js/d1bfc316.73bb876f.js +0 -1
- data/tools/staticdocs/assets/js/d57a4b5d.885590b1.js +0 -1
- data/tools/staticdocs/assets/js/d5d77c37.1143a9d4.js +0 -1
- data/tools/staticdocs/assets/js/d66bf9c0.0ffb9759.js +0 -1
- data/tools/staticdocs/assets/js/d8ca4191.fe602968.js +0 -1
- data/tools/staticdocs/assets/js/d9b92eba.a115a366.js +0 -1
- data/tools/staticdocs/assets/js/db8fa1d0.1aefa4e7.js +0 -1
- data/tools/staticdocs/assets/js/dbe31111.9c957b0c.js +0 -1
- data/tools/staticdocs/assets/js/dc5f7beb.ddc630ca.js +0 -1
- data/tools/staticdocs/assets/js/e501b0d1.f9c2d1fc.js +0 -1
- data/tools/staticdocs/assets/js/main.ba1fa268.js +0 -38
- data/tools/staticdocs/assets/js/runtime~main.ca894d1e.js +0 -1
- data/tools/staticdocs/lunr-index-1748640055686.json +0 -1
- data/tools/staticdocs/search-doc-1748640055686.json +0 -1
@@ -1,9 +1,9 @@
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/generators" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/generators" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.1"><title data-rh=true>Code Generators | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/generators><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Code Generators | OpenC3 Docs"><meta data-rh=true name=description content="Using openc3.sh to generate code"><meta data-rh=true property=og:description content="Using openc3.sh to generate code"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/generators><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/generators hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/generators hreflang=x-default><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/generators","name":"Code Generators","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1a361da6.css><script src=/tools/staticdocs/assets/js/runtime~main.7674b06d.js defer></script><script src=/tools/staticdocs/assets/js/main.8c741ee1.js defer></script><body class=navigation-with-keyboard><svg xmlns=http://www.w3.org/2000/svg style="display: none;"><defs>
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
3
3
|
</defs></svg>
|
4
4
|
<script>!function(){var t="dark",e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",e||t),document.documentElement.setAttribute("data-theme-choice",e||t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts>Key Concepts</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/installation>Installation</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted>Getting Started</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading>Upgrading</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli>Command Line Interface</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/generators>Code Generators</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/podman>Podman</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements>Requirements and Design</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Code Generators</span></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Code Generators</h1></header><p>The COSMOS Code Generators are built into the scripts <code>openc3.sh</code> and <code>openc3.bat</code> that are included in the COSMOS <a href=https://github.com/OpenC3/cosmos-project target=_blank rel="noopener noreferrer">project</a> (more about <a href=/tools/staticdocs/docs/getting-started/key-concepts#projects>projects</a>).</p>
|
5
5
|
<p>If you followed the <a href=/tools/staticdocs/docs/getting-started/installation>Installation Guide</a> you should already be inside a cloned <a href=https://github.com/OpenC3/cosmos-project target=_blank rel="noopener noreferrer">openc3-project</a> which is in your PATH (necessary for openc3.bat / openc3.sh to be resolved). To see all the available code generators type the following:</p>
|
6
|
-
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">% openc3.sh cli generate</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Unknown generator </span><span class="token string" style="color:rgb(173, 219, 103)">''</span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">.</span><span class="token plain"> Valid generators: plugin, target, microservice, widget, conversion,</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">limits_response, tool, tool_vue, tool_angular, tool_react, tool_svelte</span><br></span></code></pre></div></div>
|
6
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">% openc3.sh cli generate</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Unknown generator </span><span class="token string" style="color:rgb(173, 219, 103)">''</span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">.</span><span class="token plain"> Valid generators: plugin, target, microservice, widget, conversion,</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> processor, limits_response, tool, tool_vue, tool_angular, tool_react, tool_svelte</span><br></span></code></pre></div></div>
|
7
7
|
<div class="theme-admonition theme-admonition-note admonition_IZjC alert alert--secondary"><div class=admonitionHeading_uVvU><span class=admonitionIcon_HiR3><svg viewBox="0 0 14 16"><path fill-rule=evenodd d="M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"/></svg></span>Training Available</div><div class=admonitionContent_bl22><p>If any of this gets confusing, contact us at <a href=mailto:support@openc3.com></a><a href=mailto:support@openc3.com target=_blank rel="noopener noreferrer">support@openc3.com</a>. We have training classes available!</div></div>
|
8
8
|
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=plugin-generator>Plugin Generator<a href=#plugin-generator class=hash-link aria-label="Direct link to Plugin Generator" title="Direct link to Plugin Generator"></a></h2>
|
9
9
|
<p>The plugin generator creates the scaffolding for a new COSMOS Plugin. It requires a plugin name and will create a new directory called <code>openc3-cosmos-<name></code>. For example:</p>
|
@@ -13,34 +13,32 @@
|
|
13
13
|
<p>While this structure is required, it is not very useful by itself. The plugin generator just creates the framework for other generators to use.</p>
|
14
14
|
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=target-generator>Target Generator<a href=#target-generator class=hash-link aria-label="Direct link to Target Generator" title="Direct link to Target Generator"></a></h2>
|
15
15
|
<p>The target generator creates the scaffolding for a new COSMOS Target. It must operate inside an existing COSMOS plugin and requires a target name. For example:</p>
|
16
|
-
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate target</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate target </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate target GSE</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Target GSE successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><br></span></code></pre></div></div>
|
16
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate target</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate target </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate target GSE </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--python</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Target GSE successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><br></span></code></pre></div></div>
|
17
17
|
<p>This creates the following files and directories:</p>
|
18
|
-
<table><thead><tr><th>Name<th>Description<tbody><tr><td>targets/GSE<td>Contains the configuration for the GSE target. The target name is always defined in all caps. This is typically the default name of the target, but well-designed targets will allow themselves to be renamed at installation.<tr><td>targets/GSE/cmd_tlm<td>Contains the command and telemetry definition files for the GSE target. These files capture the format of the commands that can be sent to the target, and the telemetry packets that are expected to be received by COSMOS from the target. Note that the files in this folder are processed in alphabetical order by default. That can matter if you reference a packet in another file (it must already have been defined).<tr><td>targets/GSE/cmd_tlm/cmd.txt<td>Example <a href=/tools/staticdocs/docs/configuration/command>command</a> configuration. Will need to be edited for the target specific commands.<tr><td>targets/GSE/cmd_tlm/tlm.txt<td>Example <a href=/tools/staticdocs/docs/configuration/telemetry>telemetry</a> configuration. Will need to be edited for the target specific telemetry.<tr><td>targets/GSE/lib<td>Contains any custom code required by the target. Good examples of custom code are library files, custom <a href=/tools/staticdocs/docs/configuration/interfaces>interface</a> classes and <a href=/tools/staticdocs/docs/configuration/protocols>protocols</a>.<tr><td>targets/GSE/lib/gse.rb/py<td>Example library file which can be expanded as the target is developed. COSMOS recommends building up library methods to avoid code duplication and ease reuse.<tr><td>targets/GSE/procedures<td>This folder contains target specific procedures and helper methods which exercise functionality of the target. These procedures should be kept simple and only use the command and telemetry definitions associated with this target. See the <a href=/tools/staticdocs/docs/guides/script-writing#script-organization>Scripting Guide</a> for more information.<tr><td>targets/GSE/procedures/procedure.rb/py<td>Procedure with an example of sending a command and checking telemetry<tr><td>targets/GSE/public<td>Put image files here for use in Telemetry Viewer Canvas Image widgets such as <a href=/tools/staticdocs/docs/configuration/telemetry-screens#canvasimage>CANVASIMAGE</a> and <a href=/tools/staticdocs/docs/configuration/telemetry-screens#canvasimagevalue>CANVASIMAGEVALUE</a><tr><td>targets/GSE/screens<td>Contains telemetry <a href=/tools/staticdocs/docs/configuration/telemetry-screens>screens</a> for the target<tr><td>targets/GSE/screens/status.txt<td>Example <a href=/tools/staticdocs/docs/configuration/telemetry-screens>screen</a> to display telemetry values<tr><td>targets/GSE/target.txt<td><a href=/tools/staticdocs/docs/configuration/target>Target</a> configuration such as ignoring command and telemetry items and how to process the cmd/tlm files</table>
|
18
|
+
<table><thead><tr><th>Name<th>Description<tbody><tr><td>targets/GSE<td>Contains the configuration for the GSE target. The target name is always defined in all caps. This is typically the default name of the target, but well-designed targets will allow themselves to be renamed at installation.<tr><td>targets/GSE/cmd_tlm<td>Contains the command and telemetry definition files for the GSE target. These files capture the format of the commands that can be sent to the target, and the telemetry packets that are expected to be received by COSMOS from the target. Note that the files in this folder are processed in alphabetical order by default. That can matter if you reference a packet in another file (it must already have been defined).<tr><td>targets/GSE/cmd_tlm/cmd.txt<td>Example <a href=/tools/staticdocs/docs/configuration/command>command</a> configuration. Will need to be edited for the target specific commands.<tr><td>targets/GSE/cmd_tlm/tlm.txt<td>Example <a href=/tools/staticdocs/docs/configuration/telemetry>telemetry</a> configuration. Will need to be edited for the target specific telemetry.<tr><td>targets/GSE/lib<td>Contains any custom code required by the target. Good examples of custom code are library files, custom <a href=/tools/staticdocs/docs/configuration/interfaces>interface</a> classes and <a href=/tools/staticdocs/docs/configuration/protocols>protocols</a>.<tr><td>targets/GSE/lib/gse.[rb/py]<td>Example library file which can be expanded as the target is developed. COSMOS recommends building up library methods to avoid code duplication and ease reuse.<tr><td>targets/GSE/procedures<td>This folder contains target specific procedures and helper methods which exercise functionality of the target. These procedures should be kept simple and only use the command and telemetry definitions associated with this target. See the <a href=/tools/staticdocs/docs/guides/script-writing#script-organization>Scripting Guide</a> for more information.<tr><td>targets/GSE/procedures/procedure.[rb/py]<td>Procedure with an example of sending a command and checking telemetry<tr><td>targets/GSE/public<td>Put image files here for use in Telemetry Viewer Canvas Image widgets such as <a href=/tools/staticdocs/docs/configuration/telemetry-screens#canvasimage>CANVASIMAGE</a> and <a href=/tools/staticdocs/docs/configuration/telemetry-screens#canvasimagevalue>CANVASIMAGEVALUE</a><tr><td>targets/GSE/screens<td>Contains telemetry <a href=/tools/staticdocs/docs/configuration/telemetry-screens>screens</a> for the target<tr><td>targets/GSE/screens/status.txt<td>Example <a href=/tools/staticdocs/docs/configuration/telemetry-screens>screen</a> to display telemetry values<tr><td>targets/GSE/target.txt<td><a href=/tools/staticdocs/docs/configuration/target>Target</a> configuration such as ignoring command and telemetry items and how to process the cmd/tlm files</table>
|
19
19
|
<p>It also updates the plugin.txt file to add the new target:</p>
|
20
|
-
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">VARIABLE</span><span class="token plain"> gse_target_name </span><span class="token constant" style="color:rgb(130, 170, 255)">GSE</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token constant" style="color:rgb(130, 170, 255)">TARGET</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">GSE</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token operator" style="color:rgb(127, 219, 202)">%=</span><span class="token plain"> gse_target_name </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">%></span><br></span><span class=token-line style=color:#d6deeb><span class="token string-literal string" style="color:rgb(173, 219, 103)">INTERFACE <%= gse_target_name %></span><span class="token plain">_INT tcpip_client_interface</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">
|
20
|
+
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">VARIABLE</span><span class="token plain"> gse_target_name </span><span class="token constant" style="color:rgb(130, 170, 255)">GSE</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token constant" style="color:rgb(130, 170, 255)">TARGET</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">GSE</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token operator" style="color:rgb(127, 219, 202)">%=</span><span class="token plain"> gse_target_name </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">%></span><br></span><span class=token-line style=color:#d6deeb><span class="token string-literal string" style="color:rgb(173, 219, 103)">INTERFACE <%= gse_target_name %></span><span class="token plain">_INT openc3</span><span class="token operator" style="color:rgb(127, 219, 202)">/</span><span class="token plain">interfaces</span><span class="token operator" style="color:rgb(127, 219, 202)">/</span><span class="token plain">tcpip_client_interface</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">py host</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">docker</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">internal </span><span class="token number" style="color:rgb(247, 140, 108)">8080</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">8081</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">10.0</span><span class="token plain"> </span><span class="token keyword" style="color:rgb(127, 219, 202)">nil</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">BURST</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic"># INTERFACE <%= gse_target_name %>_INT tcpip_client_interface.rb host.docker.internal 8080 8081 10.0 nil BURST</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">MAP_TARGET</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token operator" style="color:rgb(127, 219, 202)">%=</span><span class="token plain"> gse_target_name </span><span class="token operator" style="color:rgb(127, 219, 202)">%</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><br></span></code></pre></div></div>
|
21
21
|
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=microservice-generator>Microservice Generator<a href=#microservice-generator class=hash-link aria-label="Direct link to Microservice Generator" title="Direct link to Microservice Generator"></a></h2>
|
22
22
|
<p>The microservice generator creates the scaffolding for a new COSMOS Microservice. It must operate inside an existing COSMOS plugin and requires a target name. For example:</p>
|
23
|
-
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate microservice</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate microservice </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate microservice background</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Microservice BACKGROUND successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><br></span></code></pre></div></div>
|
23
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate microservice</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate microservice </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate microservice background </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--python</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Microservice BACKGROUND successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><br></span></code></pre></div></div>
|
24
24
|
<p>This creates the following files and directories:</p>
|
25
|
-
<table><thead><tr><th>Name<th>Description<tbody><tr><td>microservices/BACKGROUND<td>Contains the code and any necessary configuration for the BACKGROUND microservice. The name is always defined in all caps. This is typically the default name of the microservice, but well-designed microservices will allow themselves to be renamed at installation.<tr><td>microservices/BACKGROUND/background.
|
25
|
+
<table><thead><tr><th>Name<th>Description<tbody><tr><td>microservices/BACKGROUND<td>Contains the code and any necessary configuration for the BACKGROUND microservice. The name is always defined in all caps. This is typically the default name of the microservice, but well-designed microservices will allow themselves to be renamed at installation.<tr><td>microservices/BACKGROUND/background.py<td>Fully functional microservice which will run every minute and log a message. Edit to implement any custom logic that you want to run in the background. Potential uses are safety microservices which can check and autonomously respond to complex events and take action (NOTE: Simple actions might just require a <a href=/tools/staticdocs/docs/configuration/limits-response>Limits Response</a>).</table>
|
26
26
|
<p>It also updates the plugin.txt file to add the new microservice:</p>
|
27
|
-
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">MICROSERVICE</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">BACKGROUND</span><span class="token plain"> background</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">microservice</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">CMD</span><span class="token plain">
|
27
|
+
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">MICROSERVICE</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">BACKGROUND</span><span class="token plain"> background</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">microservice</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">CMD</span><span class="token plain"> python background</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">py</span><br></span></code></pre></div></div>
|
28
28
|
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=conversion-generator>Conversion Generator<a href=#conversion-generator class=hash-link aria-label="Direct link to Conversion Generator" title="Direct link to Conversion Generator"></a></h2>
|
29
29
|
<p>The conversion generator creates the scaffolding for a new COSMOS <a href=/tools/staticdocs/docs/configuration/conversions>Conversion</a>. It must operate inside an existing COSMOS plugin and requires both a target name and conversion name. For example:</p>
|
30
|
-
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate conversion</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate conversion </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">TARGET</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate conversion GSE double</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Conversion targets/GSE/lib/double_conversion.
|
31
|
-
<p>
|
32
|
-
<
|
33
|
-
<p>
|
34
|
-
<div class="language-
|
30
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate conversion</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate conversion </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">TARGET</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate conversion GSE double </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--python</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Conversion targets/GSE/lib/double_conversion.py successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">To use the conversion </span><span class="token function" style="color:rgb(130, 170, 255)">add</span><span class="token plain"> the following to a telemetry item:</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> READ_CONVERSION double_conversion.py</span><br></span></code></pre></div></div>
|
31
|
+
<p>For more information about creating custom conversions and how to apply them, see the <a href=/tools/staticdocs/docs/configuration/conversions>Conversion</a> documentation.</p>
|
32
|
+
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=processor-generator>Processor Generator<a href=#processor-generator class=hash-link aria-label="Direct link to Processor Generator" title="Direct link to Processor Generator"></a></h2>
|
33
|
+
<p>The processor generator creates the scaffolding for a new COSMOS <a href=/tools/staticdocs/docs/configuration/processors>Processor</a>. It must operate inside an existing COSMOS plugin and requires both a target name and processor name. For example:</p>
|
34
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate processor</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate processor </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">TARGET</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate processor GSE slope </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--python</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Processor targets/GSE/lib/slope_processor.py successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">To use the processor </span><span class="token function" style="color:rgb(130, 170, 255)">add</span><span class="token plain"> the following to a telemetry packet:</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> PROCESSOR SLOPE slope_processor.py </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">PARAMS</span><span class="token punctuation" style="color:rgb(199, 146, 234)">..</span><span class="token plain">.</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><br></span></code></pre></div></div>
|
35
|
+
<p>For more information about creating custom processors and how to apply them, see the <a href=/tools/staticdocs/docs/configuration/processors>Processor</a> documentation.</p>
|
35
36
|
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=limits-response-generator>Limits Response Generator<a href=#limits-response-generator class=hash-link aria-label="Direct link to Limits Response Generator" title="Direct link to Limits Response Generator"></a></h2>
|
36
|
-
<p>The limits_response generator creates the scaffolding for a new COSMOS <a href=/tools/staticdocs/docs/configuration/
|
37
|
-
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate limits_response</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate limits_response </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">TARGET</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate limits_response GSE safe</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Limits response targets/GSE/lib/safe_limits_response.
|
38
|
-
<p>
|
39
|
-
<table><thead><tr><th>Name<th>Description<tbody><tr><td>targets/GSE/lib/safe_limits_response.rb<td>Fully functional Limits Response which has an example implementation of the call() method and taking action based on the current limits state of the particular item</table>
|
40
|
-
<p>As the generator states, to use this limits code you must add it to a telemetry item which has limits defined. In the generated GSE target, none of the items have limits defined so you first need to add limits and then add the response.</p>
|
41
|
-
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">TELEMETRY</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">GSE</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">STATUS</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">BIG_ENDIAN</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"Telemetry description"</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token comment" style="color:rgb(99, 119, 119);font-style:italic"># Keyword Name BitSize Type ID Description</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">APPEND_ID_ITEM</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">ID</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">16</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">INT</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">1</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"Identifier"</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">APPEND_ITEM</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">VALUE</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">32</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">FLOAT</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"Value"</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">LIMITS</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">DEFAULT</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">1</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">ENABLED</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token number" style="color:rgb(247, 140, 108)">80.0</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token number" style="color:rgb(247, 140, 108)">70.0</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">60.0</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">80.0</span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token number" style="color:rgb(247, 140, 108)">20.0</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">20.0</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">LIMITS_RESPONSE</span><span class="token plain"> safe_limits_response</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">rb</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">APPEND_ITEM</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">BOOL</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">8</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">UINT</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"Boolean"</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">STATE</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">FALSE</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">STATE</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">TRUE</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">1</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">APPEND_ITEM</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">LABEL</span><span class="token plain"> </span><span class="token number" style="color:rgb(247, 140, 108)">0</span><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">STRING</span><span class="token plain"> </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"The label to apply"</span><br></span></code></pre></div></div>
|
37
|
+
<p>The limits_response generator creates the scaffolding for a new COSMOS <a href=/tools/staticdocs/docs/configuration/limits-response>Limits Response</a>. It must operate inside an existing COSMOS plugin and requires both a target name and limits response name. For example:</p>
|
38
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate limits_response</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate limits_response </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">TARGET</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">NAME</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"> </span><span class="token punctuation" style="color:rgb(199, 146, 234)">(</span><span class="token plain">--ruby or --python</span><span class="token punctuation" style="color:rgb(199, 146, 234)">)</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate limits_response GSE safe </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--python</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Limits response targets/GSE/lib/safe_limits_response.py successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">To use the limits response </span><span class="token function" style="color:rgb(130, 170, 255)">add</span><span class="token plain"> the following to a telemetry item:</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> LIMITS_RESPONSE safe_limits_response.py</span><br></span></code></pre></div></div>
|
39
|
+
<p>For more information about creating limits responses and how to apply them, see the <a href=/tools/staticdocs/docs/configuration/limits-response>Limits Response</a> documentation.</p>
|
42
40
|
<h2 class="anchor anchorWithStickyNavbar_fF9Z" id=widget-generator>Widget Generator<a href=#widget-generator class=hash-link aria-label="Direct link to Widget Generator" title="Direct link to Widget Generator"></a></h2>
|
43
|
-
<p>The
|
41
|
+
<p>The widget generator creates the scaffolding for a new COSMOS Widget for use in <a href=/tools/staticdocs/docs/configuration/telemetry-screens>Telemetry Viewer Screens</a>. For more information see the <a href=/tools/staticdocs/docs/guides/custom-widgets>Custom Widget</a> guide. It must operate inside an existing COSMOS plugin and requires a widget name. For example:</p>
|
44
42
|
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate widget</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Usage: cli generate widget </span><span class="token operator" style="color:rgb(127, 219, 202)"><</span><span class="token plain">SuperdataWidget</span><span class="token operator" style="color:rgb(127, 219, 202)">></span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain" style=display:inline-block></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">openc3-cosmos-gse % openc3.sh cli generate widget HelloworldWidget</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Widget HelloworldWidget successfully generated</span><span class="token operator" style="color:rgb(127, 219, 202)">!</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain">Please be sure HelloworldWidget does not overlap an existing widget: https://docs.openc3.com/docs/configuration/telemetry-screens</span><br></span></code></pre></div></div>
|
45
43
|
<p>This creates the following files and directories:</p>
|
46
44
|
<table><thead><tr><th>Name<th>Description<tbody><tr><td>src/HelloworldWidget.vue<td>Fully functional widget which displays a simple value. This can be expanded using existing COSMOS Vue.js code to create any data visualization imaginable.</table>
|
@@ -52,4 +50,4 @@
|
|
52
50
|
<p>This creates the following files and directories:</p>
|
53
51
|
<table><thead><tr><th>Name<th>Description<tbody><tr><td>src/App.vue<td>Basic Vue template to render the application.<tr><td>src/main.js<td>Entry point for the new tool which loads Vue, Vuetify, and other libraries.<tr><td>src/router.js<td>Vue component router.<tr><td>src/tools/datavis<td>Contains all the files necessary to serve a web-based tool named datavis. The name is always defined in all lowercase. Due to technical limitations, the toolname must be unique and cannot be renamed at installation.<tr><td>src/tools/datavis/datavis.vue<td>Fully functional tool which displays a simple button. This can be expanded using existing COSMOS Vue.js code to create any tool imaginable.<tr><td>package.json<td>Build and dependency definition file. Used by npm or yarn to build the tool.<tr><td>vue.config.js<td>Vue configuration file used to serve the application in development and build the application.<tr><td><dotfiles><td>Various dotfiles which help configure formatters and tools for Javascript frontend development</table>
|
54
52
|
<p>It also updates the plugin.txt file to add the new tool. The icon can be changed to any of the material design icons found <a href=https://pictogrammers.com/library/mdi/ target=_blank rel="noopener noreferrer">here</a>.</p>
|
55
|
-
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">TOOL</span><span class="token plain"> datavis </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"DataVis"</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">INLINE_URL</span><span class="token plain"> main</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">js</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">ICON</span><span class="token plain"> mdi</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">file</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">cad</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">box</span><br></span></code></pre></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class=col><a href=https://github.com/OpenC3/cosmos/tree/main/docs.openc3.com/docs/getting-started/generators.md target=_blank rel="noopener noreferrer" class=theme-edit-this-page><svg fill=currentColor height=20 width=20 viewBox="0 0 40 40" class=iconEdit_UohW aria-hidden=true><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"/></g></svg>Edit this page</a></div><div class="col lastUpdated_g62E"></div></div></footer></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href=/tools/staticdocs/docs/getting-started/cli><div class=pagination-nav__sublabel>Previous</div><div class=pagination-nav__label>Command Line Interface</div></a><a class="pagination-nav__link pagination-nav__link--next" href=/tools/staticdocs/docs/getting-started/podman><div class=pagination-nav__sublabel>Next</div><div class=pagination-nav__label>Podman</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_TN1Q thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href=#plugin-generator class="table-of-contents__link toc-highlight">Plugin Generator</a><li><a href=#target-generator class="table-of-contents__link toc-highlight">Target Generator</a><li><a href=#microservice-generator class="table-of-contents__link toc-highlight">Microservice Generator</a><li><a href=#conversion-generator class="table-of-contents__link toc-highlight">Conversion Generator</a><li><a href=#limits-response-generator class="table-of-contents__link toc-highlight">Limits Response Generator</a><li><a href=#widget-generator class="table-of-contents__link toc-highlight">Widget Generator</a><li><a href=#tool-generator class="table-of-contents__link toc-highlight">Tool Generator</a></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Homepage</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://openc3.com target=_blank rel="noopener noreferrer" class=footer__link-item>Home</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Docs</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs>Documentation</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Community</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://www.linkedin.com/company/openc3 target=_blank rel="noopener noreferrer" class=footer__link-item>LinkedIn<svg width=13.5 height=13.5 aria-hidden=true class=iconExternalLink_awgD><use href=#theme-svg-external-link /></svg></a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>More</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://github.com/OpenC3/cosmos target=_blank rel="noopener noreferrer" class=footer__link-item>GitHub<svg width=13.5 height=13.5 aria-hidden=true class=iconExternalLink_awgD><use href=#theme-svg-external-link /></svg></a><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs/privacy>Privacy</a></ul></div></div><div class="footer__bottom text--center"><div class=footer__copyright>Copyright © 2025 OpenC3, Inc.</div></div></div></footer></div>
|
53
|
+
<div class="language-ruby codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-ruby codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token constant" style="color:rgb(130, 170, 255)">TOOL</span><span class="token plain"> datavis </span><span class="token string-literal string" style="color:rgb(173, 219, 103)">"DataVis"</span><span class="token plain"></span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">INLINE_URL</span><span class="token plain"> main</span><span class="token punctuation" style="color:rgb(199, 146, 234)">.</span><span class="token plain">js</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"> </span><span class="token constant" style="color:rgb(130, 170, 255)">ICON</span><span class="token plain"> mdi</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">file</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">cad</span><span class="token operator" style="color:rgb(127, 219, 202)">-</span><span class="token plain">box</span><br></span></code></pre></div></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="row margin-top--sm theme-doc-footer-edit-meta-row"><div class=col><a href=https://github.com/OpenC3/cosmos/tree/main/docs.openc3.com/docs/getting-started/generators.md target=_blank rel="noopener noreferrer" class=theme-edit-this-page><svg fill=currentColor height=20 width=20 viewBox="0 0 40 40" class=iconEdit_UohW aria-hidden=true><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"/></g></svg>Edit this page</a></div><div class="col lastUpdated_g62E"></div></div></footer></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href=/tools/staticdocs/docs/getting-started/cli><div class=pagination-nav__sublabel>Previous</div><div class=pagination-nav__label>Command Line Interface</div></a><a class="pagination-nav__link pagination-nav__link--next" href=/tools/staticdocs/docs/getting-started/podman><div class=pagination-nav__sublabel>Next</div><div class=pagination-nav__label>Podman</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_TN1Q thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href=#plugin-generator class="table-of-contents__link toc-highlight">Plugin Generator</a><li><a href=#target-generator class="table-of-contents__link toc-highlight">Target Generator</a><li><a href=#microservice-generator class="table-of-contents__link toc-highlight">Microservice Generator</a><li><a href=#conversion-generator class="table-of-contents__link toc-highlight">Conversion Generator</a><li><a href=#processor-generator class="table-of-contents__link toc-highlight">Processor Generator</a><li><a href=#limits-response-generator class="table-of-contents__link toc-highlight">Limits Response Generator</a><li><a href=#widget-generator class="table-of-contents__link toc-highlight">Widget Generator</a><li><a href=#tool-generator class="table-of-contents__link toc-highlight">Tool Generator</a></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Homepage</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://openc3.com target=_blank rel="noopener noreferrer" class=footer__link-item>Home</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Docs</div><ul class="footer__items clean-list"><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs>Documentation</a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>Community</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://www.linkedin.com/company/openc3 target=_blank rel="noopener noreferrer" class=footer__link-item>LinkedIn<svg width=13.5 height=13.5 aria-hidden=true class=iconExternalLink_awgD><use href=#theme-svg-external-link /></svg></a></ul></div><div class="theme-layout-footer-column col footer__col"><div class=footer__title>More</div><ul class="footer__items clean-list"><li class=footer__item><a href=https://github.com/OpenC3/cosmos target=_blank rel="noopener noreferrer" class=footer__link-item>GitHub<svg width=13.5 height=13.5 aria-hidden=true class=iconExternalLink_awgD><use href=#theme-svg-external-link /></svg></a><li class=footer__item><a class=footer__link-item href=/tools/staticdocs/docs/privacy>Privacy</a></ul></div></div><div class="footer__bottom text--center"><div class=footer__copyright>Copyright © 2025 OpenC3, Inc.</div></div></div></footer></div>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/gettingstarted" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/gettingstarted" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.1"><title data-rh=true>Getting Started | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/gettingstarted><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Getting Started | OpenC3 Docs"><meta data-rh=true name=description content="Getting starting with COSMOS"><meta data-rh=true property=og:description content="Getting starting with COSMOS"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/gettingstarted><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/gettingstarted hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/gettingstarted hreflang=x-default><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/gettingstarted","name":"Getting Started","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1a361da6.css><script src=/tools/staticdocs/assets/js/runtime~main.7674b06d.js defer></script><script src=/tools/staticdocs/assets/js/main.8c741ee1.js defer></script><body class=navigation-with-keyboard><svg xmlns=http://www.w3.org/2000/svg style="display: none;"><defs>
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
3
3
|
</defs></svg>
|
4
4
|
<script>!function(){var t="dark",e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",e||t),document.documentElement.setAttribute("data-theme-choice",e||t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts>Key Concepts</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/installation>Installation</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted>Getting Started</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading>Upgrading</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli>Command Line Interface</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/generators>Code Generators</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/podman>Podman</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements>Requirements and Design</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Getting Started</span></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Getting Started</h1></header><p>Welcome to the OpenC3 COSMOS system... Let's get started! This guide is a high level overview that will help with setting up your first COSMOS project.</p>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/installation" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/installation" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.1"><title data-rh=true>Installation | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/installation><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Installation | OpenC3 Docs"><meta data-rh=true name=description content="Installing OpenC3 COSMOS"><meta data-rh=true property=og:description content="Installing OpenC3 COSMOS"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/installation><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/installation hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/installation hreflang=x-default><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/installation","name":"Installation","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1a361da6.css><script src=/tools/staticdocs/assets/js/runtime~main.7674b06d.js defer></script><script src=/tools/staticdocs/assets/js/main.8c741ee1.js defer></script><body class=navigation-with-keyboard><svg xmlns=http://www.w3.org/2000/svg style="display: none;"><defs>
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
3
3
|
</defs></svg>
|
4
4
|
<script>!function(){var t="dark",e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",e||t),document.documentElement.setAttribute("data-theme-choice",e||t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts>Key Concepts</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/installation>Installation</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted>Getting Started</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading>Upgrading</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli>Command Line Interface</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/generators>Code Generators</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/podman>Podman</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements>Requirements and Design</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Installation</span></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Installation</h1></header><h2 class="anchor anchorWithStickyNavbar_fF9Z" id=installing-openc3-cosmos>Installing OpenC3 COSMOS<a href=#installing-openc3-cosmos class=hash-link aria-label="Direct link to Installing OpenC3 COSMOS" title="Direct link to Installing OpenC3 COSMOS"></a></h2>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/key-concepts" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/key-concepts" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.1"><title data-rh=true>Key Concepts | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/key-concepts><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Key Concepts | OpenC3 Docs"><meta data-rh=true name=description content="Projects, Containerization, Frontend, Backend"><meta data-rh=true property=og:description content="Projects, Containerization, Frontend, Backend"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/key-concepts><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/key-concepts hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/key-concepts hreflang=x-default><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/key-concepts","name":"Key Concepts","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1a361da6.css><script src=/tools/staticdocs/assets/js/runtime~main.7674b06d.js defer></script><script src=/tools/staticdocs/assets/js/main.8c741ee1.js defer></script><body class=navigation-with-keyboard><svg xmlns=http://www.w3.org/2000/svg style="display: none;"><defs>
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
3
3
|
</defs></svg>
|
4
4
|
<script>!function(){var t="dark",e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",e||t),document.documentElement.setAttribute("data-theme-choice",e||t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts>Key Concepts</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/installation>Installation</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted>Getting Started</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading>Upgrading</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli>Command Line Interface</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/generators>Code Generators</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/podman>Podman</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements>Requirements and Design</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Key Concepts</span></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>OpenC3 COSMOS Key Concepts</h1></header>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/podman" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/podman" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.1"><title data-rh=true>Podman | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Podman | OpenC3 Docs"><meta data-rh=true name=description content="Installing and running COSMOS with Podman"><meta data-rh=true property=og:description content="Installing and running COSMOS with Podman"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman hreflang=x-default><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/podman","name":"Podman","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1a361da6.css><script src=/tools/staticdocs/assets/js/runtime~main.7674b06d.js defer></script><script src=/tools/staticdocs/assets/js/main.8c741ee1.js defer></script><body class=navigation-with-keyboard><svg xmlns=http://www.w3.org/2000/svg style="display: none;"><defs>
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
3
3
|
</defs></svg>
|
4
4
|
<script>!function(){var t="dark",e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",e||t),document.documentElement.setAttribute("data-theme-choice",e||t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts>Key Concepts</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/installation>Installation</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted>Getting Started</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading>Upgrading</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli>Command Line Interface</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/generators>Code Generators</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/podman>Podman</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements>Requirements and Design</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Podman</span></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Podman</h1></header><h3 class="anchor anchorWithStickyNavbar_fF9Z" id=openc3-cosmos-using-rootless-podman-and-docker-compose>OpenC3 COSMOS Using Rootless Podman and Docker-Compose<a href=#openc3-cosmos-using-rootless-podman-and-docker-compose class=hash-link aria-label="Direct link to OpenC3 COSMOS Using Rootless Podman and Docker-Compose" title="Direct link to OpenC3 COSMOS Using Rootless Podman and Docker-Compose"></a></h3>
|
@@ -18,9 +18,12 @@
|
|
18
18
|
</li>
|
19
19
|
<li>
|
20
20
|
<p>Configure Podman to use Netavark for DNS</p>
|
21
|
-
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">cp</span><span class="token plain"> /usr/share/containers/containers.conf /etc/containers/.</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">vi</span><span class="token plain"> /etc/containers/containers.conf</span><br></span></code></pre></div></div>
|
21
|
+
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">cp</span><span class="token plain"> /usr/share/containers/containers.conf /etc/containers/.</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">vi</span><span class="token plain"> /etc/containers/containers.conf</span><br></span><span class=token-line style=color:#d6deeb><span class="token plain"></span><span class="token function" style="color:rgb(130, 170, 255)">sudo</span><span class="token plain"> </span><span class="token function" style="color:rgb(130, 170, 255)">sh</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">-c</span><span class="token plain"> </span><span class="token string" style="color:rgb(173, 219, 103)">'echo ip_tables > /etc/modules-load.d/ip_tables.conf'</span><br></span></code></pre></div></div>
|
22
22
|
<p>Then edit the network_backend line to be "netavark" instead of "cni"</p>
|
23
23
|
</li>
|
24
|
+
</ol>
|
25
|
+
<div class="theme-admonition theme-admonition-warning admonition_IZjC alert alert--warning"><div class=admonitionHeading_uVvU><span class=admonitionIcon_HiR3><svg viewBox="0 0 16 16"><path fill-rule=evenodd d="M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"/></svg></span>Netavark needs the ip_tables module</div><div class=admonitionContent_bl22><p>The above "echo ip_tables" line is added because RHEL 9.x uses nftables by default. The legacy ip_tables kernel module is not guaranteed to be loaded at boot — particularly on cloud images such as AWS EC2. However, netavark still requires ip_tables to implement NAT and forwarding for rootless Podman containers. Rootless users cannot load kernel modules, so if ip_tables is missing, netavark networking fails silently. If using rootless Podman with netavark ensure the ip_tables kernel module is preload.</div></div>
|
26
|
+
<ol>
|
24
27
|
<li>
|
25
28
|
<p>Start rootless podman socket service</p>
|
26
29
|
<div class="language-bash codeBlockContainer_ZGJx theme-code-block" style=--prism-color:#d6deeb;--prism-background-color:#011627><div class=codeBlockContent_kX1v><pre tabindex=0 class="prism-code language-bash codeBlock_TAPP thin-scrollbar" style=color:#d6deeb;background-color:#011627><code class=codeBlockLines_AdAo><span class=token-line style=color:#d6deeb><span class="token plain">systemctl </span><span class="token builtin class-name" style="color:rgb(255, 203, 139)">enable</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--now</span><span class="token plain"> </span><span class="token parameter variable" style="color:rgb(214, 222, 235)">--user</span><span class="token plain"> podman.socket</span><br></span></code></pre></div></div>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/requirements" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.
|
1
|
+
<!doctype html><html lang=en dir=ltr class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-getting-started/requirements" data-has-hydrated=false><meta charset=UTF-8><meta name=generator content="Docusaurus v3.8.1"><title data-rh=true>Requirements and Design | OpenC3 Docs</title><meta data-rh=true name=viewport content="width=device-width, initial-scale=1.0"><meta data-rh=true name=twitter:card content=summary_large_image><meta data-rh=true property=og:url content=https://docs.openc3.com/tools/staticdocs/docs/getting-started/requirements><meta data-rh=true property=og:locale content=en><meta data-rh=true name=docusaurus_locale content=en><meta data-rh=true name=docsearch:language content=en><meta data-rh=true name=docusaurus_version content=current><meta data-rh=true name=docusaurus_tag content=docs-default-current><meta data-rh=true name=docsearch:version content=current><meta data-rh=true name=docsearch:docusaurus_tag content=docs-default-current><meta data-rh=true property=og:title content="Requirements and Design | OpenC3 Docs"><meta data-rh=true name=description content="COSMOS Requirements and Design"><meta data-rh=true property=og:description content="COSMOS Requirements and Design"><link data-rh=true rel=icon href=/tools/staticdocs/img/favicon.png><link data-rh=true rel=canonical href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/requirements><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/requirements hreflang=en><link data-rh=true rel=alternate href=https://docs.openc3.com/tools/staticdocs/docs/getting-started/requirements hreflang=x-default><script data-rh=true type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started","name":"Getting Started","position":1},{"@type":"ListItem","item":"https://docs.openc3.com/tools/staticdocs/docs/getting-started/requirements","name":"Requirements and Design","position":2}]}</script><link rel=stylesheet href=/tools/staticdocs/assets/css/styles.1a361da6.css><script src=/tools/staticdocs/assets/js/runtime~main.7674b06d.js defer></script><script src=/tools/staticdocs/assets/js/main.8c741ee1.js defer></script><body class=navigation-with-keyboard><svg xmlns=http://www.w3.org/2000/svg style="display: none;"><defs>
|
2
2
|
<symbol id=theme-svg-external-link viewBox="0 0 24 24"><path fill=currentColor d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
|
3
3
|
</defs></svg>
|
4
4
|
<script>!function(){var t="dark",e=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",e||t),document.documentElement.setAttribute("data-theme-choice",e||t)}(),function(){try{for(var[t,e]of new URLSearchParams(window.location.search).entries())if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id=__docusaurus><link rel=preload as=image href=/tools/staticdocs/img/logo.svg><div role=region aria-label="Skip to main content"><a class=skipToContent_G6ar href=#__docusaurus_skipToContent_fallback>Skip to main content</a></div><nav aria-label=Main class="theme-layout-navbar navbar navbar--fixed-top"><div class=navbar__inner><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded=false class="navbar__toggle clean-btn" type=button><svg width=30 height=30 viewBox="0 0 30 30" aria-hidden=true><path stroke=currentColor stroke-linecap=round stroke-miterlimit=10 stroke-width=2 d="M4 7h22M4 15h22M4 23h22"/></svg></button><a class=navbar__brand href=/tools/staticdocs/><div class=navbar__logo><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--light_DIHH"><img src=/tools/staticdocs/img/logo.svg alt="OpenC3 Logo" class="themedComponent_DHUr themedComponent--dark_Bv2M"></div><b class="navbar__title text--truncate">OpenC3 Docs</b></a><a aria-current=page class="navbar__item navbar__link navbar__link--active" href=/tools/staticdocs/docs>Documentation</a><a href=https://openc3.com/enterprise/ target=_blank rel="noopener noreferrer" class="navbar__item navbar__link">Enterprise</a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><div class=navbarSearchContainer_bmvg><div class=navbar__search><span aria-label="expand searchbar" role=button class=search-icon tabindex=0></span><input id=search_input_react type=search placeholder=Loading... aria-label=Search class="navbar__search-input search-bar" disabled></div></div></div></div><div role=presentation class=navbar-sidebar__backdrop></div></nav><div id=__docusaurus_skipToContent_fallback class="theme-layout-main main-wrapper mainWrapper_UyTV"><div class=docsWrapper_XLvK><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_z1FD" type=button></button><div class=docRoot_HciC><aside class="theme-doc-sidebar-container docSidebarContainer_e5ai"><div class=sidebarViewport_N8x0><div class=sidebar_vJCc><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_qiME"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs>Introduction</a><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist menu__link--active" href=/tools/staticdocs/docs/getting-started>Getting Started</a><button aria-label="Collapse sidebar category 'Getting Started'" aria-expanded=true type=button class="clean-btn menu__caret"></button></div><ul class=menu__list><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/key-concepts>Key Concepts</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/installation>Installation</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/gettingstarted>Getting Started</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/upgrading>Upgrading</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/cli>Command Line Interface</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/generators>Code Generators</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class=menu__link tabindex=0 href=/tools/staticdocs/docs/getting-started/podman>Podman</a><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current=page tabindex=0 href=/tools/staticdocs/docs/getting-started/requirements>Requirements and Design</a></ul><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/configuration>Configuration</a><button aria-label="Expand sidebar category 'Configuration'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/tools>Tools</a><button aria-label="Expand sidebar category 'Tools'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/guides>Guides</a><button aria-label="Expand sidebar category 'Guides'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/development>Development</a><button aria-label="Expand sidebar category 'Development'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class=menu__list-item-collapsible><a class="menu__link menu__link--sublist" href=/tools/staticdocs/docs/meta>Meta</a><button aria-label="Expand sidebar category 'Meta'" aria-expanded=false type=button class="clean-btn menu__caret"></button></div><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class=menu__link href=/tools/staticdocs/docs/privacy>OpenC3, Inc. Privacy Policy</a></ul></nav></div></div></aside><main class=docMainContainer_namt><div class="container padding-top--md padding-bottom--lg"><div class=row><div class="col docItemCol_YAwJ"><div class=docItemContainer_Rv5Z><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_zCmv" aria-label=Breadcrumbs><ul class=breadcrumbs><li class=breadcrumbs__item><a aria-label="Home page" class=breadcrumbs__link href=/tools/staticdocs/><svg viewBox="0 0 24 24" class=breadcrumbHomeIcon_JFrk><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill=currentColor /></svg></a><li class=breadcrumbs__item><a class=breadcrumbs__link href=/tools/staticdocs/docs/getting-started><span>Getting Started</span></a><li class="breadcrumbs__item breadcrumbs__item--active"><span class=breadcrumbs__link>Requirements and Design</span></ul></nav><div class="tocCollapsible_O_Qc theme-doc-toc-mobile tocMobile_tjDr"><button type=button class="clean-btn tocCollapsibleButton_htYj">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Requirements and Design</h1></header><p>OpenC3 COSMOS is a command and control system providing commanding, scripting, and data visualization capabilities for embedded systems and systems of systems. COSMOS is intended for use during all phases of testing (board, box, integrated system) and during operations.</p>
|