@@ -42,6 +42,7 @@ def __init__(
4242 cis ,
4343 cmmc ,
4444 indigo ,
45+ bio ,
4546 custom_refs ,
4647 odv ,
4748 tags ,
@@ -66,6 +67,7 @@ def __init__(
6667 self .rule_cis = cis
6768 self .rule_cmmc = cmmc
6869 self .rule_indigo = indigo
70+ self .rule_bio = bio
6971 self .rule_custom_refs = custom_refs
7072 self .rule_odv = odv
7173 self .rule_result_value = result_value
@@ -90,6 +92,7 @@ def create_asciidoc(self, adoc_rule_template):
9092 rule_cis = self .rule_cis ,
9193 rule_cmmc = self .rule_cmmc ,
9294 rule_indigo = self .rule_indigo ,
95+ rule_bio = self .rule_bio ,
9396 rule_srg = self .rule_srg ,
9497 rule_result = self .rule_result_value ,
9598 )
@@ -1771,9 +1774,10 @@ def generate_xls(baseline_name, build_path, baseline_yaml):
17711774 sheet1 .write (0 , 14 , "CIS v8" , headers )
17721775 sheet1 .write (0 , 15 , "CMMC" , headers )
17731776 sheet1 .write (0 , 16 , "indigo" , headers )
1774- sheet1 .write (0 , 17 , "CCI" , headers )
1775- sheet1 .write (0 , 18 , "Severity" , headers )
1776- sheet1 .write (0 , 19 , "Modified Rule" , headers )
1777+ sheet1 .write (0 , 17 , "BIO" , headers )
1778+ sheet1 .write (0 , 18 , "CCI" , headers )
1779+ sheet1 .write (0 , 19 , "Severity" , headers )
1780+ sheet1 .write (0 , 20 , "Modified Rule" , headers )
17771781 sheet1 .set_panes_frozen (True )
17781782 sheet1 .set_horz_split_pos (1 )
17791783 sheet1 .set_vert_split_pos (2 )
@@ -1883,11 +1887,17 @@ def generate_xls(baseline_name, build_path, baseline_yaml):
18831887 sheet1 .write (counter , 16 , indigo_refs , topWrap )
18841888 sheet1 .col (16 ).width = 500 * 15
18851889
1890+ bio_refs = (str (rule .rule_bio )).strip ("[]'" )
1891+ bio_refs = bio_refs .replace (", " , "\n " ).replace ("'" , "" )
1892+
1893+ sheet1 .write (counter , 17 , bio_refs , topWrap )
1894+ sheet1 .col (17 ).width = 500 * 15
1895+
18861896 cci = (str (rule .rule_cci )).strip ("[]'" )
18871897 cci = cci .replace (", " , "\n " ).replace ("'" , "" )
18881898
1889- sheet1 .write (counter , 17 , cci , topWrap )
1890- sheet1 .col (17 ).width = 400 * 15
1899+ sheet1 .write (counter , 18 , cci , topWrap )
1900+ sheet1 .col (18 ).width = 400 * 15
18911901
18921902 # determine severity
18931903 # uses 'parent_values' from baseline.yaml file to determine which/if any severity to use
@@ -1901,14 +1911,14 @@ def generate_xls(baseline_name, build_path, baseline_yaml):
19011911 elif isinstance (rule .rule_severity , str ):
19021912 severity = f"{ rule .rule_severity } "
19031913
1904- sheet1 .write (counter , 18 , severity , topWrap )
1905- sheet1 .col (18 ).width = 400 * 15
1914+ sheet1 .write (counter , 19 , severity , topWrap )
1915+ sheet1 .col (19 ).width = 400 * 15
19061916
19071917 customized = (str (rule .rule_customized )).strip ("[]'" )
19081918 customized = customized .replace (", " , "\n " ).replace ("'" , "" )
19091919
1910- sheet1 .write (counter , 19 , customized , topWrap )
1911- sheet1 .col (19 ).width = 400 * 15
1920+ sheet1 .write (counter , 20 , customized , topWrap )
1921+ sheet1 .col (20 ).width = 400 * 15
19121922
19131923 if rule .rule_custom_refs != ["None" ]:
19141924 for title , ref in rule .rule_custom_refs .items ():
@@ -1958,6 +1968,7 @@ def create_rules(baseline_yaml):
19581968 "cis" ,
19591969 "cmmc" ,
19601970 "indigo" ,
1971+ "bio" ,
19611972 "srg" ,
19621973 "sfr" ,
19631974 "custom" ,
@@ -2011,6 +2022,7 @@ def create_rules(baseline_yaml):
20112022 rule_yaml ["references" ]["cis" ],
20122023 rule_yaml ["references" ]["cmmc" ],
20132024 rule_yaml ["references" ]["indigo" ],
2025+ rule_yaml ["references" ]["bio" ],
20142026 rule_yaml ["references" ]["custom" ],
20152027 rule_yaml ["odv" ],
20162028 rule_yaml ["tags" ],
@@ -2360,13 +2372,19 @@ def main():
23602372 else :
23612373 adoc_171_show = ":show_171!:"
23622374
2375+ if "NLMAPGOV" in baseline_yaml ["title" ].upper ():
2376+ adoc_BIO_show = ":show_BIO:"
2377+ else :
2378+ adoc_BIO_show = ":show_BIO!:"
2379+
23632380 if args .gary :
23642381 adoc_tag_show = ":show_tags:"
23652382 adoc_STIG_show = ":show_STIG:"
23662383 adoc_cis_show = ":show_cis:"
23672384 adoc_cmmc_show = ":show_CMMC:"
23682385 adoc_indigo_show = ":show_indigo:"
23692386 adoc_171_show = ":show_171:"
2387+ adoc_BIO_show = ":show_BIO:"
23702388 else :
23712389 adoc_tag_show = ":show_tags!:"
23722390
@@ -2395,6 +2413,7 @@ def main():
23952413 cis_attribute = adoc_cis_show ,
23962414 cmmc_attribute = adoc_cmmc_show ,
23972415 indigo_attribute = adoc_indigo_show ,
2416+ bio_attribute = adoc_BIO_show ,
23982417 version = version_yaml ["version" ],
23992418 os_version = version_yaml ["os" ],
24002419 release_date = version_yaml ["date" ],
@@ -2531,6 +2550,13 @@ def main():
25312550 else :
25322551 indigo = ulify (rule_yaml ["references" ]["indigo" ])
25332552
2553+ try :
2554+ rule_yaml ["references" ]["bio" ]
2555+ except KeyError :
2556+ bio = ""
2557+ else :
2558+ bio = ulify (rule_yaml ["references" ]["bio" ])
2559+
25342560 try :
25352561 rule_yaml ["references" ]["srg" ]
25362562 except KeyError :
@@ -2644,6 +2670,7 @@ def main():
26442670 rule_cis = cis ,
26452671 rule_cmmc = cmmc ,
26462672 rule_indigo = indigo ,
2673+ rule_bio = bio ,
26472674 rule_cce = cce ,
26482675 rule_custom_refs = custom_refs ,
26492676 rule_tags = tags ,
@@ -2665,6 +2692,7 @@ def main():
26652692 rule_cis = cis ,
26662693 rule_cmmc = cmmc ,
26672694 rule_indigo = indigo ,
2695+ rule_bio = bio ,
26682696 rule_cce = cce ,
26692697 rule_tags = tags ,
26702698 rule_srg = srg ,
@@ -2688,6 +2716,7 @@ def main():
26882716 rule_cis = cis ,
26892717 rule_cmmc = cmmc ,
26902718 rule_indigo = indigo ,
2719+ rule_bio = bio ,
26912720 rule_cce = cce ,
26922721 rule_tags = tags ,
26932722 rule_srg = srg ,
@@ -2709,6 +2738,7 @@ def main():
27092738 rule_cis = cis ,
27102739 rule_cmmc = cmmc ,
27112740 rule_indigo = indigo ,
2741+ rule_bio = bio ,
27122742 rule_cce = cce ,
27132743 rule_tags = tags ,
27142744 rule_srg = srg ,
0 commit comments