<div dir="ltr">Hi All,<div><br></div><div>If you're interested in contributing to the Kata Project but don't know where to start, here are some pointers...</div><div><br></div><div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">= TL;DR =</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">The general advice is:</span><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">- Start small.</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">- If in doubt, raise an issue.</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">- Talk to us! ;)</div></div><div><br></div><div>= Read =<br></div><div><br></div><div>- <a href="https://github.com/kata-containers/documentation/blob/master/install/README.md">https://github.com/kata-containers/documentation/blob/master/install/README.md</a><br></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">-<span> </span></span><a href="https://github.com/kata-containers/community/blob/master/CONTRIBUTING.md">https://github.com/kata-containers/community/blob/master/CONTRIBUTING.md</a><br></div><div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">-<span> </span></span><a href="https://github.com/kata-containers/documentation/blob/master/architecture.md">https://github.com/kata-containers/documentation/blob/master/architecture.md</a><br></div><div style="text-align:start;text-indent:0px;text-decoration-style:initial;text-decoration-color:initial"><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">-<span> </span></span><a href="https://github.com/kata-containers/documentation/blob/master/Developer-Guide.md">https://github.com/kata-containers/documentation/blob/master/Developer-Guide.md</a><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">If something is unclear/missing/wrong, raise an issue so we (or you, if you want) can fix it.</div></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">= Review =</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">Take a look at some of the PRs that are in the queue:</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">- <a href="https://github.com/pulls?utf8=%E2%9C%93&q=is%3Aopen+is%3Apr+org%3Akata-containers">https://github.com/pulls?utf8=%E2%9C%93&q=is%3Aopen+is%3Apr+org%3Akata-containers</a><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">Add comments if you don't understand something. We want the code to be as easy to understand as possible, so asking questions (even "silly questions" aka "questions nobody else though of" or "questions nobody else was brave enough to ask"!) helps to ensure that.</div><br></div><div>= Tackle =</div><div><br></div><div>Take a look at the "bitesize" and "good first issue" issues:</div><div><br></div><div>- <a href="https://github.com/issues?utf8=%E2%9C%93&q=is%3Aopen+org%3Akata-containers+label%3A%22good+first+issue%22+">https://github.com/issues?utf8=%E2%9C%93&q=is%3Aopen+org%3Akata-containers+label%3A%22good+first+issue%22+</a></div><div>- <a href="https://github.com/issues?q=is%3Aopen+org%3Akata-containers+label%3Abitesize">https://github.com/issues?q=is%3Aopen+org%3Akata-containers+label%3Abitesize</a></div><div><br></div><div>Add a comment stating that you'd like to have a go. If you don't know how to start, ask for help! Note that multiple people can be assigned to an issue if necessary.</div><div><br></div><div>= Lurk =<br></div><div><br></div><div>Attend Architecture Committee and Working Committee meetings:</div><div><br></div><div>- <a href="https://katacontainers.io/">https://katacontainers.io/</a><br></div><div><br></div><div>You don't need to be an architect / programmer / existing contributor to join! ;)</div><div><br></div><div>Hang out on slack+irc - see below.</div><div><br></div><div>= Talk =<br></div><div><br></div><div>We don't bite - come along and chat on slack/irc and let us know the sorts of things you'd like to get involved in:</div><div><br></div><div>- <a href="https://github.com/kata-containers/community/blob/master/CONTRIBUTING.md#contact">https://github.com/kata-containers/community/blob/master/CONTRIBUTING.md#contact</a><br></div><div><br></div><div>= Promote =</div><div><br></div><div>We'd love to have a regular blog post summarising the "week in Kata". If you'd like to get involved, see:</div><div><br></div><div>- <a href="http://lists.katacontainers.io/pipermail/kata-dev/2018-April/000113.html">http://lists.katacontainers.io/pipermail/kata-dev/2018-April/000113.html</a>.</div><div><br></div><div>= Play =</div><div><br></div><div>Install Kata and see how it works:</div><div><br></div><div>- <a href="https://github.com/kata-containers/documentation/blob/master/install/README.md">https://github.com/kata-containers/documentation/blob/master/install/README.md</a><br></div><div><br></div><div>= Test =</div><div><br></div><div>We're always looking to increase our test coverage. Each repo has it's own set of unit tests but we keep all other types of tests in it's own repo and all those tests also get run against all PRs for system components:</div><div><br></div><div>- <a href="https://github.com/kata-containers/tests">https://github.com/kata-containers/tests</a></div><div><br></div><div>Take a look at the unit-test coverage for, say, the runtime repo and see if you can find a way to increase it:</div><div><br></div><div>- <a href="https://github.com/kata-containers/runtime">https://github.com/kata-containers/runtime</a></div><div><br></div><div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">= Customise =</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">Try building a custom image with osbuilder:</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration-style:initial;text-decoration-color:initial">- <a href="https://github.com/kata-containers/osbuilder">https://github.com/kata-containers/osbuilder</a><br></div><br></div><div>= Optimise =</div><div><br></div><div>Enable full debug (<a href="https://github.com/kata-containers/documentation/blob/master/Developer-Guide.md#enable-full-debug">https://github.com/kata-containers/documentation/blob/master/Developer-Guide.md#enable-full-debug</a>), create a Kata Container and then start analysing the logs.</div><div><br></div><div>We've got a basic tool called kata-log-parser that can convert the kata log entries to other formats (text, XML, JSON, TOML, YAML, CSV). Along with high-resolution timestamps, the tool also collates all the log entries and calculates time deltas. That isn't quite as good as system level tracing but can give you an indication of which parts of the system might need further investigation:</div><div><br></div><div>- <a href="https://github.com/kata-containers/tests/tree/master/cmd/log-parser">https://github.com/kata-containers/tests/tree/master/cmd/log-parser</a><br></div><div><br></div><div>= Overcome =<br></div><div><br></div><div>Take a look at the limitations doc and see if you can help to chip away at the outstanding issues:</div><div><br></div><div>- <a href="https://github.com/kata-containers/documentation/blob/master/Limitations.md">https://github.com/kata-containers/documentation/blob/master/Limitations.md</a><br></div><div><br></div><div>Cheers,<br></div><div><br></div><div>James<div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><font color="#888888"><span style="font-family:monospace,monospace"><span style="font-family:monospace,monospace">---</span></span></font></div><div dir="ltr"><a href="https://katacontainers.io/" style="color:rgb(17,85,204);font-family:monospace,monospace" target="_blank">https://katacontainers.io/</a><span style="color:rgb(136,136,136);font-family:monospace,monospace"> | <a href="https://github.com/clearcontainers" target="_blank">https://github.com/clearcontainers</a></span><font color="#888888"><span style="font-family:monospace,monospace"><span style="font-family:monospace,monospace"><br></span></span></font></div><div dir="ltr"><font color="#888888"><font face="monospace, monospace">Open Source Technology Center</font><br><font face="monospace, monospace">Intel Corporation (UK) Ltd. - Co. Reg. #1134945 - Pipers Way, Swindon SN3 1RJ.</font></font><br></div></div></div></div></div></div></div></div></div>
</div></div>