adminix 0.1.49 → 0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/adminix.gemspec +1 -4
- data/app/assets/images/logo.png +0 -0
- data/app/assets/javascripts/application.js +50 -0
- data/app/assets/javascripts/bootstrap.min.js +7 -0
- data/app/assets/javascripts/dataTables.bootstrap4.js +184 -0
- data/app/assets/javascripts/jquery.dataTables.js +15243 -0
- data/app/assets/javascripts/jquery.min.js +2 -0
- data/app/assets/javascripts/sb-admin-2.min.js +6 -0
- data/app/assets/stylesheets/bootstrap.min.css +6 -0
- data/app/assets/stylesheets/dataTables.bootstrap.css +314 -0
- data/app/assets/stylesheets/dataTables.responsive.css +106 -0
- data/app/assets/stylesheets/font-awesome.min.css +4 -0
- data/app/assets/stylesheets/sb-admin-2.min.css +5 -0
- data/app/views/scripts/restart_watcher.sh.erb +9 -0
- data/app/views/scripts/run_script.sh.erb +12 -0
- data/app/views/scripts/start_process.sh.erb +7 -0
- data/app/views/scripts/stop_process.sh.erb +7 -0
- data/app/views/scripts/update_process.sh.erb +24 -0
- data/app/views/scripts/update_watcher.sh.erb +3 -0
- data/app/views/web/dashboard.html.erb +90 -0
- data/app/views/web/job.html.erb +46 -0
- data/app/views/web/link.html.erb +12 -0
- data/app/views/web/loadstamp.html.erb +57 -0
- data/app/views/web/log.html.erb +49 -0
- data/app/views/web/partials/footer.html.erb +11 -0
- data/app/views/web/partials/header.html.erb +50 -0
- data/bin/install_adminix +40 -0
- data/bin/push +13 -0
- data/development.log +0 -0
- data/exe/adminix +91 -28
- data/lib/adminix.rb +42 -5
- data/lib/adminix/config.rb +170 -96
- data/lib/adminix/entities.rb +5 -0
- data/lib/adminix/entities/job.rb +54 -0
- data/lib/adminix/entities/log.rb +21 -0
- data/lib/adminix/entities/service.rb +211 -0
- data/lib/adminix/entities/sysload_stamp.rb +37 -0
- data/lib/adminix/entities/variable.rb +32 -0
- data/lib/adminix/helpers.rb +7 -2
- data/lib/adminix/helpers/command.rb +73 -0
- data/lib/adminix/helpers/files.rb +82 -0
- data/lib/adminix/helpers/log_reader.rb +16 -0
- data/lib/adminix/helpers/net_http.rb +63 -0
- data/lib/adminix/helpers/output.rb +28 -0
- data/lib/adminix/helpers/systemctl.rb +54 -0
- data/lib/adminix/services.rb +3 -0
- data/lib/adminix/services/app_service.rb +143 -0
- data/lib/adminix/services/logs_service.rb +13 -0
- data/lib/adminix/services/system_load_service.rb +16 -0
- data/lib/adminix/version.rb +1 -1
- data/lib/adminix/watcher.rb +76 -144
- data/lib/adminix/web.rb +4 -0
- data/lib/adminix/web/router.rb +98 -0
- data/lib/adminix/web/server.rb +60 -0
- data/lib/adminix/web/view_helper.rb +14 -0
- data/lib/event_machine.rb +2 -0
- data/lib/event_machine/http_server.rb +2 -0
- data/lib/event_machine/http_server/response.rb +314 -0
- data/lib/event_machine/http_server/server.rb +107 -0
- data/lib/event_machine/tail.rb +2 -0
- data/lib/event_machine/tail/filetail.rb +470 -0
- data/lib/event_machine/tail/globwatcher.rb +294 -0
- metadata +60 -45
- data/lib/adminix/errors.rb +0 -7
- data/lib/adminix/helpers/file.rb +0 -13
- data/lib/adminix/helpers/http.rb +0 -19
- data/lib/adminix/log_watch_handler.rb +0 -23
- data/lib/adminix/server_setup.rb +0 -76
- data/lib/adminix/service.rb +0 -179
- data/lib/adminix/setup.rb +0 -3
- data/lib/adminix/setup/routes.rb +0 -113
- data/lib/adminix/setup/services.rb +0 -139
- data/lib/adminix/setup/views.rb +0 -183
- data/lib/adminix/system.rb +0 -106
- data/views/daemon_scripts/upstart.conf.erb +0 -23
@@ -0,0 +1,9 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# Here you should add some bash instruction of how to restart Adminix watcher
|
4
|
+
# Each system has own solutions for that
|
5
|
+
# If you use Debian based distro you can try using systemctl process manager
|
6
|
+
#
|
7
|
+
# Example:
|
8
|
+
#
|
9
|
+
# sudo systemctl restart adminix.service
|
@@ -0,0 +1,12 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# We want to have latest environment variables set here
|
4
|
+
echo "Setting ENV variables..."
|
5
|
+
eval $(adminix env)
|
6
|
+
|
7
|
+
# Here you should add some bash instruction of how to run custom script
|
8
|
+
#
|
9
|
+
# Example:
|
10
|
+
#
|
11
|
+
# cd /home/ubuntu/application/current
|
12
|
+
exec $@
|
@@ -0,0 +1,24 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# We want to have latest environment variables set here
|
4
|
+
echo "Setting ENV variables..."
|
5
|
+
eval $(adminix env)
|
6
|
+
|
7
|
+
# Here you should add some bash instruction of how to run custom script
|
8
|
+
#
|
9
|
+
# Example:
|
10
|
+
#
|
11
|
+
# cd /home/ubuntu/application
|
12
|
+
#
|
13
|
+
# rm -rf tmp legacy
|
14
|
+
# git clone <GIT_REPO> -b <GIT_BRANCH> tmp
|
15
|
+
#
|
16
|
+
# adminix stop_process
|
17
|
+
#
|
18
|
+
# mv current legacy
|
19
|
+
# mv tmp current
|
20
|
+
#
|
21
|
+
# cd current
|
22
|
+
# bundle exec rails assets:precompile
|
23
|
+
#
|
24
|
+
# adminix start_process
|
@@ -0,0 +1,90 @@
|
|
1
|
+
<%= view('partials/header.html') %>
|
2
|
+
|
3
|
+
<div class="content-wrapper">
|
4
|
+
<div class="container-fluid">
|
5
|
+
</div>
|
6
|
+
</div>
|
7
|
+
<div class = "row">
|
8
|
+
<div class= "panel panel-default">
|
9
|
+
<div class="panel-heading">
|
10
|
+
<h2>Service</h2>
|
11
|
+
</div>
|
12
|
+
<div class ="panel-body">
|
13
|
+
|
14
|
+
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
15
|
+
<tr>
|
16
|
+
<th>Device ID</th>
|
17
|
+
<td><%= Adminix.watcher.service.device_id %></td>
|
18
|
+
</tr>
|
19
|
+
<tr>
|
20
|
+
<th>Service ID</td>
|
21
|
+
<td><%= Adminix.config.service_id %></td>
|
22
|
+
</tr>
|
23
|
+
<tr>
|
24
|
+
<th>Logs</th>
|
25
|
+
<td><%= Adminix.watcher.service.logs.count%></td>
|
26
|
+
</tr>
|
27
|
+
<tr>
|
28
|
+
<th>Jobs</th>
|
29
|
+
<td><%= Adminix.watcher.service.jobs.count%></td>
|
30
|
+
</tr>
|
31
|
+
<tr>
|
32
|
+
<th>Loadstamps</th>
|
33
|
+
<td><%= Adminix.watcher.service.load_stamps.count%></td>
|
34
|
+
</tr>
|
35
|
+
|
36
|
+
</table>
|
37
|
+
</div>
|
38
|
+
</div>
|
39
|
+
|
40
|
+
</div>
|
41
|
+
<div class="row">
|
42
|
+
<div class= "panel panel-default">
|
43
|
+
<div class="panel-heading">
|
44
|
+
<h2>Configurations</h2>
|
45
|
+
</div>
|
46
|
+
<div class ="panel-body">
|
47
|
+
<div class="table-responsive">
|
48
|
+
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
49
|
+
<tr>
|
50
|
+
<th>Secret Key</th>
|
51
|
+
<td><%= Adminix.config.secret_key %></td>
|
52
|
+
</tr>
|
53
|
+
<tr>
|
54
|
+
<th>Watcher Period</th>
|
55
|
+
<td><%= Adminix.config.watcher_period %></td>
|
56
|
+
</tr>
|
57
|
+
<tr>
|
58
|
+
<th>API host</th>
|
59
|
+
<td><%= Adminix.config.api_host %></td>
|
60
|
+
</tr>
|
61
|
+
<tr>
|
62
|
+
<th>Server Port</th>
|
63
|
+
<td><%= Adminix.config.server_port %></td>
|
64
|
+
</tr>
|
65
|
+
<tr>
|
66
|
+
<th>Configured Root Path</th>
|
67
|
+
<td><%= Adminix.config.config_root_path %></td>
|
68
|
+
</tr>
|
69
|
+
<tr>
|
70
|
+
<th>Systemctl</th>
|
71
|
+
<td><%= Adminix.config.systemctl%></td>
|
72
|
+
</tr>
|
73
|
+
<tr>
|
74
|
+
<th>Data Storage Limits</th>
|
75
|
+
<td><%= Adminix.config.data_storage_limit %></td>
|
76
|
+
</tr>
|
77
|
+
<tr>
|
78
|
+
<th>Watch System Load</th>
|
79
|
+
<td><%= Adminix.config.watch_system_load %></td>
|
80
|
+
</tr>
|
81
|
+
</table>
|
82
|
+
</div>
|
83
|
+
</div>
|
84
|
+
</div>
|
85
|
+
</div>
|
86
|
+
</div>
|
87
|
+
</div>
|
88
|
+
|
89
|
+
|
90
|
+
<%= view('partials/footer.html') %>
|
@@ -0,0 +1,46 @@
|
|
1
|
+
<%= view('partials/header.html') %>
|
2
|
+
<head>
|
3
|
+
<title>
|
4
|
+
Adminix Jobs
|
5
|
+
</title>
|
6
|
+
</head>
|
7
|
+
|
8
|
+
<body>
|
9
|
+
<div class="content-wrapper">
|
10
|
+
<div class="container-fluid">
|
11
|
+
<div class= "panel panel-default">
|
12
|
+
<div class="panel-heading">
|
13
|
+
<h2>Job</h2>
|
14
|
+
</div>
|
15
|
+
<div class ="panel-body">
|
16
|
+
<div class="table-responsive">
|
17
|
+
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
18
|
+
<tr>
|
19
|
+
<th>ID</th>
|
20
|
+
<th>Status</th>
|
21
|
+
<th>Output</th>
|
22
|
+
</tr>
|
23
|
+
<% Adminix.watcher.service.jobs.each do |job| %>
|
24
|
+
<tr>
|
25
|
+
<td><%=job.id%></td>
|
26
|
+
<td><%=job.status%></td>
|
27
|
+
<td><%=job.output%></td>
|
28
|
+
</tr>
|
29
|
+
<% end %>
|
30
|
+
</table>
|
31
|
+
</div>
|
32
|
+
<div class="row">
|
33
|
+
<div class="col-sm-1 col-sm-offset-5">
|
34
|
+
<a class="<%= @page == 1 ? "btn btn-primary btn-block disabled" : "btn btn-primary btn-block active" %>" role="button" aria-pressed="true" href="<%="job?page=#{@page-1}&per_page=#{@per_page}"%>">Previous </a>
|
35
|
+
</div>
|
36
|
+
<div class="col-sm-1">
|
37
|
+
<a class="<%= (@page * @per_page) >= (Adminix.watcher.service.jobs.count) ? "btn btn-primary btn-block disabled" : "btn btn-primary btn-block active" %>" role="button" aria-pressed="true" href="<%= "job?page=#{@page+1}&per_page=#{@per_page}" %>">Next
|
38
|
+
</a>
|
39
|
+
</div>
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
</div>
|
45
|
+
</body>
|
46
|
+
<%= view('partials/footer.html') %>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
<html>
|
2
|
+
<head>
|
3
|
+
<title>Adminix start</title>
|
4
|
+
</head>
|
5
|
+
<body>
|
6
|
+
<script type="text/javascript">
|
7
|
+
var host = window.location.protocol + '//' + window.location.host;
|
8
|
+
var newPath = "https://adminix.io/setup-server/init?host=" + host;
|
9
|
+
window.location.href = newPath;
|
10
|
+
</script>
|
11
|
+
</body>
|
12
|
+
</html>
|
@@ -0,0 +1,57 @@
|
|
1
|
+
|
2
|
+
<%= view('partials/header.html') %>
|
3
|
+
|
4
|
+
<head>
|
5
|
+
<title>
|
6
|
+
Adminix Loadstamps
|
7
|
+
</title>
|
8
|
+
</head>
|
9
|
+
|
10
|
+
<body>
|
11
|
+
<div class="content-wrapper">
|
12
|
+
<div class="container-fluid">
|
13
|
+
<div class= "panel panel-default">
|
14
|
+
<div class="panel-heading">
|
15
|
+
<h2>Loadstamp</h2>
|
16
|
+
</div>
|
17
|
+
<div class ="panel-body">
|
18
|
+
<div class="table-responsive">
|
19
|
+
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
20
|
+
<tr>
|
21
|
+
<th>Memory Usage</th>
|
22
|
+
<th>CPU Load</th>
|
23
|
+
<th>Disk Usage</th>
|
24
|
+
<th>Temperature</th>
|
25
|
+
<th>Created At</th>
|
26
|
+
</tr>
|
27
|
+
<% retrieve_data(Adminix.watcher.service.load_stamps,@page,@per_page).each do |loadstamp| %>
|
28
|
+
<tr>
|
29
|
+
<td><%=loadstamp.memory_usage_mb%></td>
|
30
|
+
<td><%=loadstamp.cpu_load_percents%></td>
|
31
|
+
<td><%=loadstamp.disk_usage_mb%></td>
|
32
|
+
<td><%=loadstamp.temperature%></td>
|
33
|
+
<td><%=loadstamp.created_at%></td>
|
34
|
+
</tr>
|
35
|
+
<% end %>
|
36
|
+
</table>
|
37
|
+
</div>
|
38
|
+
<div class="row">
|
39
|
+
<div style="margin-left:20px;"><%= (Adminix.watcher.service.load_stamps.count) == 0 ? "Showing 0 to 0 of 0 entries" : ((@page * @per_page) >= (Adminix.watcher.service.load_stamps.count) ? "Showing #{(@page - 1) * @per_page + 1} to #{Adminix.watcher.service.load_stamps.count} of #{Adminix.watcher.service.load_stamps.count} entries" : "Showing #{(@page - 1) * @per_page + 1} to #{(@page * @per_page)} of #{Adminix.watcher.service.load_stamps.count} entries")%></div>
|
40
|
+
<div class="col-sm-1 col-sm-offset-5">
|
41
|
+
<a class="<%= @page == 1 ? "btn btn-primary btn-block disabled" : "btn btn-primary btn-block active" %>" role="button" aria-pressed="true" href="<%="loadstamp?page=#{@page-1}&per_page=#{@per_page}"%>">Previous </a>
|
42
|
+
</div>
|
43
|
+
<div class="col-sm-1">
|
44
|
+
<a class="<%= (@page * @per_page) >= (Adminix.watcher.service.load_stamps.count) ? "btn btn-primary btn-block disabled" : "btn btn-primary btn-block active" %>" role="button" aria-pressed="true" href="<%= "loadstamp?page=#{@page+1}&per_page=#{@per_page}" %>">Next </a>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
</body>
|
52
|
+
|
53
|
+
<%= view('partials/footer.html') %>
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
@@ -0,0 +1,49 @@
|
|
1
|
+
|
2
|
+
<%= view('partials/header.html') %>
|
3
|
+
|
4
|
+
<head>
|
5
|
+
<title>
|
6
|
+
Adminix Logs
|
7
|
+
</title>
|
8
|
+
</head>
|
9
|
+
|
10
|
+
<body>
|
11
|
+
<div class="content-wrapper">
|
12
|
+
<div class="container-fluid">
|
13
|
+
<div class= "panel panel-default">
|
14
|
+
<div class="panel-heading">
|
15
|
+
<h2>Log</h2>
|
16
|
+
</div>
|
17
|
+
<div class ="panel-body">
|
18
|
+
<div class="table-responsive">
|
19
|
+
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
|
20
|
+
<tr>
|
21
|
+
<th>Message</th>
|
22
|
+
<th>Tag</th>
|
23
|
+
<th>Created at</th>
|
24
|
+
</tr>
|
25
|
+
<% Adminix.watcher.service.logs.each do |log| %>
|
26
|
+
<tr>
|
27
|
+
<td><%=log.message%></td>
|
28
|
+
<td><%=log.tag%></td>
|
29
|
+
<td><%=log.created_at%></td>
|
30
|
+
</tr>
|
31
|
+
<% end %>
|
32
|
+
</table>
|
33
|
+
</div>
|
34
|
+
<div class="row">
|
35
|
+
<div style="margin-left:20px;"><%= (Adminix.watcher.service.logs.count) == 0 ? "Showing 0 to 0 of 0 entries" : ((@page * @per_page) >= (Adminix.watcher.service.logs.count) ? "Showing #{(@page - 1) * @per_page + 1} to #{Adminix.watcher.service.logs.count} of #{Adminix.watcher.service.logs.count} entries" : "Showing #{(@page - 1) * @per_page + 1} to #{(@page * @per_page)} of #{Adminix.watcher.service.logs.count} entries")%></div>
|
36
|
+
<div class="col-sm-1 col-sm-offset-5">
|
37
|
+
<a class="<%= @page == 1 ? "btn btn-primary btn-block disabled" : "btn btn-primary btn-block active" %>" role="button" aria-pressed="true" href="<%="log?page=#{@page-1}&per_page=#{@per_page}"%>">Previous </a>
|
38
|
+
</div>
|
39
|
+
<div class="col-sm-1">
|
40
|
+
<a class="<%= (@page * @per_page) >= (Adminix.watcher.service.logs.count) ? "btn btn-primary btn-block disabled" : "btn btn-primary btn-block active" %>" role="button" aria-pressed="true" href="<%= "log?page=#{@page+1}&per_page=#{@per_page}" %>">Next </a>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
</body>
|
48
|
+
|
49
|
+
<%= view('partials/footer.html') %>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
|
2
|
+
<!-- Bootstrap core JavaScript-->
|
3
|
+
<script src="/javascripts/jquery.min.js"></script>
|
4
|
+
<script src="/javascripts/bootstrap.min.js"></script>
|
5
|
+
<!-- Page level plugin JavaScript-->
|
6
|
+
<script src="/javascripts/jquery.dataTables.js"></script>
|
7
|
+
<script src="/javascripts/dataTables.bootstrap4.js"></script>
|
8
|
+
|
9
|
+
<script src="/javascripts/application.js"></script>
|
10
|
+
|
11
|
+
|
@@ -0,0 +1,50 @@
|
|
1
|
+
<%
|
2
|
+
menu = [
|
3
|
+
['', 'Dashboard'],
|
4
|
+
['log', 'Logs'],
|
5
|
+
['job', 'Jobs'],
|
6
|
+
['loadstamp', 'Loadstamps']
|
7
|
+
]
|
8
|
+
%>
|
9
|
+
<html>
|
10
|
+
<head>
|
11
|
+
<meta charset="utf-8">
|
12
|
+
<!-- Bootstrap Core CSS -->
|
13
|
+
<link href="/stylesheets/bootstrap.min.css" rel="stylesheet">
|
14
|
+
<!-- DataTables CSS -->
|
15
|
+
<link href="/stylesheets/dataTables.bootstrap.css" rel="stylesheet">
|
16
|
+
<!-- DataTables Responsive CSS -->
|
17
|
+
<link href="/stylesheets/dataTables.responsive.css" rel="stylesheet">
|
18
|
+
<!-- Custom CSS -->
|
19
|
+
<link href="/stylesheets/sb-admin-2.css" rel="stylesheet">
|
20
|
+
<!-- Custom Fonts -->
|
21
|
+
<link href="/stylesheets/font-awesome.min.css" rel="stylesheet" type="text/css">
|
22
|
+
</head>
|
23
|
+
<body>
|
24
|
+
<div class="navbar navbar-default navbar-static-top">
|
25
|
+
<div class = "row" style="margin:10px;">
|
26
|
+
<a href= "/"><img height="50" src="/images/logo.png" /></a>
|
27
|
+
</div>
|
28
|
+
<div>
|
29
|
+
<ul class="nav nav-tabs">
|
30
|
+
<% menu.each do |item| %>
|
31
|
+
<li role="presentation" class="<%= "/#{item[0]}" == @http_request_uri ? 'nav-item nav-link active' : 'nav-item nav-link' %>">
|
32
|
+
<a href="<%= item[0] == '' ? '/' : item[0] %>" ><%= item[1] %></a>
|
33
|
+
</li>
|
34
|
+
<% end %>
|
35
|
+
</ul>
|
36
|
+
</div>
|
37
|
+
<div class ="row" style="margin:10px;">
|
38
|
+
<div class="col-md-1">
|
39
|
+
<a href="#" class="btn btn-success btn-block active" id="start_script" role="button" aria-pressed="true">START</a>
|
40
|
+
</div>
|
41
|
+
<div class="col-md-1">
|
42
|
+
<a href="#" class="btn btn-danger btn-block active" id="stop_script" role="button" aria-pressed="true">STOP</a>
|
43
|
+
</div>
|
44
|
+
<div class="col-md-2">
|
45
|
+
<a onClick="javascript:void(0)" class="btn btn-warning btn-block active" id="refreshButton" role="button" aria-pressed="true">AUTO RELOAD OFF</a>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
</body>
|
50
|
+
</html>
|
data/bin/install_adminix
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
# curl https://ac6932d63852ed25026e205753b59d03a73ef2c7@raw.githubusercontent.com/adminixio/adminix-cli/master/bin/install_adminix | sudo bin/bash
|
3
|
+
|
4
|
+
if [ -x "$(command -v apt-get)" ]; then
|
5
|
+
echo "Installing required libraries..."
|
6
|
+
apt-get update
|
7
|
+
apt-get install -y ruby-full git-core curl tar build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev
|
8
|
+
gem install bundler
|
9
|
+
elif [ -x "$(command -v brew)" ]; then
|
10
|
+
echo "Installing required libraries..."
|
11
|
+
brew install ruby git curl
|
12
|
+
fi
|
13
|
+
|
14
|
+
if ! [ -x "$(command -v ruby)" ]; then
|
15
|
+
echo "Error: Ruby is not installed." >&2
|
16
|
+
exit 1
|
17
|
+
fi
|
18
|
+
|
19
|
+
echo ""
|
20
|
+
echo "Getting latest Adminix-CLI source..."
|
21
|
+
cd /tmp
|
22
|
+
#rm -rf adminixio-adminix-cli-*
|
23
|
+
rm -rf adminix-cli
|
24
|
+
#curl -L https://ac6932d63852ed25026e205753b59d03a73ef2c7@api.github.com/repos/adminixio/adminix-cli/tarball | tar zx
|
25
|
+
git clone https://ac6932d63852ed25026e205753b59d03a73ef2c7:x-oauth-basic@github.com/adminixio/adminix-cli.git
|
26
|
+
#cd adminixio-adminix-cli-*
|
27
|
+
cd adminix-cli
|
28
|
+
|
29
|
+
echo ""
|
30
|
+
echo "Installing Adminix-CLI..."
|
31
|
+
bundle install
|
32
|
+
gem build adminix.gemspec
|
33
|
+
gem install adminix-*
|
34
|
+
|
35
|
+
echo ""
|
36
|
+
echo "Latest Adminix-CLI has been installed"
|
37
|
+
adminix version
|
38
|
+
|
39
|
+
echo ""
|
40
|
+
adminix help
|
data/bin/push
ADDED