xnlogic 1.0.47 → 1.0.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 41f8211f8a5de7dc84e0816f00c71908f3b1c33b
4
- data.tar.gz: 476ffcb9433d22f8d5bb82c504a1ab9b16036c68
3
+ metadata.gz: a94264646ea8fe2f922c4a504056f62a78c9942b
4
+ data.tar.gz: c060a64898a4ae29ef74cd53b4ffd499cc0a6dba
5
5
  SHA512:
6
- metadata.gz: 14e345a872c2dd7b8d8609e557cc7c465c520e7ea167f01a8e093ff2c58da81cb10c423933c3919d0f1e52305b7d316de694465ad8c57e162cbd69010cff0e23
7
- data.tar.gz: 3bdaeef7062d7861e9db51b10591e113a143f817f84d5a3da7a42f32986f4cb62315944a6c9b7e8d0cc8b912e07846f2de6c643b3e3aadec15b2e9c6202009f6
6
+ metadata.gz: 749dd53681cd731df6a3a844efeb7a4728c02d81204da6261e6d38d123e22f68596f9a293a3d9e66a0f6418d11cc21f91906336b35962cd7097d4a1229138c1b
7
+ data.tar.gz: f8f91ad4ac84e4bedfe4e9f7bf37d44e0142da4c23deaee18e3672d2c08f146363455dde404c64b0c4a46e2155b6710b380c039af6951a8aa9a425efff061ecd
@@ -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
- s.add_dependency 'pacer-neo4j'
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
- <% if config[:datomic_mysql] -%>
37
+ <% if config[:datomic_mysql] -%>
31
38
  s.add_dependency 'pacer-mcfly-mysql'
32
- <% end -%>
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
- if RUBY_VERSION == '1.8.7'
2
- STDERR.puts <<WARNING
3
- WARNING: XN Logic is developed using JRuby in 1.9 mode. I recommend you
4
- restart JRuby in 1.9 mode, either with the --1.9 flag, or by
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 -%>
@@ -1,3 +1,3 @@
1
1
  module Xnlogic
2
- VERSION = "1.0.47"
2
+ VERSION = "1.0.48"
3
3
  end
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.47
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-04-29 00:00:00.000000000 Z
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: '1.7'
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: '10.0'
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.7.3
63
- type: :development
53
+ version: '10.0'
64
54
  prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
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
- requirement: !ruby/object:Gem::Requirement
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
- type: :development
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
- - ".gitignore"
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.3
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: []