-
Notifications
You must be signed in to change notification settings - Fork 0
/
committer.html
267 lines (205 loc) · 13.6 KB
/
committer.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
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
<!DOCTYPE html>
<!--
| Generated by Apache Maven Doxia Site Renderer 1.7.4 at 11 Mar 2017
| Rendered using Apache Maven Fluido Skin 1.6
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="Date-Revision-yyyymmdd" content="20170311" />
<meta http-equiv="Content-Language" content="en" />
<title>Fine Grained Service Monitoring System – Committers Notes</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.6.min.css" />
<link rel="stylesheet" href="./css/site.css" />
<link rel="stylesheet" href="./css/print.css" media="print" />
<script type="text/javascript" src="./js/apache-maven-fluido-1.6.min.js"></script>
</head>
<body class="topBarDisabled">
<a href="https://github.com/mil-oss/fgsms">
<img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10000;"
src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png"
alt="Fork me on GitHub">
</a>
<div class="container-fluid">
<div id="banner">
<div class="pull-left"><a href="http://mil-oss.org/" id="bannerLeft"><img src="images/mil-oss-logo.png" alt="Fine Grained Service Monitoring System"/></a></div>
<div class="pull-right"><div id="bannerRight"><img src="images/fgsms_logo_small.png" /></div>
</div>
<div class="clear"><hr/></div>
</div>
<div id="breadcrumbs">
<ul class="breadcrumb">
<li id="projectVersion">Version: 7.0.0<span class="divider">|</span></li>
<li class=""><a href="https://www.mil-oss.org" class="externalLink" title="MIL-OSS">MIL-OSS</a><span class="divider">/</span></li>
<li class="active ">Committers Notes</li>
<li id="publishDate" class="pull-right">Last Published: 11 Mar 2017</li>
</ul>
</div>
<div class="row-fluid">
<div id="leftColumn" class="span2">
<div class="well sidebar-nav">
<ul class="nav nav-list">
<li><a href="index.html" title="Project Information"><span class="none"></span>Project Information</a> </li>
<li><a href="index2.html" title="Welcome"><span class="none"></span>Welcome</a> </li>
<li><a href="whitepaper.html" title="Whitepaper"><span class="none"></span>Whitepaper</a> </li>
<li><a href="architecture.html" title="Architecture"><span class="none"></span>Architecture</a> </li>
<li><a href="quickstart.html" title="Quick Start"><span class="none"></span>Quick Start</a> </li>
<li><a href="deployment-planning.html" title="Deployment Planning"><span class="none"></span>Deployment Planning</a> </li>
<li><a href="deployserver.html" title="Deploying the Server"><span class="none"></span>Deploying the Server</a> </li>
<li><a href="agentmatrix.html" title="Agent Matrix"><span class="none"></span>Agent Matrix</a> </li>
<li><a href="deployagent.html" title="Deploying Agents"><span class="none"></span>Deploying Agents</a> </li>
<li><a href="user.html" title="User Guide"><span class="none"></span>User Guide</a> </li>
<li><a href="reporting.html" title="Reports and data access"><span class="none"></span>Reports and data access</a> </li>
<li><a href="security.html" title="Security Guide"><span class="none"></span>Security Guide</a> </li>
<li><a href="permissions.html" title="Access Control"><span class="none"></span>Access Control</a> </li>
<li><a href="federation.html" title="Data Federation"><span class="none"></span>Data Federation</a> </li>
<li><a href="news.html" title="News"><span class="none"></span>News</a> </li>
<li><a href="sdk.html" title="SDK"><span class="none"></span>SDK</a> </li>
<li><a href="specs.html" title="Specs/ICD"><span class="none"></span>Specs/ICD</a> </li>
<li class="active"><a href="#"><span class="none"></span>Committers</a>
</li>
<li><a href="faq.html" title="FAQ"><span class="none"></span>FAQ</a> </li>
<li class="nav-header">Modules</li>
<li><a href="apache-tomcat/index.html" title="Pre-Configured Apache Tomcat"><span class="none"></span>Pre-Configured Apache Tomcat</a> </li>
<li><a href="apache-juddi/index.html" title="Pre-Configured Apache Juddi"><span class="none"></span>Pre-Configured Apache Juddi</a> </li>
<li><a href="fgsms-common-interfaces/index.html" title="fgsms Interfaces WS Stubs and Schema Bindings Generated from WSDL"><span class="none"></span>fgsms Interfaces WS Stubs and Schema Bindings Generated from WSDL</a> </li>
<li><a href="fgsms-common/index.html" title="fgsms Common"><span class="none"></span>fgsms Common</a> </li>
<li><a href="fgsms-agents/index.html" title="fgsms Embedded Agents"><span class="none"></span>fgsms Embedded Agents</a> </li>
<li><a href="fgsms-ws-notification/index.html" title="fgsms WS-Notification Parent"><span class="none"></span>fgsms WS-Notification Parent</a> </li>
<li><a href="fgsms-server/index.html" title="fgsms Server"><span class="none"></span>fgsms Server</a> </li>
<li><a href="fgsms-cli/index.html" title="fgsms Command Line Interface"><span class="none"></span>fgsms Command Line Interface</a> </li>
<li><a href="fgsms-samples/index.html" title="fgsms Examples Packages"><span class="none"></span>fgsms Examples Packages</a> </li>
<li><a href="fgsms-dist/index.html" title="fgsms Distribution"><span class="none"></span>fgsms Distribution</a> </li>
<li><a href="fgsms-netagent/index.html" title="fgsms.Net Components"><span class="none"></span>fgsms.Net Components</a> </li>
<li class="nav-header">Project Documentation</li>
<li><a href="project-info.html" title="Project Information"><span class="icon-chevron-right"></span>Project Information</a> </li>
<li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-right"></span>Project Reports</a> </li>
</ul>
<form id="search-form" action="https://www.google.com/search" method="get" >
<input value="https://mil-oss.github.io/" name="sitesearch" type="hidden"/>
<input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript">asyncJs( 'https://cse.google.com/brand?form=search-form' )</script>
<hr />
<div id="poweredBy">
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
</div>
</div>
</div>
<div id="bodyColumn" class="span10" >
<h1>Committers Notes</h1>
<h1>Building FGSMS</h1>
<p>Note: this is still being refined.</p>
<div class="section">
<h2><a name="Setup_the_database_first:"></a>Setup the database first:</h2>
<p><tt>psql -u postgres -f database/dbcurrent.sql</tt></p></div>
<div class="section">
<h2><a name="Building_all_the_Java_agents_and_server"></a>Building all the Java agents and server</h2>
<div class="section">
<h3><a name="Standard_developer_build:"></a>Standard developer build:</h3>
<p><tt>mvn clean install</tt></p></div>
<div class="section">
<h3><a name="Running_the_integration_tests"></a>Running the integration tests</h3>
<p>These tests are primarily to test or to simulate various conditions related to remote agents reporting in information or to test edge cases for web service configurations.</p>
<ol style="list-style-type: decimal">
<li>First build everything <tt>mvn install</tt></li>
<li>Start the server <tt>cd fgsms.Tomcat/target/tomcat/apache-tomcat-7.0.73/bin</tt> <tt>./catalina.sh run</tt></li>
<li>Run the tests (from the source root directory) <tt>mvn install -Dintegration</tt></li>
</ol></div>
<div class="section">
<h3><a name="Building_the_Java_components_in_a_disconnected_or_isolated_network_no_internet"></a>Building the Java components in a disconnected or isolated network (no internet)</h3>
<ol style="list-style-type: decimal">
<li>On an internet connected computer, check out the fgsms code base, <tt>git clone https://github.com/mil-oss/fgsms.git</tt></li>
<li>Download a copy of <a class="externalLink" href="http://maven.apache.org/download.cgi">Maven</a> if you don’t have it already, then run, <tt>mvn dependency:go-offline
dependency:sources dependency:resolve -Dclassifier=javadoc dependency:resolve-plugins -fn</tt>. This will download all dependencies and plugins required to build the Java components. If this is not your build machine, then you can copy the contents of <tt>~/.m2/repository</tt> onto the actual build environment or on to a Nexus server or something similiar.</li>
<li>You also need to download a few other things to build. while internet connected, this is automatic but unfortunately these artifacts are not published anywhere.
<ul>
<li><a class="externalLink" href="https://dist.apache.org/repos/dist/release/juddi/juddi/3.3.3/juddi-distro-3.3.3.zip">Apache jUDDI</a></li>
<li><a class="externalLink" href="https://dist.apache.org/repos/dist/release/tomcat/tomcat-7/v7.0.75/bin/apache-tomcat-7.0.75-windows-x64.zip">Apache Tomcat for windows</a></li>
<li><a class="externalLink" href="http://download.jboss.org/jbossesb/4.12/binary/jbossesb-server-4.12.zip">Jboss ESB</a></li>
</ul></li>
<li>Once offline, you’ll have to get those 3 files in on to a web server that will serve up those files and then have some kind of DNS forward, such as editing your host file.</li>
<li>Assuming you don’t have SSL certificates that match those download urls and that your local web server is hosting those files with just plain old http, build with <tt>mvn install -DforceHttp</tt>. If you do have local certs that match the hostnames for apache and jboss, then the regular build should be just fine with <tt>mvn install</tt></li>
</ol></div></div>
<div class="section">
<h2><a name="Building_the_.NET_Components"></a>Building the .NET Components</h2>
<p>Prerequisites:</p>
<ul>
<li>Windows SDK for your operating system</li>
<li><a class="externalLink" href="https://dist.nuget.org/index.html">Nugget command line executable</a></li>
<li>.NET Framework of at least v4.0</li>
<li>Visual Studio (community edition is generally good enough)</li>
<li>Optionally FXCop</li>
<li>Optionally Nunit</li>
</ul>
<p>You can also run the .net build with maven by switching to the .net directory and executing <tt>mvn clean install</tt></p></div>
<div class="section">
<h2><a name="Useful_tools"></a>Useful tools</h2>
<ul>
<li>Postgres’s PG Admin tool</li>
<li>Xmlspy or any program capable of validating XML, such as Notepad++ with the XML plugin</li>
<li>Apache TcpMon</li>
</ul>
<h1>Releases</h1>
<p>TODO</p>
<h1>Testing</h1>
<p>TODO This section needs to be updated in a big way.</p>
<p>Building FGSMS isn’t really that bad of a problem. In fact, all you really need to build everything is a Windows box (because of the .NET Code). Don’t have a windows box? No problem, the .NET build is skipped automatically.</p>
<p>Integration testing of FGSMS is a challenge due to numerous interactions with other servers, services, clients and agents. Some of it is automated with the <a class="externalLink" href="http://maven.apache.org">Maven</a> build system be automated with <a class="externalLink" href="http://maven.apache.org/">Maven</a>, It’s truely a <a class="externalLink" href="https://en.wikipedia.org/wiki/Continuous_integration">CI</a> nightmare. It’s a perfect task for something like <a class="externalLink" href="https://jenkins-ci.org/">Jenkins</a> or <a class="externalLink" href="https://travis-ci.org/">Travis</a>.</p>
<p>You’ll need the following:</p>
<ul>
<li>Postgres 9.x and a running instance of FGSMS</li>
<li>CentOS/Redhat VM (build rpm + test)</li>
<li>VM Running Apache Qpid C++ broker</li>
<li>Windows VM (build + test)</li>
<li>IIS Web Server hosting
<ul>
<li>ASP.NET Web service</li>
<li>ASP.NET web site that calls a ASP.NET web service</li>
<li>WCF.NET web service in IIS</li>
<li>WCF.NET web service running standalone</li>
<li>Any old web site with NTLM v1 authentication</li>
<li>Any old web site with NTLM v2 authentication</li>
</ul></li>
<li>WCF.NET client running in IIS</li>
<li>WCF.NET client running standlone</li>
<li>Any old web site with DIGEST authentication</li>
<li>Any old web site with Basic authentication</li>
<li>The following can be ran anywhere, so long as the test instance of FGSMS can reach it</li>
<li>~~Apache Qpid Java broker~~ incorporated into the Maven build</li>
<li>Web server hosting an Apache Axis 1.4 service</li>
<li>Web server hosting an Apache Axis 2.x service</li>
<li>Web server hosting an Apache CXF 2.x service</li>
<li>Web server hosting an Apache CXF 3.x service</li>
<li>Web server hosting a fgsms’s WS Notifcation broker service</li>
<li>SMTP Mail server</li>
<li>~~HornetQ server~~ incorporated into the Maven build</li>
<li>Syslog server</li>
<li>
<p>Federation target tests</p></li>
<li>~~Apache jUDDI server 3.x~~ incorporated into the Maven build</li>
<li>SNMP plugin (future)</li>
<li>Plus an potential future plugins</li>
</ul>
<ol style="list-style-type: decimal">
<li>Delete your local maven repo, located at ~/.m2/repository</li>
<li>mvn clean install -Pall</li>
<li>Start the server</li>
</ol></div>
</div>
</div>
</div>
<hr/>
<footer>
<div class="container-fluid">
<div class="row-fluid">
</div>
</div>
</footer>
</body>
</html>