Continue writing thesis

This commit is contained in:
Kristóf Tóth
2018-12-02 00:43:34 +01:00
parent c126fe8fff
commit 29e5aff0db
3 changed files with 87 additions and 7 deletions

View File

@ -1,7 +1,7 @@
\chapter{Using the Framework}
In this section I am going to dive into further detail on how client code is supposed
to use the framework, some of the design decisions behind this and how all all of this
to use the framework, some of the design decisions behind this and how everything is
is integrated into the \texttt{solvable} Docker image.
To use the framework one has to do several things to get started.
@ -15,14 +15,31 @@ The main poins include:
\item set up reverse proxying for any user-facing network applications such as webservers,
SSH and friends
\end{itemize}
At first all these tasks are quite overwhelming.
At first all these tasks can seem quite overwhelming.
Remember that witchcraft is what we practice here after all.
To overcome the high initial learning curve of getting familiar with the framework
I have created a repository called \emph{test-tutorial-framework} with the purpose of
providing a project template for developers looking to create challenges using the
framework.
This repository is a really simple client codebase that is suitable for
developing TFW itself as well (a good place to tests for the framework).
Let us take a look at this to acquire a greater understanding of how the framework operates.
developing TFW itself as well (a good place for the tests of the framework).
I also provides an ``industry standard'' \texttt{hack} directory
containing bash scripts that make the development of challenges and TFW itself very convenient.
These scripts span from bootstrapping a complete development environment in one command,
to building and running challenges based on the framework.
Let us take a quick look at the \emph{test-tutorial-framework} project to acquire a greater
understanding of how the framework operates.
\section{Project Structure}
\section{Project Structure}
\section{Implementing a Finite State Machine}
\section{Defining Processes to Run}
\section{Exposing Front-facing Networking Applications}
\section{How This Works}
\section{Developer Tooling}
\section{Framework Release Management}