Light Description - commoncriteria/pp-template GitHub Wiki
.github/workflows/ input/ output/ diff-archive/ Dictionary.txt README.adoc Makefile @transforms
-
Contains scripts that github runs when projects are updated.
-
quick_build.yml is really the only one that matters
-
Each branch for each project has one (Must be updated by hand)
-
Build script for github triggered on pushes or on
-
Does all the things a user would do
-
Build HTMLs
-
Run diffs
-
Run checks
-
-
Does some extra things
-
Constructs Badges that can be used in Dashboards.
-
Constructs a mini-dashboard that can be put in a README.adoc by hand
-
Saves output folder to the gh-pages branch with the name of the branch.
-
gh-pages is a special branch in github.com projects that is published to the live directory.
-
-
-
Contains the XML that must be transformed: main documents, TDs (in “tds” directory), ESR xml files.
-
(default)docname = ${projectname}+”.xml”
-
Contains sub-dirctories with files that are not transformed (eg. “images”).
-
Populated with generated files (HTML, PDF, effective XML files for included projects).
-
Front page for a branch.
-
Front page for the default branch (“master”) is the default for the project.
-
You should copy and paste contents of each branch’s Minidash.adoc (built by QuickBuild) into README.adoc
-
Some legacy files still use README.md, but AsciiDoc is a better format
-
convert using try pandoc
-
-
Usually pretty tiny.
-
Sets any configuration values that need to deviate from defaults
-
Includes User’s local makefiles
-
Includes Makefiles from transforms.
-
Indicates whether this project is a
-
PP: $TRANS/Helper.make
-
Module: $TRANS/module/Module.make
-
Package: $TRANS/package/Package.make
-
cPP: $TRANS/cPP.make
-
-
Points to a specific version of the transforms subproject
-
Each branch must have its version of tranforms updated manually. To update:
cd transforms && git pull origin master && cd .. && git commit -m “Updated transforms” -a git push
-
When creating a new project from scratch (and not cloning pp-template), use the https link and not git form.
-
Use push-transforms if you want to push transforms using ssh.
dictionaries/ module/Module.make package/Package.make py/ schemas/ xsl/ Helper.make Makefile README.md cPP.make
-
Common allowlists
-
Logically separated, but ultimately turned into a single file for spellchecking.
-
Files:
-
package/Package.make
-
module/Module.make
-
cPP.make
-
-
Purpose (smalls)
-
Amends hooks
-
Includes Helper.make
-
-
Orchestrates the building
-
First part consists of 'hooks'
-
Second part consists of 'targets'
-
Reasonably commented
-
Ignoreable
-
Makes HTML page that displayes some of the boilerplate text that’s inserted into PPs
-------- ------------------- --------- |CCModule| |CCProtectionProfile| |CCPackage| -------- ------------------- --------- | | | | ------- | ---------------------|Commons| | ------- | | | ------------- |StrictCommons| ------------- | --------- |Selection| ---------
-
CCModule.rng - Top level RelaxNG schema for PP-Modules.
-
CCPackage.rng - Top level RelaxNG schema for PP-Packages
-
CCProtectionProfile.rng - Top level RelaxNG schema for PPs
-
Commons.rng - Schema for lower level mechanisms.
-
ConfigAnnex.rng - Schema for Configuration Annexes.
-
LaxProtectionProfile.rng - Bar
-
Makefile
-
rng-to-html
-
SecurityTarget.rng
-
Selection.rng
-
StrictCommons.rng
-
TechnicalDecisions.rng - Schema for Technical Decisions.
V V V | | | | ----------- --------- | |module2html| |module2sd| | ----------- --------- | | | | ------- -------------- |pp2html| |module-commons| ------- -------------- | | --------- | |ppcommons|--- --------- _____________________________________|_________________________________________________ | | | | | | | | ----- ----- ------------- ------------- --------- -------- ---------- ------------- |audit| |debug| |boilerplaters| |ext-comp-defs| |functions| |use-case| |js-content| |sanity_checks| ----- ----- ------------- ------------- --------- -------- ---------- -------------
-
add-element-index-as-comments.xsl - Unused. Convenience script that adds effective element numbers as comments
-
css-content.xsl - Contains the CSS content used in all the HTML pages. Included by all.
-
make-ref.xsl - Makes references to various items.
-
pp2table.xsl - Creates an HTML page consisting of a table with all the requirements. Maybe out of date.
-
audit.xsl - Creates the audit tables.
-
debug.xsl - Has debug mechanisms in it.
-
module2html.xsl - Creates the main document for PP-Modules
-
ppcommons.xsl - Contains a bunch of templates for transforms.
-
esr2html.xsl - Transforms an ESR xml to HTML.
-
boilerplates.xml - Contains XML snippets that define boilerplate language.
-
module2sd.xsl - Transforms a Module XMl definition to a supporting document.
-
sanity_checks.xsl - Tests for common mistakes.
-
boilerplates.xsl - Contains templates with boilerplate language.
-
ext-comp-defs.xsl - Templates for Extended Component Definitions.
-
module-commons.xsl - Contains templates common to main PP-Module documents and SDs.
-
SFRs.xml - Unused. Meant to contain common SFR defiitions.
-
comma-splitter.xsl - Unused. Splits based on comma
-
functions.xsl - Contains basic functions.
-
pp2html.xsl - Transforms PP XML definitions to PP HTML documents.
-
use-case.xsl - Contains templates to handle use-cases.
-
configannex2html.xsl - Transforms a configuration annex to HTML documents.
-
js-content.xsl - Contains templates with common JavaScript
-
pp2simplified.xsl - Unused. Transforms PP XML to Simple HTML document.
Python scripts that do various things
-
anchorize-periods.py - Transforms an xHTML document such that each period becomes an anchor so that reviewers can refer and link to specific sentences.
-
get_spell_allowlist.py - Reads in a PP document and outputs an allowlist that contains all the acronyms, components, elements, assumptions, threats, security objectives, and securtiy objectives of the envrionment so that they would not have to be individually added to a project’s allowlist.
-
retrieve-included-docs.py - Reads in a PP document and git clones all the natively included documents (i.e. the ones with 'git' tags), corrects to the exact version (i.e. the latest version of a specific branch), and builds an effective document.
-
bp-documentor.py - Ignoreable. Called from transforms' Makefile to build an HTML page that describes boilerplate text inserted into PP documents.
-
post-process.py - Called to fix up all the sequential numbering that is expected in a PP document. Also discovers and links keywords that are defined and referenced to the document.
-
show_xpath.py - Test utility that allows users to test their xpath definitions. Usually used when creating TDs.
-
cc_apply_tds.py - Applies TDs to an XML definition of a PP document.
cd transforms && git checkout master && git pull origin master && EDIT,EDIT,EDIT git commit -m "Suitable message" -a git push