xnlogic 1.0.2 → 1.0.3
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/application.rb +18 -10
- data/lib/xnlogic/cli.rb +4 -8
- data/lib/xnlogic/templates/{application → vagrant}/Vagrantfile.tt +15 -9
- data/lib/xnlogic/templates/vagrant/config/vagrant.provision.tt +133 -0
- data/lib/xnlogic/templates/{application → vagrant}/config/vagrant.settings.yml.tt +2 -1
- data/lib/xnlogic/version.rb +1 -1
- metadata +50 -36
- data/lib/xnlogic/templates/application/config/vagrant.provision.tt +0 -106
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 53c0bbebd47061647f31daa55f97fcb6d509ce8c
|
4
|
+
data.tar.gz: 6e960006fe662c8a6d01e9dffee51ea5c7fad708
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a29d09df746a5d75d8ac812f68caa16544bf9ae3c774f1a6c9fa4802c0cccb1f0085de581c2e9e89249f275b8bc77515e3aa7adfcc6bcf6a824e6ba0444b50f8
|
7
|
+
data.tar.gz: ea0de41a5976d02531402b2525fe98ebf6c5c4e7be4e600f7acf63967fa320c512c3b6cf0513679526828498c59e4c510652ec0e745cfb7b3bc6717b054e1ec3
|
@@ -2,7 +2,7 @@ require 'pathname'
|
|
2
2
|
|
3
3
|
module Xnlogic
|
4
4
|
class CLI::Application
|
5
|
-
attr_reader :options, :app_name, :thor, :name, :
|
5
|
+
attr_reader :options, :app_name, :thor, :base_name, :name, :base, :app
|
6
6
|
|
7
7
|
def initialize(options, app_name, thor)
|
8
8
|
@options = options
|
@@ -10,7 +10,9 @@ module Xnlogic
|
|
10
10
|
@thor = thor
|
11
11
|
|
12
12
|
@name = app_name.chomp("/").tr('-', '_') # remove trailing slash if present
|
13
|
-
@
|
13
|
+
@base_name = options.fetch('base', 'xnlogic')
|
14
|
+
@base = Pathname.pwd.join(base_name)
|
15
|
+
@app = @base.join(name)
|
14
16
|
end
|
15
17
|
|
16
18
|
def run
|
@@ -27,6 +29,16 @@ module Xnlogic
|
|
27
29
|
:email => git_user_email.empty? ? "TODO: Write your email address" : git_user_email,
|
28
30
|
}
|
29
31
|
|
32
|
+
base_templates = {
|
33
|
+
"Vagrantfile.tt" => "Vagrantfile",
|
34
|
+
"config/vagrant.provision.tt" => "config/vagrant.provision",
|
35
|
+
"config/vagrant.settings.yml.tt" => "config/vagrant.settings.yml",
|
36
|
+
}
|
37
|
+
|
38
|
+
base_templates.each do |src, dst|
|
39
|
+
thor.template("vagrant/#{src}", base.join(dst), opts)
|
40
|
+
end
|
41
|
+
|
30
42
|
templates = {
|
31
43
|
"gitignore.tt" => ".gitignore",
|
32
44
|
".rspec.tt" => ".rspec",
|
@@ -50,20 +62,16 @@ module Xnlogic
|
|
50
62
|
|
51
63
|
"spec/spec_helper.rb.tt" => "spec/spec_helper.rb",
|
52
64
|
"spec/gemname/gemname_spec.rb.tt" => "spec/#{namespaced_path}/#{name}_spec.rb",
|
53
|
-
|
54
|
-
"Vagrantfile.tt" => "Vagrantfile",
|
55
|
-
"config/vagrant.provision.tt" => "config/vagrant.provision",
|
56
|
-
"config/vagrant.settings.yml.tt" => "config/vagrant.settings.yml",
|
57
65
|
}
|
58
66
|
|
59
67
|
templates.each do |src, dst|
|
60
|
-
thor.template("application/#{src}",
|
68
|
+
thor.template("application/#{src}", app.join(dst), opts)
|
61
69
|
end
|
62
70
|
|
63
71
|
Xnlogic.ui.info "Creating Vagrant config."
|
64
72
|
Xnlogic.ui.info ""
|
65
|
-
Xnlogic.ui.info "Initializing git repo in #{
|
66
|
-
Dir.chdir(
|
73
|
+
Xnlogic.ui.info "Initializing git repo in #{app}"
|
74
|
+
Dir.chdir(app) { `git init`; `git add .` }
|
67
75
|
|
68
76
|
Xnlogic.ui.info ""
|
69
77
|
Xnlogic.ui.info "Please ensure that the following dependencies are installed on your computer"
|
@@ -73,7 +81,7 @@ module Xnlogic
|
|
73
81
|
Xnlogic.ui.info ""
|
74
82
|
Xnlogic.ui.info "Then run the following:"
|
75
83
|
Xnlogic.ui.info ""
|
76
|
-
Xnlogic.ui.info "cd #{
|
84
|
+
Xnlogic.ui.info "cd #{base_name}"
|
77
85
|
Xnlogic.ui.info "vagrant up"
|
78
86
|
Xnlogic.ui.info "vagrant ssh"
|
79
87
|
Xnlogic.ui.info ""
|
data/lib/xnlogic/cli.rb
CHANGED
@@ -28,7 +28,6 @@ module Xnlogic
|
|
28
28
|
stop_on_unknown_option! :exec
|
29
29
|
|
30
30
|
class_option "no-color", :type => :boolean, :banner => "Disable colorization in output"
|
31
|
-
|
32
31
|
class_option "verbose", :type => :boolean, :banner => "Enable verbose output mode", :aliases => "-V"
|
33
32
|
|
34
33
|
def help(cli = nil)
|
@@ -36,13 +35,9 @@ module Xnlogic
|
|
36
35
|
when nil then command = "xnlogic"
|
37
36
|
else command = "xnlogic-#{cli}"
|
38
37
|
end
|
39
|
-
|
40
|
-
manpages = %w(
|
41
|
-
xnlogic)
|
42
|
-
|
38
|
+
manpages = %w(xnlogic)
|
43
39
|
if manpages.include?(command)
|
44
40
|
root = File.expand_path("../man", __FILE__)
|
45
|
-
|
46
41
|
if Xnlogic.which("man") && root !~ %r{^file:/.+!/META-INF/jruby.home/.+}
|
47
42
|
Kernel.exec "man #{root}/#{command}"
|
48
43
|
else
|
@@ -55,11 +50,12 @@ module Xnlogic
|
|
55
50
|
|
56
51
|
def self.handle_no_command_error(command, has_namespace = $thor_runner)
|
57
52
|
return super unless command_path = Xnlogic.which("xnlogic-#{command}")
|
58
|
-
|
59
53
|
Kernel.exec(command_path, *ARGV[1..-1])
|
60
54
|
end
|
61
55
|
|
62
|
-
desc "application NAME [OPTIONS]", "Creates a skeleton
|
56
|
+
desc "application NAME [OPTIONS]", "Creates a skeleton of an XN Logic application"
|
57
|
+
option "base", type: :string, default: 'xnlogic', banner:
|
58
|
+
"The project is structured ./base_directory/application_directory. Name the base_directory"
|
63
59
|
def application(name)
|
64
60
|
require 'xnlogic/cli/application'
|
65
61
|
Application.new(options, name, self).run
|
@@ -13,8 +13,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
|
13
13
|
vagrant_dir = File.expand_path(File.dirname(__FILE__))
|
14
14
|
|
15
15
|
# Every Vagrant virtual environment requires a box to build off of.
|
16
|
-
|
17
|
-
config.vm.box = "ubuntu/trusty64"
|
16
|
+
config.vm.box = "box-cutter/ubuntu1404"
|
18
17
|
|
19
18
|
# Create a forwarded port mapping which allows access to a specific port
|
20
19
|
# within the machine from a port on the host machine. In the example below,
|
@@ -54,17 +53,24 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
|
54
53
|
config.vbguest.no_remote = true
|
55
54
|
end
|
56
55
|
|
56
|
+
# Include config from config/settings.yml
|
57
|
+
require 'yaml'
|
58
|
+
settings = YAML::load_file(vagrant_dir + "/config/vagrant.settings.yml")
|
59
|
+
|
57
60
|
config.vm.provider "virtualbox" do |vb|
|
58
|
-
#
|
61
|
+
# boot with headless mode
|
59
62
|
vb.gui = false
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
+
vb.customize ["modifyvm", :id, "--memory", settings['vm_memory']]
|
64
|
+
vb.customize ["modifyvm", :id, "--cpus", settings['vm_cpus']]
|
65
|
+
end
|
66
|
+
|
67
|
+
config.vm.provider "vmware_fusion" do |vmwf|
|
68
|
+
# boot with headless mode
|
69
|
+
vmwf.gui = false
|
70
|
+
vmwf.vmx["memsize"] = settings['vm_memory']
|
71
|
+
vmwf.vmx["numvcpus"] = settings['vm_cpus']
|
63
72
|
end
|
64
73
|
|
65
|
-
# Include config from config/vagrant.settings.yml
|
66
|
-
require 'yaml'
|
67
|
-
settings = YAML::load_file(vagrant_dir + "/config/vagrant.settings.yml")
|
68
74
|
p1 = settings['jruby_version']
|
69
75
|
p2 = settings['timezone']
|
70
76
|
p3 = settings['XN_CLIENT']
|
@@ -0,0 +1,133 @@
|
|
1
|
+
#! /bin/bash
|
2
|
+
|
3
|
+
echo "Configuring XN VM. This process will take several minutes."
|
4
|
+
|
5
|
+
if [ -z "$1" ]; then echo "jruby_version not set" && exit 1; else echo "jruby_version is set to $1"; fi
|
6
|
+
if [ -z "$2" ]; then echo "timezone not set" && exit 1; fi
|
7
|
+
if [ -z "$3" ]; then echo "XN_CLIENT not set" && exit 1; else echo "XN_CLIENT is set to $3"; fi
|
8
|
+
if [ -z "$4" ]; then echo "DATOMIC_VERSION not set" && exit 1; fi
|
9
|
+
|
10
|
+
# variables
|
11
|
+
debug=
|
12
|
+
jruby_version=$1
|
13
|
+
timezone=$2
|
14
|
+
|
15
|
+
silent() {
|
16
|
+
if [[ $debug ]] ; then
|
17
|
+
"$@"
|
18
|
+
else
|
19
|
+
"$@" &>/dev/null
|
20
|
+
fi
|
21
|
+
}
|
22
|
+
hr() {
|
23
|
+
printf "%$(tput cols)s\n"|tr " " "-"
|
24
|
+
}
|
25
|
+
|
26
|
+
hr
|
27
|
+
echo "Configuring environment"
|
28
|
+
hr
|
29
|
+
export XN_CLIENT=$3
|
30
|
+
export DATOMIC_VERSION=$4
|
31
|
+
export DEBIAN_FRONTEND=noninteractive
|
32
|
+
export LANG=en_US.UTF-8
|
33
|
+
export LC_ALL=en_US.UTF-8
|
34
|
+
sudo locale-gen en_US.UTF-8
|
35
|
+
#sudo dpkg-reconfigure locales
|
36
|
+
|
37
|
+
hr
|
38
|
+
echo "Setting timezone:"
|
39
|
+
echo "$timezone" | sudo tee /etc/timezone
|
40
|
+
silent sudo dpkg-reconfigure --frontend noninteractive tzdata
|
41
|
+
|
42
|
+
hr
|
43
|
+
echo "Installing base packages"
|
44
|
+
silent sudo apt-get update
|
45
|
+
silent sudo apt-get install -y --force-yes software-properties-common python-software-properties
|
46
|
+
silent sudo apt-get install -y git curl wget vim maven node nodejs npm unzip zsh htop
|
47
|
+
|
48
|
+
hr
|
49
|
+
echo "Configuring shell"
|
50
|
+
silent git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh || true
|
51
|
+
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
|
52
|
+
sudo chsh -s /usr/bin/zsh vagrant
|
53
|
+
|
54
|
+
hr
|
55
|
+
echo "Installing RVM"
|
56
|
+
echo progress-bar > ~/.curlrc
|
57
|
+
echo gem: --no-document > ~/.gemrc
|
58
|
+
silent gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
|
59
|
+
curl -sSL https://get.rvm.io | silent bash -s stable --auto-dotfiles
|
60
|
+
source $HOME/.rvm/scripts/rvm
|
61
|
+
|
62
|
+
hr
|
63
|
+
echo "Installing jRuby"
|
64
|
+
silent rvm mount -r https://s3.amazonaws.com/jruby.org/downloads/${jruby_version}/jruby-bin-${jruby_version}.tar.gz --verify-downloads 1
|
65
|
+
rvm use jruby-${jruby_version} --default
|
66
|
+
gem source -a https://rubygems.org
|
67
|
+
gem source -r http://rubygems.org/
|
68
|
+
|
69
|
+
hr
|
70
|
+
echo "Installing Java"
|
71
|
+
silent sudo add-apt-repository ppa:webupd8team/java
|
72
|
+
silent sudo apt-get update
|
73
|
+
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
|
74
|
+
silent sudo apt-get install -yq oracle-java7-installer
|
75
|
+
silent sudo apt-get install -yq oracle-java7-set-default
|
76
|
+
sudo update-java-alternatives -s java-7-oracle
|
77
|
+
|
78
|
+
hr
|
79
|
+
echo "Updating PATH"
|
80
|
+
echo 'export PATH="$HOME/bin:~/xn.dev/cli-utils/bin:$PATH"' >> ~/.zshrc
|
81
|
+
export PATH="$HOME/bin:~/xn.dev/cli-utils/bin:$PATH"
|
82
|
+
|
83
|
+
hr
|
84
|
+
echo "Installing Lein"
|
85
|
+
cd $HOME
|
86
|
+
mkdir -p bin
|
87
|
+
cd bin
|
88
|
+
silent wget https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein
|
89
|
+
chmod a+x $HOME/bin/lein
|
90
|
+
|
91
|
+
hr
|
92
|
+
echo "Installing Node deps"
|
93
|
+
hr
|
94
|
+
sudo npm install --loglevel silent -g jshint coffee-script jasmine-node issues
|
95
|
+
|
96
|
+
hr
|
97
|
+
echo "Installing Torquebox"
|
98
|
+
hr
|
99
|
+
gem install --quiet torquebox-server -v '3.1.1'
|
100
|
+
|
101
|
+
hr
|
102
|
+
echo "Installing XN gems"
|
103
|
+
hr
|
104
|
+
wget https://www.dropbox.com/s/7ujc7jp508uxews/pacer-mcfly-0.7.2.pre-java.gem\?dl\=1 -O pacer-mcfly-0.7.2.pre-java.gem --quiet
|
105
|
+
wget https://www.dropbox.com/s/jdo5yel0ya4cqv3/pacer-model-0.6.3.pre-java.gem?dl=1 -O pacer-model-0.6.3.pre-java.gem --quiet
|
106
|
+
gem install --quiet xnlogic pacer-mcfly-0.7.2.pre-java.gem pacer-model-0.6.3.pre-java.gem
|
107
|
+
rm pacer-mcfly-0.7.2.pre-java.gem pacer-model-0.6.3.pre-java.gem
|
108
|
+
|
109
|
+
hr
|
110
|
+
echo "Configuring XN"
|
111
|
+
mkdir -p /opt/xn_apps
|
112
|
+
cd
|
113
|
+
wget https://www.dropbox.com/s/1j4hyrzlfgra9gp/xn.dev.1.tbz -O $HOME/xn.dev.1.tbz --quiet
|
114
|
+
tar -xjf xn.dev.1.tbz
|
115
|
+
cd xn.dev
|
116
|
+
source script/setup_stack
|
117
|
+
cd fe/xn.js
|
118
|
+
npm install --loglevel silent
|
119
|
+
rake --quiet new_tb_version bundle_fe_server fresh_fe_config fe_server_db_init
|
120
|
+
|
121
|
+
hr
|
122
|
+
echo "Starting Datomic"
|
123
|
+
sudo cp $HOME/xn.dev/config/etc_init_datomic.conf /etc/init/datomic.conf
|
124
|
+
sudo initctl reload-configuration
|
125
|
+
sudo start datomic
|
126
|
+
|
127
|
+
hr
|
128
|
+
echo "Configuring <%= config[:name] %>"
|
129
|
+
cd /vagrant/<%= config[:name] %>
|
130
|
+
bundle
|
131
|
+
torquebox deploy
|
132
|
+
hr
|
133
|
+
echo "Done!"
|
data/lib/xnlogic/version.rb
CHANGED
metadata
CHANGED
@@ -1,71 +1,85 @@
|
|
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.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Darrick Wiebe
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
date: 2014-11-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
15
|
-
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
|
-
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
21
23
|
requirements:
|
22
|
-
- -
|
24
|
+
- - ">="
|
23
25
|
- !ruby/object:Gem::Version
|
24
26
|
version: '0'
|
25
|
-
prerelease: false
|
26
|
-
type: :runtime
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
|
-
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '1.7'
|
34
|
-
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
35
37
|
requirements:
|
36
|
-
- - ~>
|
38
|
+
- - "~>"
|
37
39
|
- !ruby/object:Gem::Version
|
38
40
|
version: '1.7'
|
39
|
-
prerelease: false
|
40
|
-
type: :development
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '10.0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
43
50
|
version_requirements: !ruby/object:Gem::Requirement
|
44
51
|
requirements:
|
45
|
-
- - ~>
|
52
|
+
- - "~>"
|
46
53
|
- !ruby/object:Gem::Version
|
47
54
|
version: '10.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: ronn
|
48
57
|
requirement: !ruby/object:Gem::Requirement
|
49
58
|
requirements:
|
50
|
-
- - ~>
|
59
|
+
- - "~>"
|
51
60
|
- !ruby/object:Gem::Version
|
52
|
-
version:
|
53
|
-
prerelease: false
|
61
|
+
version: 0.7.3
|
54
62
|
type: :development
|
55
|
-
|
56
|
-
name: xn_gem_release_tasks
|
63
|
+
prerelease: false
|
57
64
|
version_requirements: !ruby/object:Gem::Requirement
|
58
65
|
requirements:
|
59
|
-
- -
|
66
|
+
- - "~>"
|
60
67
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.
|
68
|
+
version: 0.7.3
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: xn_gem_release_tasks
|
62
71
|
requirement: !ruby/object:Gem::Requirement
|
63
72
|
requirements:
|
64
|
-
- -
|
73
|
+
- - ">="
|
65
74
|
- !ruby/object:Gem::Version
|
66
75
|
version: 0.1.8
|
67
|
-
prerelease: false
|
68
76
|
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 0.1.8
|
69
83
|
description: Build graph applications with XN Logic.
|
70
84
|
email:
|
71
85
|
- dw@xnlogic.com
|
@@ -74,7 +88,7 @@ executables:
|
|
74
88
|
extensions: []
|
75
89
|
extra_rdoc_files: []
|
76
90
|
files:
|
77
|
-
- .gitignore
|
91
|
+
- ".gitignore"
|
78
92
|
- Gemfile
|
79
93
|
- README.md
|
80
94
|
- Rakefile
|
@@ -83,13 +97,12 @@ files:
|
|
83
97
|
- lib/xnlogic/cli.rb
|
84
98
|
- lib/xnlogic/cli/application.rb
|
85
99
|
- lib/xnlogic/friendly_errors.rb
|
100
|
+
- lib/xnlogic/man/xnlogic
|
101
|
+
- lib/xnlogic/man/xnlogic.txt
|
86
102
|
- lib/xnlogic/templates/application/.rspec.tt
|
87
103
|
- lib/xnlogic/templates/application/Gemfile.tt
|
88
104
|
- lib/xnlogic/templates/application/Readme.md.tt
|
89
|
-
- lib/xnlogic/templates/application/Vagrantfile.tt
|
90
105
|
- lib/xnlogic/templates/application/config.ru.tt
|
91
|
-
- lib/xnlogic/templates/application/config/vagrant.provision.tt
|
92
|
-
- lib/xnlogic/templates/application/config/vagrant.settings.yml.tt
|
93
106
|
- lib/xnlogic/templates/application/console.rb.tt
|
94
107
|
- lib/xnlogic/templates/application/gitignore.tt
|
95
108
|
- lib/xnlogic/templates/application/lib/fixtures/sample_fixtures.rb.tt
|
@@ -107,35 +120,36 @@ files:
|
|
107
120
|
- lib/xnlogic/templates/application/spec/spec_helper.rb.tt
|
108
121
|
- lib/xnlogic/templates/application/torquebox.yml.tt
|
109
122
|
- lib/xnlogic/templates/application/torquebox_init.rb.tt
|
123
|
+
- lib/xnlogic/templates/vagrant/Vagrantfile.tt
|
124
|
+
- lib/xnlogic/templates/vagrant/config/vagrant.provision.tt
|
125
|
+
- lib/xnlogic/templates/vagrant/config/vagrant.settings.yml.tt
|
110
126
|
- lib/xnlogic/ui.rb
|
111
127
|
- lib/xnlogic/ui/shell.rb
|
112
128
|
- lib/xnlogic/ui/silent.rb
|
113
129
|
- lib/xnlogic/version.rb
|
114
130
|
- man/xnlogic.ronn
|
115
131
|
- xnlogic.gemspec
|
116
|
-
- lib/xnlogic/man/xnlogic
|
117
|
-
- lib/xnlogic/man/xnlogic.txt
|
118
132
|
homepage: https://xnlogic.com
|
119
133
|
licenses: []
|
120
134
|
metadata: {}
|
121
|
-
post_install_message:
|
135
|
+
post_install_message:
|
122
136
|
rdoc_options: []
|
123
137
|
require_paths:
|
124
138
|
- lib
|
125
139
|
required_ruby_version: !ruby/object:Gem::Requirement
|
126
140
|
requirements:
|
127
|
-
- -
|
141
|
+
- - ">="
|
128
142
|
- !ruby/object:Gem::Version
|
129
143
|
version: '0'
|
130
144
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
131
145
|
requirements:
|
132
|
-
- -
|
146
|
+
- - ">="
|
133
147
|
- !ruby/object:Gem::Version
|
134
148
|
version: '0'
|
135
149
|
requirements: []
|
136
|
-
rubyforge_project:
|
137
|
-
rubygems_version: 2.
|
138
|
-
signing_key:
|
150
|
+
rubyforge_project:
|
151
|
+
rubygems_version: 2.2.2
|
152
|
+
signing_key:
|
139
153
|
specification_version: 4
|
140
154
|
summary: XN Logic command-line tools
|
141
155
|
test_files: []
|
@@ -1,106 +0,0 @@
|
|
1
|
-
#! /bin/bash
|
2
|
-
|
3
|
-
if [ -z "$1" ]; then echo "jruby_version not set" && exit 1; else echo "jruby_version is set to $1"; fi
|
4
|
-
if [ -z "$2" ]; then echo "timezone not set" && exit 1; else echo "timezone is set to $2"; fi
|
5
|
-
if [ -z "$3" ]; then echo "XN_CLIENT not set" && exit 1; else echo "XN_CLIENT is set to $3"; fi
|
6
|
-
if [ -z "$4" ]; then echo "DATOMIC_VERSION not set" && exit 1; else echo "DATOMIC_VERSION is set to $4"; fi
|
7
|
-
|
8
|
-
# variables
|
9
|
-
jruby_version=$1
|
10
|
-
timezone=$2
|
11
|
-
|
12
|
-
echo "Configuring environment"
|
13
|
-
echo "________________________________________________________________________"
|
14
|
-
export XN_CLIENT=$3
|
15
|
-
export DATOMIC_VERSION=$4
|
16
|
-
export DEBIAN_FRONTEND=noninteractive
|
17
|
-
export LANG=en_US.UTF-8
|
18
|
-
export LC_ALL=en_US.UTF-8
|
19
|
-
sudo locale-gen en_US.UTF-8
|
20
|
-
sudo dpkg-reconfigure locales
|
21
|
-
|
22
|
-
echo "Setting timezone to $timezone"
|
23
|
-
echo "________________________________________________________________________"
|
24
|
-
echo "$timezone" | sudo tee /etc/timezone
|
25
|
-
sudo dpkg-reconfigure --frontend noninteractive tzdata &> /dev/null
|
26
|
-
|
27
|
-
echo "Installing base packages"
|
28
|
-
echo "________________________________________________________________________"
|
29
|
-
sudo apt-get update &> /dev/null
|
30
|
-
sudo apt-get install -y --force-yes software-properties-common python-software-properties &> /dev/null
|
31
|
-
sudo apt-get install -y git curl wget vim maven node nodejs npm unzip zsh htop &> /dev/null
|
32
|
-
|
33
|
-
echo "Configuring shell"
|
34
|
-
echo "________________________________________________________________________"
|
35
|
-
git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh &> /dev/null
|
36
|
-
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
|
37
|
-
sudo chsh -s /usr/bin/zsh vagrant
|
38
|
-
|
39
|
-
echo "Installing RVM"
|
40
|
-
echo "________________________________________________________________________"
|
41
|
-
echo progress-bar > ~/.curlrc
|
42
|
-
echo gem: --no-document > ~/.gemrc
|
43
|
-
gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3 &> /dev/null
|
44
|
-
curl -sSL https://get.rvm.io | bash -s stable --auto-dotfiles &> /dev/null
|
45
|
-
source $HOME/.rvm/scripts/rvm
|
46
|
-
|
47
|
-
echo "Installing jRuby"
|
48
|
-
echo "________________________________________________________________________"
|
49
|
-
rvm mount -r https://s3.amazonaws.com/jruby.org/downloads/${jruby_version}/jruby-bin-${jruby_version}.tar.gz --verify-downloads 1 &> /dev/null
|
50
|
-
rvm use jruby-${jruby_version} --default
|
51
|
-
gem source -a https://rubygems.org
|
52
|
-
gem source -r http://rubygems.org/
|
53
|
-
|
54
|
-
echo "Installing Java"
|
55
|
-
echo "________________________________________________________________________"
|
56
|
-
sudo add-apt-repository ppa:webupd8team/java &> /dev/null
|
57
|
-
sudo apt-get update &> /dev/null
|
58
|
-
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
|
59
|
-
sudo apt-get install -yq oracle-java7-installer &> /dev/null
|
60
|
-
sudo apt-get install -yq oracle-java7-set-default &> /dev/null
|
61
|
-
sudo update-java-alternatives -s java-7-oracle
|
62
|
-
|
63
|
-
echo "Updating PATH"
|
64
|
-
echo "________________________________________________________________________"
|
65
|
-
echo 'export PATH="$HOME/bin:~/xn.dev/cli-utils/bin:$PATH"' >> ~/.zshrc
|
66
|
-
export PATH="$HOME/bin:~/xn.dev/cli-utils/bin:$PATH"
|
67
|
-
|
68
|
-
echo "Installing Lein"
|
69
|
-
echo "________________________________________________________________________"
|
70
|
-
cd $HOME
|
71
|
-
mkdir -p bin
|
72
|
-
cd bin
|
73
|
-
wget https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein &> /dev/null
|
74
|
-
chmod a+x $HOME/bin/lein
|
75
|
-
|
76
|
-
echo "Installing Node deps"
|
77
|
-
echo "________________________________________________________________________"
|
78
|
-
sudo npm install -g jshint coffee-script jasmine-node issues &> /dev/null
|
79
|
-
|
80
|
-
echo "Installing Torquebox"
|
81
|
-
echo "________________________________________________________________________"
|
82
|
-
gem install torquebox-server -v '3.1.1'
|
83
|
-
|
84
|
-
echo "Installing gems"
|
85
|
-
echo "________________________________________________________________________"
|
86
|
-
wget https://www.dropbox.com/s/7ujc7jp508uxews/pacer-mcfly-0.7.2.pre-java.gem\?dl\=1 -O pacer-mcfly-0.7.2.pre-java.gem --quiet
|
87
|
-
wget https://www.dropbox.com/s/jdo5yel0ya4cqv3/pacer-model-0.6.3.pre-java.gem?dl=1 -O pacer-model-0.6.3.pre-java.gem --quiet
|
88
|
-
gem install xnlogic pacer-mcfly-0.7.2.pre-java.gem pacer-model-0.6.3.pre-java.gem
|
89
|
-
rm pacer-mcfly-0.7.2.pre-java.gem pacer-model-0.6.3.pre-java.gem
|
90
|
-
|
91
|
-
echo "Configuring xn"
|
92
|
-
echo "________________________________________________________________________"
|
93
|
-
mkdir -p /opt/xn_apps
|
94
|
-
cd
|
95
|
-
wget https://www.dropbox.com/s/1j4hyrzlfgra9gp/xn.dev.1.tbz -O $HOME/xn.dev.1.tbz --quiet
|
96
|
-
tar -xjf xn.dev.1.tbz
|
97
|
-
cd xn.dev
|
98
|
-
source script/setup_stack
|
99
|
-
(cd fe/xn.js && npm install) &> /dev/null
|
100
|
-
rake new_tb_version bundle_fe_server fresh_fe_config fe_server_db_init
|
101
|
-
|
102
|
-
echo "Starting Datomic"
|
103
|
-
echo "________________________________________________________________________"
|
104
|
-
sudo cp $HOME/xn.dev/config/etc_init_datomic.conf /etc/init/datomic.conf
|
105
|
-
sudo initctl reload-configuration
|
106
|
-
sudo start datomic
|