This repository has been archived by the owner on Jul 23, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuildtool.html
226 lines (115 loc) · 7.01 KB
/
buildtool.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>1. Build Management — SWE-Skat documentation</title>
<script type="text/javascript" src="_static/js/modernizr.min.js"></script>
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/language_data.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="2. Clean Code" href="cleancode.html" />
<link rel="prev" title="Welcome to SWE-Skat’s documentation!" href="index.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="index.html" class="icon icon-home"> SWE-Skat
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">1. Build Management</a></li>
<li class="toctree-l1"><a class="reference internal" href="cleancode.html">2. Clean Code</a></li>
<li class="toctree-l1"><a class="reference internal" href="continous.html">3. Continous Delivery</a></li>
<li class="toctree-l1"><a class="reference internal" href="dsl.html">4. Domain Specific Language</a></li>
<li class="toctree-l1"><a class="reference internal" href="functional.html">5. Functional Programming</a></li>
<li class="toctree-l1"><a class="reference internal" href="functions.html">6. Code API List</a></li>
<li class="toctree-l1"><a class="reference internal" href="ide.html">7. IDE</a></li>
<li class="toctree-l1"><a class="reference internal" href="metrics.html">8. Metrics</a></li>
<li class="toctree-l1"><a class="reference internal" href="uml.html">9. UML Diagrams</a></li>
<li class="toctree-l1"><a class="reference internal" href="unittest.html">10. Unittests</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">SWE-Skat</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> »</li>
<li>1. Build Management</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/buildtool.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="build-management">
<h1>1. Build Management<a class="headerlink" href="#build-management" title="Permalink to this headline">¶</a></h1>
<p>The main build management tool used was <a class="reference external" href="https://bazel.build/">Bazel</a>.
With this tool it is possible to build a Skat.exe and execute the tests.
In order to use Bazel, a BUILD.bazel file must be written, which contains all the necessary information about the individual files and the relationships between them.
This file can be found in the root folder of this project.
To build the .exe the command <em>bazel build Skat</em> can be executed in the root folder.
This will create a Skat.exe in the bazel-bin folder.
To run the tests, the command <em>bazel run test</em> can be used.
For more information on installing <a class="reference external" href="https://bazel.build/">Bazel</a>, please visit their website.</p>
<p>For further automation the tool <a class="reference external" href="https://pydoit.org/contents.html#">doit</a> can also be used.
With this tool all unit tests can be executed with the command <em>doit run_test</em>.
In addition, a coverage.xml is created which contains all information about the coverage of the code.
Furthermore, with the command <em>doit lint_modules</em> all files in the folder modules can be viewed with pylint.
With the command <em>doit bazel_build</em> the Skat.exe can be built with bazel.
To use <a class="reference external" href="https://pydoit.org/contents.html#">doit</a> you just have to install all the required libraries with <em>pip install -r requirements.txt</em>.</p>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="cleancode.html" class="btn btn-neutral float-right" title="2. Clean Code" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="index.html" class="btn btn-neutral float-left" title="Welcome to SWE-Skat’s documentation!" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
© Copyright 2020, Pascal Stehling
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>