theme-juice 0.27.2 → 0.28.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/theme-juice.rb +2 -0
- data/lib/theme-juice/cli.rb +22 -18
- data/lib/theme-juice/commands/create.rb +10 -9
- data/lib/theme-juice/commands/update.rb +16 -0
- data/lib/theme-juice/env.rb +5 -0
- data/lib/theme-juice/man/tj +8 -0
- data/lib/theme-juice/man/tj-create +5 -1
- data/lib/theme-juice/man/tj-create.txt +6 -2
- data/lib/theme-juice/man/tj.txt +5 -0
- data/lib/theme-juice/project.rb +1 -0
- data/lib/theme-juice/tasks/template.rb +7 -2
- data/lib/theme-juice/tasks/vm_box.rb +7 -2
- data/lib/theme-juice/tasks/vm_update_box.rb +39 -0
- data/lib/theme-juice/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9a776df3c544a31881c70f1bdd63fdc32ff50423
|
4
|
+
data.tar.gz: c3b26a31fdfde2b1ce69a6ff44d4abb0f2fe5766
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a2c2fcde5aec836834b7fbe77faf5bc71187d14b24891f93506c77a9b8aba46eee3e645b95dba08acfafe6f11dd569122b6e31c47ee2609000a559bab1423c57
|
7
|
+
data.tar.gz: bff98273a3d544cc258a500908857ba01d0cc54e112ccc1e1c41193dd9bf9633274912cf03b5e9625fe4ca0116a226948421ff72d9eaeb7485379dd390483fbf
|
data/lib/theme-juice.rb
CHANGED
@@ -53,9 +53,11 @@ require "theme-juice/tasks/vm_stage"
|
|
53
53
|
require "theme-juice/tasks/settings"
|
54
54
|
require "theme-juice/tasks/load"
|
55
55
|
require "theme-juice/tasks/invoke"
|
56
|
+
require "theme-juice/tasks/vm_update_box"
|
56
57
|
require "theme-juice/command"
|
57
58
|
require "theme-juice/commands/init"
|
58
59
|
require "theme-juice/commands/create"
|
59
60
|
require "theme-juice/commands/delete"
|
60
61
|
require "theme-juice/commands/deploy"
|
62
|
+
require "theme-juice/commands/update"
|
61
63
|
require "theme-juice/cli"
|
data/lib/theme-juice/cli.rb
CHANGED
@@ -17,6 +17,7 @@ module ThemeJuice
|
|
17
17
|
@create = Commands::Create
|
18
18
|
@delete = Commands::Delete
|
19
19
|
@deploy = Commands::Deploy
|
20
|
+
@update = Commands::Update
|
20
21
|
|
21
22
|
init_env
|
22
23
|
end
|
@@ -27,6 +28,7 @@ module ThemeJuice
|
|
27
28
|
@env.vm_path = options[:vm_path]
|
28
29
|
@env.vm_ip = options[:vm_ip]
|
29
30
|
@env.vm_prefix = options[:vm_prefix]
|
31
|
+
@env.vm_revision = options[:vm_revision]
|
30
32
|
@env.from_path = options[:from_path]
|
31
33
|
@env.from_srv = options[:from_srv]
|
32
34
|
@env.inside_vm = options[:inside_vm]
|
@@ -62,6 +64,7 @@ module ThemeJuice
|
|
62
64
|
class_option :vm_path, :type => :string, :default => nil, :desc => ""
|
63
65
|
class_option :vm_ip, :type => :string, :default => nil, :desc => ""
|
64
66
|
class_option :vm_prefix, :type => :string, :default => nil, :desc => ""
|
67
|
+
class_option :vm_revision, :type => :string, :default => nil, :desc => ""
|
65
68
|
class_option :from_path, :type => :string, :aliases => "--in-path", :default => nil, :desc => ""
|
66
69
|
class_option :from_srv, :type => :string, :aliases => "--in-srv", :default => nil, :desc => ""
|
67
70
|
class_option :inside_vm, :type => :boolean, :aliases => "--in-vm", :desc => ""
|
@@ -131,23 +134,24 @@ module ThemeJuice
|
|
131
134
|
end
|
132
135
|
|
133
136
|
desc "create", "Create new project"
|
134
|
-
method_option :name,
|
135
|
-
method_option :location,
|
136
|
-
method_option :template,
|
137
|
-
method_option :
|
138
|
-
method_option :
|
139
|
-
method_option :
|
140
|
-
method_option :
|
141
|
-
method_option :
|
142
|
-
method_option :
|
143
|
-
method_option :
|
144
|
-
method_option :
|
145
|
-
method_option :
|
146
|
-
method_option :
|
147
|
-
method_option :
|
148
|
-
method_option :
|
149
|
-
method_option :
|
150
|
-
method_option :
|
137
|
+
method_option :name, :type => :string, :aliases => "-n", :default => nil, :desc => ""
|
138
|
+
method_option :location, :type => :string, :aliases => "-l", :default => nil, :desc => ""
|
139
|
+
method_option :template, :type => :string, :aliases => "-t", :default => nil, :desc => ""
|
140
|
+
method_option :template_revision, :type => :string, :aliases => %w[--template-branch], :default => nil, :desc => ""
|
141
|
+
method_option :url, :type => :string, :aliases => "-u", :default => nil, :desc => ""
|
142
|
+
method_option :repository, :type => :string, :aliases => "-r", :desc => ""
|
143
|
+
method_option :db_import, :type => :string, :aliases => %w[-i --import-db], :desc => ""
|
144
|
+
method_option :bare, :type => :boolean, :aliases => %w[--no-template], :desc => ""
|
145
|
+
method_option :skip_repo, :type => :boolean, :desc => ""
|
146
|
+
method_option :skip_db, :type => :boolean, :desc => ""
|
147
|
+
method_option :use_defaults, :type => :boolean, :desc => ""
|
148
|
+
method_option :no_wp, :type => :boolean, :desc => ""
|
149
|
+
method_option :no_wp_cli, :type => :boolean, :aliases => %w[--no-wp-cli-config], :desc => ""
|
150
|
+
method_option :no_db, :type => :boolean, :desc => ""
|
151
|
+
method_option :no_env, :type => :boolean, :desc => ""
|
152
|
+
method_option :no_config, :type => :boolean, :aliases => %w[--no-juicefile], :desc => ""
|
153
|
+
method_option :wp_config_modify, :type => :boolean, :aliases => %w[--modify-wp-config], :desc => ""
|
154
|
+
method_option :no_ssl, :type => :boolean, :aliases => %w[--no-https], :desc => ""
|
151
155
|
def create
|
152
156
|
@io.hello
|
153
157
|
@create.new(options).execute
|
@@ -197,7 +201,7 @@ module ThemeJuice
|
|
197
201
|
|
198
202
|
desc "update", "Update tj and its dependencies"
|
199
203
|
def update(*args)
|
200
|
-
@
|
204
|
+
@update.new(options).execute
|
201
205
|
end
|
202
206
|
|
203
207
|
desc "vm [ARGS]", "Manage development environment"
|
@@ -71,15 +71,16 @@ module ThemeJuice
|
|
71
71
|
@io.notice "Project location is not empty. Assuming you meant to run a setup..."
|
72
72
|
end
|
73
73
|
|
74
|
-
@project.url
|
75
|
-
@project.xip_url
|
76
|
-
@project.template
|
77
|
-
@project.
|
78
|
-
@project.
|
79
|
-
@project.
|
80
|
-
@project.
|
81
|
-
@project.
|
82
|
-
@project.
|
74
|
+
@project.url = @opts.fetch("url") { url }
|
75
|
+
@project.xip_url = @opts.fetch("xip_url") { xip_url }
|
76
|
+
@project.template = @opts.fetch("template") { template }
|
77
|
+
@project.template_revision = @opts.fetch("template_revision") { nil }
|
78
|
+
@project.repository = @opts.fetch("repository") { repository }
|
79
|
+
@project.db_host = @opts.fetch("db_host") { db_host }
|
80
|
+
@project.db_name = @opts.fetch("db_name") { db_name }
|
81
|
+
@project.db_user = @opts.fetch("db_user") { db_user }
|
82
|
+
@project.db_pass = @opts.fetch("db_pass") { db_pass }
|
83
|
+
@project.db_import = @opts.fetch("db_import") { db_import }
|
83
84
|
@project.vm_root
|
84
85
|
@project.vm_location
|
85
86
|
@project.vm_srv
|
data/lib/theme-juice/env.rb
CHANGED
@@ -8,6 +8,7 @@ module ThemeJuice
|
|
8
8
|
attr_accessor :vm_path
|
9
9
|
attr_accessor :vm_ip
|
10
10
|
attr_accessor :vm_prefix
|
11
|
+
attr_accessor :vm_revision
|
11
12
|
attr_accessor :from_path
|
12
13
|
attr_accessor :from_srv
|
13
14
|
attr_accessor :inside_vm
|
@@ -45,6 +46,10 @@ module ThemeJuice
|
|
45
46
|
@vm_prefix = val || ENV.fetch("TJ_VM_PREFIX") { "tj-" }
|
46
47
|
end
|
47
48
|
|
49
|
+
def vm_revision=(val)
|
50
|
+
@vm_revision = val || ENV.fetch("TJ_VM_REVISION") { nil }
|
51
|
+
end
|
52
|
+
|
48
53
|
def from_path=(val)
|
49
54
|
@from_path = val || ENV.fetch("TJ_FROM_PATH") { nil }
|
50
55
|
end
|
data/lib/theme-juice/man/tj
CHANGED
@@ -28,6 +28,10 @@ Force IP address of VM*
|
|
28
28
|
Force directory prefix for project in VM*
|
29
29
|
.
|
30
30
|
.TP
|
31
|
+
\fB\-\-vm\-revision\fR
|
32
|
+
Revision hash or branch to checkout for VM (default is master)
|
33
|
+
.
|
34
|
+
.TP
|
31
35
|
\fB\-\-from\-path\fR, \fB\-\-in\-path\fR=\fIpath\fR
|
32
36
|
Run Juicefile(5) commands from the passed path instead of from the current directory\.
|
33
37
|
.
|
@@ -120,6 +124,10 @@ Delete a project
|
|
120
124
|
deploy(1), \fBserver\fR, \fBremote\fR
|
121
125
|
Deploy and manage a project
|
122
126
|
.
|
127
|
+
.TP
|
128
|
+
\fBupdate\fR
|
129
|
+
Update virtual machine and dependencies
|
130
|
+
.
|
123
131
|
.SH "SECONDARY COMMANDS"
|
124
132
|
.
|
125
133
|
.TP
|
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "TJ\-CREATE" "1" "
|
4
|
+
.TH "TJ\-CREATE" "1" "August 2016" "" "Theme Juice Manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBtj\-create\fR \- Create a new project
|
@@ -59,6 +59,10 @@ Location of the local project
|
|
59
59
|
Starter template to install
|
60
60
|
.
|
61
61
|
.TP
|
62
|
+
\fB\-\-template\-revision\fR, \fB\-\-template\-branch\fR
|
63
|
+
Revision hash or branch to checkout for starter template (default is master)
|
64
|
+
.
|
65
|
+
.TP
|
62
66
|
\fB\-u\fR, \fB\-\-url\fR=\fIurl\fR
|
63
67
|
Development URL for the project
|
64
68
|
.
|
@@ -49,6 +49,10 @@ GLOBAL OPTIONS
|
|
49
49
|
-t, --template=repository
|
50
50
|
Starter template to install
|
51
51
|
|
52
|
+
--template-revision, --template-branch
|
53
|
+
Revision hash or branch to checkout for starter template
|
54
|
+
(default is master)
|
55
|
+
|
52
56
|
-u, --url=url
|
53
57
|
Development URL for the project
|
54
58
|
|
@@ -86,7 +90,7 @@ GLOBAL OPTIONS
|
|
86
90
|
Project does not have a Juicefile(5) config
|
87
91
|
|
88
92
|
--modify-wp-config, --wp-config-modify
|
89
|
-
Modify
|
93
|
+
Modify wp-config.php file contents with project configuration
|
90
94
|
(this flag automatically disables the .env file when used)
|
91
95
|
|
92
96
|
--no-ssl, --no-https
|
@@ -95,4 +99,4 @@ GLOBAL OPTIONS
|
|
95
99
|
|
96
100
|
|
97
101
|
|
98
|
-
|
102
|
+
August 2016 TJ-CREATE(1)
|
data/lib/theme-juice/man/tj.txt
CHANGED
@@ -21,6 +21,9 @@ GLOBAL OPTIONS
|
|
21
21
|
--vm-prefix=string
|
22
22
|
Force directory prefix for project in VM*
|
23
23
|
|
24
|
+
--vm-revision
|
25
|
+
Revision hash or branch to checkout for VM (default is master)
|
26
|
+
|
24
27
|
--from-path, --in-path=path
|
25
28
|
Run Juicefile(5) commands from the passed path instead of from
|
26
29
|
the current directory.
|
@@ -97,6 +100,8 @@ PRIMARY COMMANDS
|
|
97
100
|
deploy(1), server, remote
|
98
101
|
Deploy and manage a project
|
99
102
|
|
103
|
+
update Update virtual machine and dependencies
|
104
|
+
|
100
105
|
SECONDARY COMMANDS
|
101
106
|
version, --version, -v
|
102
107
|
Print the current version
|
data/lib/theme-juice/project.rb
CHANGED
@@ -21,8 +21,13 @@ module ThemeJuice
|
|
21
21
|
def clone_template
|
22
22
|
@io.log "Cloning template"
|
23
23
|
@util.inside @project.location do
|
24
|
-
@util.run
|
25
|
-
:
|
24
|
+
@util.run [], { :verbose => @env.verbose,
|
25
|
+
:capture => @env.quiet } do |cmds|
|
26
|
+
cmds << "git clone #{@project.template} ."
|
27
|
+
if @project.template_revision
|
28
|
+
cmds << "git checkout #{@project.template_revision}"
|
29
|
+
end
|
30
|
+
end
|
26
31
|
end
|
27
32
|
end
|
28
33
|
|
@@ -23,8 +23,13 @@ module ThemeJuice
|
|
23
23
|
|
24
24
|
@io.log "Installing Vagrant box"
|
25
25
|
@util.inside @env.vm_path do
|
26
|
-
@util.run
|
27
|
-
:
|
26
|
+
@util.run [], { :verbose => @env.verbose,
|
27
|
+
:capture => @env.quiet } do |cmds|
|
28
|
+
cmds << "git clone #{@env.vm_box} ."
|
29
|
+
if @env.vm_revision
|
30
|
+
cmds << "git checkout #{@env.vm_revision}"
|
31
|
+
end
|
32
|
+
end
|
28
33
|
end
|
29
34
|
end
|
30
35
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
|
3
|
+
module ThemeJuice
|
4
|
+
module Tasks
|
5
|
+
class VMUpdateBox < Task
|
6
|
+
|
7
|
+
def initialize(opts = {})
|
8
|
+
super
|
9
|
+
end
|
10
|
+
|
11
|
+
def execute
|
12
|
+
update_box
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def box_is_installed?
|
18
|
+
File.exist? "#{@env.vm_path}/Vagrantfile"
|
19
|
+
end
|
20
|
+
|
21
|
+
def update_box
|
22
|
+
return unless box_is_installed?
|
23
|
+
|
24
|
+
@io.log "Updating Vagrant box"
|
25
|
+
@util.inside @env.vm_path do
|
26
|
+
@util.run [], { :verbose => @env.verbose,
|
27
|
+
:capture => @env.quiet } do |cmds|
|
28
|
+
cmds << "git fetch"
|
29
|
+
if @env.vm_revision
|
30
|
+
cmds << "git checkout #{@env.vm_revision}"
|
31
|
+
else
|
32
|
+
cmds << "git checkout master"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
data/lib/theme-juice/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: theme-juice
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.28.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ezekiel Gabrielse
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-08-
|
11
|
+
date: 2016-08-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -154,6 +154,7 @@ files:
|
|
154
154
|
- lib/theme-juice/commands/delete.rb
|
155
155
|
- lib/theme-juice/commands/deploy.rb
|
156
156
|
- lib/theme-juice/commands/init.rb
|
157
|
+
- lib/theme-juice/commands/update.rb
|
157
158
|
- lib/theme-juice/config.rb
|
158
159
|
- lib/theme-juice/env.rb
|
159
160
|
- lib/theme-juice/helpers/hash_helper.rb
|
@@ -210,6 +211,7 @@ files:
|
|
210
211
|
- lib/theme-juice/tasks/vm_provision.rb
|
211
212
|
- lib/theme-juice/tasks/vm_restart.rb
|
212
213
|
- lib/theme-juice/tasks/vm_stage.rb
|
214
|
+
- lib/theme-juice/tasks/vm_update_box.rb
|
213
215
|
- lib/theme-juice/tasks/wp_cli.rb
|
214
216
|
- lib/theme-juice/tasks/wp_config.rb
|
215
217
|
- lib/theme-juice/util.rb
|