xnlogic 1.0.47 → 1.0.48
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/xnlogic/cli.rb +3 -0
- data/lib/xnlogic/cli/application.rb +26 -0
- data/lib/xnlogic/templates/application/gemspec.tt +10 -3
- data/lib/xnlogic/templates/application/lib/gemname.rb.tt +5 -9
- data/lib/xnlogic/templates/vagrant/config/neo4j.properties.tt +114 -0
- data/lib/xnlogic/version.rb +1 -1
- metadata +33 -46
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a94264646ea8fe2f922c4a504056f62a78c9942b
|
4
|
+
data.tar.gz: c060a64898a4ae29ef74cd53b4ffd499cc0a6dba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 749dd53681cd731df6a3a844efeb7a4728c02d81204da6261e6d38d123e22f68596f9a293a3d9e66a0f6418d11cc21f91906336b35962cd7097d4a1229138c1b
|
7
|
+
data.tar.gz: f8f91ad4ac84e4bedfe4e9f7bf37d44e0142da4c23deaee18e3672d2c08f146363455dde404c64b0c4a46e2155b6710b380c039af6951a8aa9a425efff061ecd
|
data/lib/xnlogic/cli.rb
CHANGED
@@ -63,6 +63,9 @@ module Xnlogic
|
|
63
63
|
"Number of Virtual CPUs the Development VM should use (default 2)"
|
64
64
|
method_option "memory", type: :numeric, banner:
|
65
65
|
"Amount of RAM to allow the Development VM to use (default 2048, in MB)"
|
66
|
+
method_option "graph", type: :string,
|
67
|
+
enum: %w[neo4j neo4j2 neo4j2-enterprise orient history-graph],
|
68
|
+
banner: "The graph engine to use by default (default neo4j2)"
|
66
69
|
method_option "root", type: :string, banner:
|
67
70
|
"Optionally specify a different root directory name"
|
68
71
|
method_option "provision", type: :boolean, banner:
|
@@ -18,9 +18,14 @@ module Xnlogic
|
|
18
18
|
@root = options.fetch('root', @name)
|
19
19
|
@app = Pathname.pwd.join(root)
|
20
20
|
options['name'] = @name
|
21
|
+
set_default_options!
|
21
22
|
self
|
22
23
|
end
|
23
24
|
|
25
|
+
def set_default_options!
|
26
|
+
options['graph'] ||= 'neo4j2'
|
27
|
+
end
|
28
|
+
|
24
29
|
def options_filename
|
25
30
|
'config/app_options.yaml'
|
26
31
|
end
|
@@ -35,6 +40,7 @@ module Xnlogic
|
|
35
40
|
@app = Pathname.pwd.join(root)
|
36
41
|
super()
|
37
42
|
@name ||= options['name']
|
43
|
+
set_default_options!
|
38
44
|
self
|
39
45
|
end
|
40
46
|
|
@@ -162,6 +168,18 @@ module Xnlogic
|
|
162
168
|
end
|
163
169
|
end
|
164
170
|
|
171
|
+
def orient?
|
172
|
+
options['graph'] == 'orient'
|
173
|
+
end
|
174
|
+
|
175
|
+
def neo?
|
176
|
+
options['graph'] =~ /neo4j/
|
177
|
+
end
|
178
|
+
|
179
|
+
def neo_ent?
|
180
|
+
options['graph'] == 'neo4j2-enterprise'
|
181
|
+
end
|
182
|
+
|
165
183
|
def template_options
|
166
184
|
namespaced_path = name
|
167
185
|
constant_name = namespaced_path.split('_').map{|p| p[0..0].upcase + p[1..-1] }.join
|
@@ -177,6 +195,10 @@ module Xnlogic
|
|
177
195
|
:vm_cpus => options['cpus'],
|
178
196
|
:vm_memory => options['memory'],
|
179
197
|
:xn_key => options['key'],
|
198
|
+
:graph => options['graph'],
|
199
|
+
:neo4j => neo?,
|
200
|
+
:neo4j_enterprise => neo_ent?,
|
201
|
+
:orient => orient?,
|
180
202
|
:datomic_pro => datomic_pro?,
|
181
203
|
:datomic_license => datomic_license,
|
182
204
|
:datomic_mysql => options['datomic_mysql'],
|
@@ -228,6 +250,10 @@ module Xnlogic
|
|
228
250
|
datomic_installer => 'script/install_transactor.sh',
|
229
251
|
}
|
230
252
|
|
253
|
+
if neo?
|
254
|
+
base_templates['config/neo4j.properties.tt'] = 'config/neo4j.properties'
|
255
|
+
end
|
256
|
+
|
231
257
|
if datomic_pro?
|
232
258
|
base_templates['datomic/m2_settings.xml.tt'] = 'config/m2_settings.xml'
|
233
259
|
base_templates['datomic/pom.xml.tt'] = 'config/pom.xml'
|
@@ -23,13 +23,20 @@ Gem::Specification.new do |s|
|
|
23
23
|
s.add_dependency 'rack', '1.5.2'
|
24
24
|
s.add_dependency 'pacer', '>= 2.0.6'
|
25
25
|
s.add_dependency 'pacer-model'
|
26
|
-
|
26
|
+
<% if config[:neo4j] -%>
|
27
|
+
s.add_dependency 'pacer-neo4j2'
|
28
|
+
<% if config[:neo4j_enterprise] -%>
|
29
|
+
s.add_dependency 'pacer-neo4j2-enterprise'
|
30
|
+
<% end -%>
|
31
|
+
<% elsif config[:orient] -%>
|
32
|
+
s.add_dependency 'pacer-orient'
|
33
|
+
<% end -%>
|
27
34
|
s.add_dependency 'pacer-mcfly'
|
28
35
|
<% if config[:datomic_pro] -%>
|
29
36
|
s.add_dependency 'pacer-mcfly-pro'<%= ", " + config[:optional_datomic_version].inspect if config[:optional_datomic_version] %>
|
30
|
-
<%
|
37
|
+
<% if config[:datomic_mysql] -%>
|
31
38
|
s.add_dependency 'pacer-mcfly-mysql'
|
32
|
-
<%
|
39
|
+
<% end -%>
|
33
40
|
<% else -%>
|
34
41
|
s.add_dependency 'pacer-mcfly-free'<%= ", " + config[:optional_datomic_version].inspect if config[:optional_datomic_version] %>
|
35
42
|
<% end -%>
|
@@ -1,12 +1,7 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
defaulting to 1.9 mode by setting the environment variable
|
6
|
-
JRUBY_OPTS=--1.9
|
7
|
-
WARNING
|
8
|
-
raise "1.8 mode: no go"
|
9
|
-
end
|
1
|
+
require 'java'
|
2
|
+
|
3
|
+
# XN settings must be configured before calling require 'pacer-model'
|
4
|
+
java.lang.System.setProperty("xn.relVersion", "2")
|
10
5
|
|
11
6
|
require 'rubygems'
|
12
7
|
require 'bundler/setup'
|
@@ -96,6 +91,7 @@ end
|
|
96
91
|
require '<%= config[:namespaced_path] %>/version'
|
97
92
|
require '<%= config[:namespaced_path] %>/type'
|
98
93
|
|
94
|
+
PacerModel.default_graph_engine = <%= config[:graph].inspect %>
|
99
95
|
PacerModel.load_mcfly_config_yaml(<%= config[:constant_name] %>.config_file('mcfly_config.yml'), <%= config[:constant_name] %>.env)
|
100
96
|
|
101
97
|
PacerModel.applications['<%= config[:name] %>'] = <%= config[:constant_name] %>
|
@@ -0,0 +1,114 @@
|
|
1
|
+
################################################################
|
2
|
+
# Neo4j
|
3
|
+
#
|
4
|
+
# neo4j.properties - database tuning parameters
|
5
|
+
#
|
6
|
+
################################################################
|
7
|
+
|
8
|
+
# Enable this to be able to upgrade a store from an older version.
|
9
|
+
#allow_store_upgrade=true
|
10
|
+
|
11
|
+
# The amount of memory to use for mapping the store files, in bytes (or
|
12
|
+
# kilobytes with the 'k' suffix, megabytes with 'm' and gigabytes with 'g').
|
13
|
+
# If Neo4j is running on a dedicated server, then it is generally recommended
|
14
|
+
# to leave about 2-4 gigabytes for the operating system, give the JVM enough
|
15
|
+
# heap to hold all your transaction state and query context, and then leave the
|
16
|
+
# rest for the page cache.
|
17
|
+
# The default page cache memory assumes the machine is dedicated to running
|
18
|
+
# Neo4j, and is heuristically set to 75% of RAM minus the max Java heap size.
|
19
|
+
#dbms.pagecache.memory=10g
|
20
|
+
|
21
|
+
# Keep logical logs, helps debugging but uses more disk space, enabled for
|
22
|
+
# legacy reasons To limit space needed to store historical logs use values such
|
23
|
+
# as: "7 days" or "100M size" instead of "true".
|
24
|
+
#keep_logical_logs=7 days
|
25
|
+
|
26
|
+
# Enable shell server so that remote clients can connect via Neo4j shell.
|
27
|
+
#remote_shell_enabled=true
|
28
|
+
# The network interface IP the shell will listen on (use 0.0.0 for all interfaces).
|
29
|
+
#remote_shell_host=127.0.0.1
|
30
|
+
# The port the shell will listen on, default is 1337.
|
31
|
+
#remote_shell_port=1337
|
32
|
+
|
33
|
+
# The type of cache to use for nodes and relationships.
|
34
|
+
<% if config[:neo4j_enterprise] -%>
|
35
|
+
#cache_type=hpc
|
36
|
+
<% else -%>
|
37
|
+
#cache_type=soft
|
38
|
+
<% end -%>
|
39
|
+
|
40
|
+
# Percentage, 0-100, of memory available for caching to use for caching. Default is 50%.
|
41
|
+
# cache.memory_ratio=
|
42
|
+
|
43
|
+
# Maximum size of the heap memory to dedicate to the cached nodes.
|
44
|
+
# http://neo4j.com/docs/2.2.1/configuration-caches.html#config_node_cache_size
|
45
|
+
#node_cache_size=
|
46
|
+
|
47
|
+
# Maximum size of the heap memory to dedicate to the cached relationships.
|
48
|
+
#relationship_cache_size=
|
49
|
+
|
50
|
+
<% if config[:neo4j_enterprise] -%>
|
51
|
+
# Enable online backups to be taken from this database.
|
52
|
+
online_backup_enabled=true
|
53
|
+
|
54
|
+
# Port to listen to for incoming backup requests.
|
55
|
+
online_backup_server=127.0.0.1:6362
|
56
|
+
|
57
|
+
|
58
|
+
# Uncomment and specify these lines for running Neo4j in High Availability mode.
|
59
|
+
# See the High availability setup tutorial for more details on these settings
|
60
|
+
# http://neo4j.com/docs/2.2.1/ha-setup-tutorial.html
|
61
|
+
|
62
|
+
# ha.server_id is the number of each instance in the HA cluster. It should be
|
63
|
+
# an integer (e.g. 1), and should be unique for each cluster instance.
|
64
|
+
ha.server_id=
|
65
|
+
|
66
|
+
# ha.initial_hosts is a comma-separated list (without spaces) of the host:port
|
67
|
+
# where the ha.cluster_server of all instances will be listening. Typically
|
68
|
+
# this will be the same for all cluster instances.
|
69
|
+
#ha.initial_hosts=192.168.0.1:5001,192.168.0.2:5001,192.168.0.3:5001
|
70
|
+
ha.initial_hosts=
|
71
|
+
|
72
|
+
# IP and port for this instance to listen on, for communicating cluster status
|
73
|
+
# information iwth other instances (also see ha.initial_hosts). The IP
|
74
|
+
# must be the configured IP address for one of the local interfaces.
|
75
|
+
#ha.cluster_server=192.168.0.1:5001
|
76
|
+
ha.cluster_server=
|
77
|
+
|
78
|
+
# IP and port for this instance to listen on, for communicating transaction
|
79
|
+
# data with other instances (also see ha.initial_hosts). The IP
|
80
|
+
# must be the configured IP address for one of the local interfaces.
|
81
|
+
#ha.server=192.168.0.1:6001
|
82
|
+
ha.server=
|
83
|
+
|
84
|
+
# The interval at which slaves will pull updates from the master. Comment out
|
85
|
+
# the option to disable periodic pulling of updates. Unit is seconds.
|
86
|
+
ha.pull_interval=10
|
87
|
+
|
88
|
+
# Amount of slaves the master will try to push a transaction to upon commit
|
89
|
+
# (default is 1). The master will optimistically continue and not fail the
|
90
|
+
# transaction even if it fails to reach the push factor. Setting this to 0 will
|
91
|
+
# increase write performance when writing through master but could potentially
|
92
|
+
# lead to branched data (or loss of transaction) if the master goes down.
|
93
|
+
ha.tx_push_factor=1
|
94
|
+
|
95
|
+
# Strategy the master will use when pushing data to slaves (if the push factor
|
96
|
+
# is greater than 0). There are two options available "fixed" (default) or
|
97
|
+
# "round_robin". Fixed will start by pushing to slaves ordered by server id
|
98
|
+
# (highest first) improving performance since the slaves only have to cache up
|
99
|
+
# one transaction at a time.
|
100
|
+
ha.tx_push_strategy=fixed
|
101
|
+
|
102
|
+
# Policy for how to handle branched data.
|
103
|
+
branched_data_policy=keep_all
|
104
|
+
|
105
|
+
# Clustering timeouts
|
106
|
+
# Default timeout.
|
107
|
+
ha.default_timeout=5s
|
108
|
+
|
109
|
+
# How often heartbeat messages should be sent. Defaults to ha.default_timeout.
|
110
|
+
ha.heartbeat_interval=5s
|
111
|
+
|
112
|
+
# Timeout for heartbeats between cluster members. Should be at least twice that of ha.heartbeat_interval.
|
113
|
+
heartbeat_timeout=11s
|
114
|
+
<% end -%>
|
data/lib/xnlogic/version.rb
CHANGED
metadata
CHANGED
@@ -1,86 +1,72 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xnlogic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.48
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Darrick Wiebe
|
8
8
|
- David Colebatch
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-05-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
requirements:
|
18
|
-
- - ">="
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: '0'
|
21
|
-
type: :runtime
|
22
|
-
prerelease: false
|
23
16
|
version_requirements: !ruby/object:Gem::Requirement
|
24
17
|
requirements:
|
25
|
-
- -
|
18
|
+
- - '>='
|
26
19
|
- !ruby/object:Gem::Version
|
27
20
|
version: '0'
|
28
|
-
- !ruby/object:Gem::Dependency
|
29
|
-
name: bundler
|
30
21
|
requirement: !ruby/object:Gem::Requirement
|
31
22
|
requirements:
|
32
|
-
- -
|
23
|
+
- - '>='
|
33
24
|
- !ruby/object:Gem::Version
|
34
|
-
version: '
|
35
|
-
type: :development
|
25
|
+
version: '0'
|
36
26
|
prerelease: false
|
27
|
+
type: :runtime
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: bundler
|
37
30
|
version_requirements: !ruby/object:Gem::Requirement
|
38
31
|
requirements:
|
39
|
-
- -
|
32
|
+
- - ~>
|
40
33
|
- !ruby/object:Gem::Version
|
41
34
|
version: '1.7'
|
42
|
-
- !ruby/object:Gem::Dependency
|
43
|
-
name: rake
|
44
35
|
requirement: !ruby/object:Gem::Requirement
|
45
36
|
requirements:
|
46
|
-
- -
|
37
|
+
- - ~>
|
47
38
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
49
|
-
type: :development
|
39
|
+
version: '1.7'
|
50
40
|
prerelease: false
|
41
|
+
type: :development
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: rake
|
51
44
|
version_requirements: !ruby/object:Gem::Requirement
|
52
45
|
requirements:
|
53
|
-
- -
|
46
|
+
- - ~>
|
54
47
|
- !ruby/object:Gem::Version
|
55
48
|
version: '10.0'
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
|
-
name: ronn
|
58
49
|
requirement: !ruby/object:Gem::Requirement
|
59
50
|
requirements:
|
60
|
-
- -
|
51
|
+
- - ~>
|
61
52
|
- !ruby/object:Gem::Version
|
62
|
-
version: 0
|
63
|
-
type: :development
|
53
|
+
version: '10.0'
|
64
54
|
prerelease: false
|
65
|
-
|
66
|
-
requirements:
|
67
|
-
- - "~>"
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: 0.7.3
|
55
|
+
type: :development
|
70
56
|
- !ruby/object:Gem::Dependency
|
71
57
|
name: xn_gem_release_tasks
|
72
|
-
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
59
|
requirements:
|
74
|
-
- -
|
60
|
+
- - '>='
|
75
61
|
- !ruby/object:Gem::Version
|
76
62
|
version: 0.1.8
|
77
|
-
|
78
|
-
prerelease: false
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
63
|
+
requirement: !ruby/object:Gem::Requirement
|
80
64
|
requirements:
|
81
|
-
- -
|
65
|
+
- - '>='
|
82
66
|
- !ruby/object:Gem::Version
|
83
67
|
version: 0.1.8
|
68
|
+
prerelease: false
|
69
|
+
type: :development
|
84
70
|
description: Graph application framework with xnlogic.com
|
85
71
|
email:
|
86
72
|
- dw@xnlogic.com
|
@@ -90,7 +76,7 @@ executables:
|
|
90
76
|
extensions: []
|
91
77
|
extra_rdoc_files: []
|
92
78
|
files:
|
93
|
-
-
|
79
|
+
- .gitignore
|
94
80
|
- Gemfile
|
95
81
|
- README.md
|
96
82
|
- Rakefile
|
@@ -138,6 +124,7 @@ files:
|
|
138
124
|
- lib/xnlogic/templates/vagrant/Vagrantfile.tt
|
139
125
|
- lib/xnlogic/templates/vagrant/config/datomic.conf
|
140
126
|
- lib/xnlogic/templates/vagrant/config/diagnostics.sh
|
127
|
+
- lib/xnlogic/templates/vagrant/config/neo4j.properties.tt
|
141
128
|
- lib/xnlogic/templates/vagrant/config/start.sh
|
142
129
|
- lib/xnlogic/templates/vagrant/config/vagrant.provision.tt
|
143
130
|
- lib/xnlogic/templates/vagrant/config/vagrant.up.tt
|
@@ -163,24 +150,24 @@ files:
|
|
163
150
|
homepage: https://xnlogic.com
|
164
151
|
licenses: []
|
165
152
|
metadata: {}
|
166
|
-
post_install_message:
|
153
|
+
post_install_message:
|
167
154
|
rdoc_options: []
|
168
155
|
require_paths:
|
169
156
|
- lib
|
170
157
|
required_ruby_version: !ruby/object:Gem::Requirement
|
171
158
|
requirements:
|
172
|
-
- -
|
159
|
+
- - '>='
|
173
160
|
- !ruby/object:Gem::Version
|
174
161
|
version: '0'
|
175
162
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
176
163
|
requirements:
|
177
|
-
- -
|
164
|
+
- - '>='
|
178
165
|
- !ruby/object:Gem::Version
|
179
166
|
version: '0'
|
180
167
|
requirements: []
|
181
|
-
rubyforge_project:
|
182
|
-
rubygems_version: 2.4.
|
183
|
-
signing_key:
|
168
|
+
rubyforge_project:
|
169
|
+
rubygems_version: 2.4.5
|
170
|
+
signing_key:
|
184
171
|
specification_version: 4
|
185
172
|
summary: XN Logic command-line tools
|
186
173
|
test_files: []
|