summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-03-02 02:49:32 -0500
committerIan Moffett <ian@osmora.org>2025-03-02 02:49:32 -0500
commitd2fe43f7a2b9f214c3ce7688f449974b40eb4641 (patch)
tree72df4aa68261e10277039b3513de6584cbc2a4bd
parent84a1a89f776b4611f6ea6659381961178f46ad14 (diff)
Add OAP generation script
Signed-off-by: Ian Moffett <ian@osmora.org>
-rw-r--r--.gitignore4
-rw-r--r--genoaps.sh44
-rw-r--r--kd/oap-0001.md75
3 files changed, 123 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..3fd8a7f
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.txt
+.refcache/
+oapgen/
+xmlgen/
diff --git a/genoaps.sh b/genoaps.sh
new file mode 100644
index 0000000..50fff04
--- /dev/null
+++ b/genoaps.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+set -e
+
+KRAMDOWN_DIR=kd
+XML_RESDIR=xmlgen
+OAP_RESDIR=oapgen
+OAPS=$(find $KRAMDOWN_DIR -name "*.md")
+
+cleanup() {
+ echo "genoaps: Cleaning up..."
+ echo "genoaps: Removing artifacts..."
+ rm -rfv $XML_RESDIR
+ rm -rfv $OAP_RESDIR
+}
+
+convert_all() {
+ for oap in $OAPS
+ do
+ output="${oap%.md}.txt"
+
+ echo "Preparing $oap..."
+ kdrfc $oap 1>/dev/null || cleanup
+
+ # Clean up output
+ tr -d '\000-\011\013\014\016-\037' <$output | \
+ sed '1,/./{/^$/d;}' | tee $output >/dev/null
+
+ mv $output $OAP_RESDIR/$(basename "${output%.txt}")
+ mv $KRAMDOWN_DIR/*.xml $XML_RESDIR
+ done
+}
+
+
+if [[ "$1" == "--clean" ]]
+then
+ cleanup
+ exit 0
+fi
+
+mkdir -p $XML_RESDIR
+mkdir -p $OAP_RESDIR
+convert_all
+echo "** Done! OAPs generated in the $OAP_RESDIR directory **"
diff --git a/kd/oap-0001.md b/kd/oap-0001.md
new file mode 100644
index 0000000..ac5ce08
--- /dev/null
+++ b/kd/oap-0001.md
@@ -0,0 +1,75 @@
+---
+stand_alone: true
+ipr: none
+cat: info
+area: Systems Engineering
+wg: OSMORA Standards Group
+
+docname: OAP-0001
+
+title: OSMORA Amelioration Proposals
+abbrev: OAPs
+lang: en
+kw:
+ - oap
+ - amelioration
+author:
+- role: editor
+ name: Ian M. Moffett
+ org: OSMORA
+ city: Washington, DC
+ region: Southeast
+ code: 20020
+ email: ian@osmora.org
+
+--- abstract
+
+Description of OSMORA Amelioration Proposals
+
+--- middle
+
+# Introduction
+
+OSMORA Amelioration Proposals (OAPs) are structured
+documents that serve to drive changes imposed by OSMORA
+by describing their fundamentals while allowing others to
+amend/revise them.
+
+## Purpose
+
+The goal of having OAPs is to provide an organized means of proposing
+and improving ideas that contribute to the betterment of society
+and technology. These proposals can range from technical improvements
+to societal reforms, and they are open to discussion and collaboration
+for those who have understood and commited to the OSMORA oath.
+
+## Audience
+
+OAPs are intended for those who are commited to the OSMORA oath. These
+proposals must only be considered offical and bidning when they are approved
+by a number of OSMORA members and a single OSR (OSMORA Standards Reviewer).
+
+
+# Requirements Language
+
+{::boilerplate bcp14-tagged}
+
+# Structure
+
+An OAP will typically include the following:
+
+
+- OAP ID: Incremental document identifier.
+- Abstract: A concise summary of the proposal's intent and impact.
+- Motivation: Why this proposal matters and the problem it addresses.
+
+
+{:vspace}
+OSMORA:
+: See OSMORA.ORG
+
+OSMORA Oath:
+: A pledge taken by all members of OSMORA ensuring their commitment
+ to societal betterment, technological advancement as well as their
+ loyalty to the grater good, resisting the forbidden fruit dangled
+ by the suits.