-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBUILD.ME
210 lines (189 loc) · 7.18 KB
/
BUILD.ME
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
***BUILD.ME***
How to build Kronometrix Data Recording Module on FreeBSD, Linux (Debian, Ubuntu, CentOS, RHEL) or MacOS.
Step 1. Builder utilities
KDR, Kronometrix Data Recording, requires ***builder*** and its utility friends to build all data recorders, the transporter and the documentation. The module, does not integrate within the operating system utilities, standard installation paths (/usr/local) and does not require 3rd parties operating systems libraries to be installed.
The simplest way to download builder is to clone the builderrepository: https://gitlab.com/kronometrix/builder and bootstrap it's installation:
* Create a Kronometrix user and group account, example: name=krmx, uid=5000, gid=5000
* As superuser:
# mkdir -p /opt/builder
# mkdir /opt/kronometrix
# chown krmx:krmx /opt/builder
# chown krmx:krmx /opt/kronometrix
* As krmx user:
% git clone https://gitlab.com/kronometrix/builder
% cd builder
% cp -pr bin etc sfw log /opt/builder
% cp -pr cpan /opt/builder
Step 2: The workspace
Change user to krmx and create your workspace, a place where you can clone or keep your repository data. Kronometrix Data Recording uses git. Under this
place you will maintain config specs what builder will use to build and install the software.
For example create here the config spec for building, the latest version, KDR 1.6.0 release:
% mkdir -p workspace/kronometrix
% git clone https://gitlab.com/kronometrix/recording
% cd recording
Step 3: Building process
% setenv WORKSPACE_PREFIX /home/krmx/workspace
% /opt/build/bin/builder recording 1.6.0
A complete building phase will look like this:
#################################################################
# Build Engine #
#################################################################
# Start: Wed Dec 5 20:25:55 EET 2018
# Target: freebsd amd64
# Module: recording
# Version: 1.3.20
#################################################################
############################################################
Submodule: perl
Info: Step 1 - Extracting perl-5.26.2 ...
Info: Step 2 - Configure perl ...
Info: Step 3 - Make perl...
Info: Step 4 - Make test perl...
Info: Step 5 - Make install perl...
############################################################
Submodule: openssl
Info: Step 1 - Extracting openssl-1.1.1b ...
Info: Step 2 - Configure openssl ...
Info: Step 3 - Make openssl...
Info: Step 4 - Make install openssl...
############################################################
Submodule: Net-SSLeay
Info: Step 1 - Extracting Net-SSLeay-1.85 ...
Info: Step 2 - Configure Net-SSLeay ...
Info: Step 3 - Make Net-SSLeay...
Info: Step 4 - Make install Net-SSLeay...
############################################################
Submodule: IO-Socket-SSL
Info: Step 1 - Extracting IO-Socket-SSL-2.060 ...
Info: Step 2 - Configure IO-Socket-SSL ...
Info: Step 3 - Make IO-Socket-SSL...
Info: Step 4 - Make install IO-Socket-SSL...
############################################################
Submodule: perl cpan
Info: Step 1 - Install Perl CPAN modules
CPAN module: Digest::SHA
CPAN module: Proc::Daemon
CPAN module: Proc::ProcessTable
CPAN module: Proc::PID::File
CPAN module: File::Tail
CPAN module: Regexp::Common
CPAN module: Filesys::Df
CPAN module: Sys::Filesystem
CPAN module: JSON::XS
CPAN module: JSON
CPAN module: HTTP::Response
CPAN module: UUID::Tiny
CPAN module: Carp::Assert
CPAN module: Net::Domain::TLD
CPAN module: Test::Kwalitee::Extra
CPAN module: DateTime::Format::ISO8601
CPAN module: Sys::HostIP
CPAN module: ExtUtils::PkgConfig
CPAN module: Inline::MakeMaker
CPAN module: Capture::Tiny
CPAN module: Email::Valid
CPAN module: DBI
CPAN module: Inline::C
CPAN module: Date::Calc
CPAN module: Text::Template
CPAN module: HTML::TableExtract
CPAN module: Tie::IxHash
CPAN module: IO::Interface
CPAN module: File::stat
CPAN module: File::Stat::Bits
CPAN module: Net::NTP
CPAN module: Filesys::DiskUsage
CPAN module: Net::Ping
CPAN module: inc::Module::Install
CPAN module: AnyEvent
CPAN module: Redis
############################################################
Submodule: perl aws
Info: Step 1 - Install Perl AWS...
############################################################
Submodule: Device-SerialPort
Info: Step 1 - Extracting Device-SerialPort-1.04 ...
Info: Step 2 - Configure Device-SerialPort ...
Info: Step 3 - Make Device-SerialPort...
Info: Step 4 - Make test Device-SerialPort...
Info: Step 5 - Make install Device-SerialPort...
############################################################
Submodule: Device-USB
Info: Step 1 - Extracting Device-USB-0.36 ...
Info: Step 2 - Configure Device-USB ...
Info: Step 3 - Make Device-USB...
Info: Step 4 - Make install Device-USB...
############################################################
Submodule: curl
Info: Step 1 - Extracting curl-7.62.0 ...
Info: Step 2 - Configure curl ...
Info: Step 3 - Make curl...
Info: Step 4 - Make install curl...
Warning: lib directory found...
############################################################
Submodule: Net-Curl
Info: Step 1 - Extracting Net-Curl-0.37 ...
Info: Step 2 - Configure Net-Curl ...
Info: Step 3 - Make Net-Curl...
Info: Step 4 - Make install Net-Curl...
############################################################
Submodule: Crypt-OpenSSL-X509
Info: Step 1 - Extracting Crypt-OpenSSL-X509-1.811 ...
Info: Step 2 - Configure Crypt-OpenSSL-X509 ...
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Crypt::OpenSSL::X509
Writing MYMETA.yml and MYMETA.json
Info: Step 3 - Make Crypt-OpenSSL-X509...
Info: Step 4 - Make install Crypt-OpenSSL-X509...
Info: Step 5 - Install Net::SSL::ExpireDate ...
Info: Step 2 - Configure Kronometrix ...
Info: Step 3 - Make Kronometrix...
Info: Step 4 - Make install Kronometrix...
############################################################
Submodule: bin freebsd
Info: Step 1 - Installing setenv ...
Info: Step 2 - Installing recorders ...
############################################################
Testing Kronometrix Data Recording
Info: Step 1 - Check recorders
Executing sysrec
Executing cpurec
Executing diskrec
Executing nicrec
Executing hdwrec
Info: Step 2 - Check libs
############################################################
Submodule: tar package freebsd
Info: Step 1 - Kronometrix tar package
############################################################
Submodule: FreeBSD package freebsd
Info: Step 1 - Create stage directory
Info: Step 2 - Prepare stage directory
Info: Step 3 - Cleanup stage directory
#################################################################
# SUMMARY
# Target: freebsd amd64
# Built on: freebsd 10.3-RELEASE-p29
#################################################################
# Module: recording
# Version: 1.3.20
# Build Date: Wed Dec 5 21:26:42 EET 2018
# perl: ok
# openssl: ok
# Net-SSLeay: ok
# IO-Socket-SSL: ok
# Perl CPAN: ok
# Perl AWS: ok
# deviceserial: ok
# deviceusb: ok
# curl: ok
# X509: ok
# webrec, svcrec: ok
# tests: ok
# freebsd pkg: ok
# FINALIZE: ok
#################################################################
# Total Build time: 1h:0m:47s
#################################################################