diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/man/man1/hydrilla-builder.1 | 94 | ||||
-rw-r--r-- | doc/uml/classes.uxf | 759 |
2 files changed, 853 insertions, 0 deletions
diff --git a/doc/man/man1/hydrilla-builder.1 b/doc/man/man1/hydrilla-builder.1 new file mode 100644 index 0000000..f58ab97 --- /dev/null +++ b/doc/man/man1/hydrilla-builder.1 @@ -0,0 +1,94 @@ +.\" SPDX-License-Identifier: CC0-1.0 +.\" +.\" Man page for Hydrilla builder. +.\" +.\" Copyright (C) 2022 Wojtek Kosior <koszko@koszko.org> +.\" +.\" Available under the terms of Creative Commons Zero v1.0 Universal. + +.TH HYDRILLA-BUILDER 1 2022-04-22 "Hydrilla 1.0" "Hydrilla Manual" + +.SH NAME +hydrilla-builder \- Generate packages to be served by Hydrilla + +.SH SYNOPSIS +.B "hydrilla\-builder \-\-help" +.br +.B "hydrilla\-builder [\-s \fISOURCE\/\fP] [\-i\ \fIINDEX_PATH\/\fP]" +.B "\-d \fIDESTINATION\/\fP" +.br +(See the OPTIONS section for alternate option syntax with long option +names.) + +.SH DESCRIPTION +.I hydrilla-builder +is a tool which takes a Hydrilla source package and generates files of a +built package, suitable for serving by the Hydrilla server. + +As of Hydrilla version 1.0 +.I hydrilla-builder +does not yet perform nor trigger actions like compilation, minification or +bundling of source code files. Its main function is to automate the process +of computing SHA256 cryptographic sums of package files and including them +in JSON definitions. + +In addition, +.B hydrilla\-builder +can generate an SPDX report from source package if the +\*(lqreuse_generate_spdx_report\*(rq property is set to true in index.json. + +.SH OPTIONS +.TP +.B \-\^\-help +Output a usage message and exit. + +.TP +.BI \-s " SOURCE" "\fR,\fP \-\^\-srcdir=" SOURCE +Use +.I SOURCE +as source package directory to build from. +If not specified, current directory is used. + +.TP +.BI \-i " INDEX_PATH" "\fR,\fP \-\^\-index\-json=" INDEX_PATH +Process the JSON file under +.I INDEX_PATH +instead of index.json inside source directory. +.I INDEX_PATH +may be either absolute or relative. +In the latter case it is resolved with respect to the source directory. + +File provided as +.I INDEX_PATH +will also be included in the generated source archive as +\*(lqindex.json\*(rq, substituting any file with such name that could be +present in the source directory. + +.TP +.BI \-d " DESTINATION" "\fR,\fP \-\^\-dstdir=" DESTINATION +Write generated files under +.IR DESTINATION . +Files are written in such way that +.I DESTINATION +is valid for being passed to Hydrilla to serve packages from. + +.TP +.B \-\^\-version +Show version information for this instance of +.I hydrilla-builder +on the standard output and exit successfully. + +.SH "EXIT STATUS" +The exit status is 0 if build was performed successfully or if the +.B \-\^\-help +option was passed. It is a number different from 0 in all other cases. + +.SH "SEE ALSO" +.SS "Manual Pages" +.BR hydrilla (1). + +.SS "Full Documentation" +.UR https://hydrillabugs.koszko.org/projects/hydrilla/wiki +Online documentation +.UE +is available on Hydrilla issue tracker. diff --git a/doc/uml/classes.uxf b/doc/uml/classes.uxf new file mode 100644 index 0000000..1dcbb56 --- /dev/null +++ b/doc/uml/classes.uxf @@ -0,0 +1,759 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<diagram program="umlet" version="13.3"> + <zoom_level>8</zoom_level> + <element> + <id>UMLClass</id> + <coordinates> + <x>248</x> + <y>80</y> + <w>128</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.addon. +HaketiloAddon +</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>384</x> + <y>320</y> + <w>184</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.pattern_tree. +PatternTree[Policy] +</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>288</x> + <y>200</y> + <w>176</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.state. +HaketiloState</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>336</x> + <y>104</y> + <w>24</w> + <h>112</h> + </coordinates> + <panel_attributes>lt=<<<<- +m1=1 +m2=1</panel_attributes> + <additional_attributes>10.0;10.0;10.0;120.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>424</x> + <y>224</y> + <w>24</w> + <h>112</h> + </coordinates> + <panel_attributes>lt=<<<<- +m1=1 +m2=1 +</panel_attributes> + <additional_attributes>10.0;10.0;10.0;120.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>560</x> + <y>384</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>/hydrilla.proxy.policies./ +/Policy/ +</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>536</x> + <y>320</y> + <w>112</w> + <h>80</h> + </coordinates> + <panel_attributes>lt=[URL pattern]-> +m2=1..* + +</panel_attributes> + <additional_attributes>40.0;20.0;100.0;20.0;100.0;80.0</additional_attributes> + </element> + <element> + <id>UMLNote</id> + <coordinates> + <x>400</x> + <y>32</y> + <w>152</w> + <h>32</h> + </coordinates> + <panel_attributes>Receives&processes events from mitmproxy.</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>368</x> + <y>56</y> + <w>48</w> + <h>40</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>10.0;30.0;40.0;10.0</additional_attributes> + </element> + <element> + <id>UMLNote</id> + <coordinates> + <x>624</x> + <y>88</y> + <w>136</w> + <h>48</h> + </coordinates> + <panel_attributes>Keeps track of all rules, mappings and resources.</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>456</x> + <y>120</y> + <w>184</w> + <h>96</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>10.0;100.0;210.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>416</x> + <y>768</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +PayloadPolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>416</x> + <y>528</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>/hydrilla.proxy.policies./ +/BlockPolicy/</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>416</x> + <y>672</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>/hydrilla.proxy.policies./ +/AllowPolicy/</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>416</x> + <y>720</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +MetaResourcePolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>544</x> + <y>408</y> + <w>120</w> + <h>392</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>130.0;10.0;130.0;470.0;10.0;470.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>544</x> + <y>408</y> + <w>104</w> + <h>344</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>110.0;10.0;110.0;410.0;10.0;410.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>544</x> + <y>408</y> + <w>88</w> + <h>296</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>90.0;10.0;90.0;350.0;10.0;350.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>544</x> + <y>408</y> + <w>72</w> + <h>152</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>70.0;10.0;70.0;170.0;10.0;170.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>328</x> + <y>728</y> + <w>104</w> + <h>24</h> + </coordinates> + <panel_attributes>lt=<<<<-</panel_attributes> + <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>168</x> + <y>720</y> + <w>168</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.flow_handlers. +FlowHandlerMetaResource</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>488</x> + <y>352</y> + <w>256</w> + <h>504</h> + </coordinates> + <panel_attributes>lt=<<<<- +m1=1 +m2=1</panel_attributes> + <additional_attributes>10.0;560.0;10.0;610.0;300.0;610.0;300.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>648</x> + <y>328</y> + <w>192</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.item_infos. +MappingInfo</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>576</x> + <y>176</y> + <w>232</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.item_infos. +VersionedItemInfo[MappingInfo]</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>432</x> + <y>208</y> + <w>160</w> + <h>56</h> + </coordinates> + <panel_attributes>lt=[repository]-> +m2=1..* + +</panel_attributes> + <additional_attributes>40.0;10.0;100.0;10.0;100.0;40.0;180.0;40.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>576</x> + <y>224</y> + <w>232</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.item_infos. +VersionedItemInfo[ResourceInfo]</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>504</x> + <y>184</y> + <w>88</w> + <h>48</h> + </coordinates> + <panel_attributes>lt=-> +m2=1..* + +</panel_attributes> + <additional_attributes>10.0;40.0;10.0;10.0;90.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>648</x> + <y>280</y> + <w>192</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.item_infos. +ResourceInfo</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>784</x> + <y>184</y> + <w>160</w> + <h>184</h> + </coordinates> + <panel_attributes>lt=[version]-> +m2=1..*</panel_attributes> + <additional_attributes>30.0;10.0;180.0;10.0;180.0;200.0;70.0;200.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>784</x> + <y>232</y> + <w>128</w> + <h>88</h> + </coordinates> + <panel_attributes>lt=[version]-> +m2=1..* + +</panel_attributes> + <additional_attributes>30.0;10.0;140.0;10.0;140.0;80.0;70.0;80.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>336</x> + <y>536</y> + <w>96</w> + <h>24</h> + </coordinates> + <panel_attributes>lt=<<<<-</panel_attributes> + <additional_attributes>10.0;10.0;100.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>176</x> + <y>528</y> + <w>168</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.flow_handlers. +FlowHandlerBlockScripts</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>328</x> + <y>680</y> + <w>104</w> + <h>24</h> + </coordinates> + <panel_attributes>lt=<<<<-</panel_attributes> + <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>168</x> + <y>672</y> + <w>168</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.flow_handlers. +FlowHandlerAllowScripts</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>328</x> + <y>776</y> + <w>104</w> + <h>24</h> + </coordinates> + <panel_attributes>lt=<<<<-</panel_attributes> + <additional_attributes>10.0;10.0;110.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>168</x> + <y>768</y> + <w>168</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.flow_handlers. +FlowHandlerInjectPayload</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>8</x> + <y>304</y> + <w>168</w> + <h>32</h> + </coordinates> + <panel_attributes>/hydrilla.proxy.flow_handlers./ +/FlowHandler/</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>104</x> + <y>328</y> + <w>88</w> + <h>232</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>10.0;10.0;10.0;270.0;90.0;270.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>88</x> + <y>328</y> + <w>96</w> + <h>376</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>10.0;10.0;10.0;450.0;100.0;450.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>72</x> + <y>328</y> + <w>112</w> + <h>424</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>10.0;10.0;10.0;510.0;120.0;510.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>56</x> + <y>328</y> + <w>128</w> + <h>472</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>10.0;10.0;10.0;570.0;140.0;570.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>48</x> + <y>80</y> + <w>216</w> + <h>240</h> + </coordinates> + <panel_attributes>lt=<. +<<instantiates>> + + + + + + + + + + + + + + + +</panel_attributes> + <additional_attributes>10.0;280.0;10.0;10.0;250.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>296</x> + <y>432</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +FallbackBlockPolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>480</x> + <y>456</y> + <w>24</w> + <h>88</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>10.0;90.0;10.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>152</x> + <y>432</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +ErrorBlockPolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>360</x> + <y>456</y> + <w>144</w> + <h>56</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>160.0;50.0;10.0;50.0;10.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>440</x> + <y>432</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +RuleBlockPolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>216</x> + <y>456</y> + <w>168</w> + <h>56</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>190.0;50.0;10.0;50.0;10.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>296</x> + <y>576</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +FallbackAllowPolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>360</x> + <y>600</y> + <w>144</w> + <h>56</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>160.0;50.0;10.0;50.0;10.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>440</x> + <y>576</y> + <w>136</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.policies. +RuleAllowPolicy</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>480</x> + <y>600</y> + <w>24</w> + <h>88</h> + </coordinates> + <panel_attributes>lt=<<.</panel_attributes> + <additional_attributes>10.0;90.0;10.0;10.0</additional_attributes> + </element> + <element> + <id>UMLNote</id> + <coordinates> + <x>616</x> + <y>40</y> + <w>144</w> + <h>32</h> + </coordinates> + <panel_attributes>Facilitates storing and modifying data on-disk.</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>584</x> + <y>48</y> + <w>48</w> + <h>48</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>10.0;40.0;40.0;10.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>432</x> + <y>80</y> + <w>160</w> + <h>32</h> + </coordinates> + <panel_attributes>hydrilla.proxy.store. +HaketiloStore</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>440</x> + <y>104</y> + <w>24</w> + <h>112</h> + </coordinates> + <panel_attributes>lt=<<-</panel_attributes> + <additional_attributes>10.0;10.0;10.0;120.0</additional_attributes> + </element> + <element> + <id>UMLClass</id> + <coordinates> + <x>248</x> + <y>272</y> + <w>88</w> + <h>24</h> + </coordinates> + <panel_attributes>lt=. +StateUpdater</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>136</x> + <y>264</y> + <w>128</w> + <h>56</h> + </coordinates> + <panel_attributes>lt=<. +<<produces>></panel_attributes> + <additional_attributes>140.0;20.0;10.0;20.0;10.0;50.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>312</x> + <y>224</y> + <w>64</w> + <h>64</h> + </coordinates> + <panel_attributes>lt=<. +<<uses>></panel_attributes> + <additional_attributes>10.0;10.0;10.0;60.0</additional_attributes> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>256</x> + <y>104</y> + <w>64</w> + <h>184</h> + </coordinates> + <panel_attributes>lt=<. +<<uses>> + + + + + +</panel_attributes> + <additional_attributes>10.0;210.0;10.0;10.0</additional_attributes> + </element> + <element> + <id>UMLNote</id> + <coordinates> + <x>136</x> + <y>176</y> + <w>96</w> + <h>24</h> + </coordinates> + <panel_attributes>Function type</panel_attributes> + <additional_attributes/> + </element> + <element> + <id>Relation</id> + <coordinates> + <x>184</x> + <y>192</y> + <w>80</w> + <h>96</h> + </coordinates> + <panel_attributes>lt=.</panel_attributes> + <additional_attributes>80.0;100.0;10.0;10.0</additional_attributes> + </element> +</diagram> |