theme-juice 0.26.0 → 0.26.1
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 +4 -4
 - data/README.md +10 -9
 - data/lib/theme-juice/commands/create.rb +3 -3
 - data/lib/theme-juice/version.rb +1 -1
 - metadata +2 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 4d22b6358ffdc763ec4a24ccf2fffb175b5fcee8
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 5fb22ce293aa7ae05a9f5f8e4984453ad9030f27
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 71eb6209890c8199b55acd9686c85a31adad3d6de6b3c73e530c15c757079cf1f4f3f54f6686f834c339a0124909d5bff87d703af71e80929c2636d6f56ab6c9
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 2729ac41d805f4477ff7f0451667c60e858614309bbb3577f3dc8623cf45d81f67bca14c934775c0275d0b61dc7f44862779fe314bb130d9af0d7646b2af20d6
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -8,7 +8,7 @@ 
     | 
|
| 
       8 
8 
     | 
    
         
             
            
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
            ## What is it?
         
     | 
| 
       11 
     | 
    
         
            -
            The [Theme Juice CLI](http://themejuice.it), also known as `tj`, helps you create new local WordPress development sites, manage existing sites, and deploy them, all from the command line. It utilizes  
     | 
| 
      
 11 
     | 
    
         
            +
            The [Theme Juice CLI](http://themejuice.it), also known as `tj`, helps you create new local WordPress development sites, manage existing sites, and deploy them, all from the command line. It utilizes our [Graft VM](https://github.com/ezekg/theme-juice-vm) for the virtual machine to spin up new development sites in seconds.
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
            Check out [our getting started guide over at SitePoint](http://www.sitepoint.com/introducing-theme-juice-for-local-wordpress-development/), or [view the documentation site](http://themejuice.it).
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
         @@ -16,7 +16,7 @@ Check out [our getting started guide over at SitePoint](http://www.sitepoint.com 
     | 
|
| 
       16 
16 
     | 
    
         
             
            To get the most out of `tj`, it is recommended that you use our [starter template](https://github.com/ezekg/theme-juice-starter). Why? Keep on reading and we'll tell you. `tj` is built on top of tried and true open source libraries such as [Capistrano](http://capistranorb.com/) for deployment, [Vagrant](https://www.vagrantup.com/) for local development, and even a little bit of [WP-CLI](http://wp-cli.org) for database migration. Some of the main pain points `tj` helps solve are:
         
     | 
| 
       17 
17 
     | 
    
         | 
| 
       18 
18 
     | 
    
         
             
            ### 1. Local development
         
     | 
| 
       19 
     | 
    
         
            -
            Say goodbye to MAMP! With one command, `tj create`, you can have a new local development site up and running in under a minute. It uses  
     | 
| 
      
 19 
     | 
    
         
            +
            Say goodbye to MAMP! With one command, `tj create`, you can have a new local development site up and running in under a minute. It uses Vagrant to create a robust development environment, and lets you create and manage multiple projects within a single virtual machine. It also handles deployments over SSH using Capistrano if you want to move away from FTP (more about that below).
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
            ### 2. Multi-environment projects
         
     | 
| 
       22 
22 
     | 
    
         
             
            Oh, multi-environment development! Usually, you would have to ignore your entire `wp-config.php` file and create one for every single stage. These can get out of sync fast. Even worse, the config file actually gets checked into the project repo and so the credentials fluctuate from `dev` to `staging` to `production`. Not good. Not good at all.
         
     | 
| 
         @@ -109,7 +109,7 @@ Or, you can also check out [themejuice.it](http://themejuice.it) for a pretty we 
     | 
|
| 
       109 
109 
     | 
    
         
             
            ## FAQ
         
     | 
| 
       110 
110 
     | 
    
         | 
| 
       111 
111 
     | 
    
         
             
            1. [Is Windows supported?](#is-windows-supported)
         
     | 
| 
       112 
     | 
    
         
            -
            1. [Can I use  
     | 
| 
      
 112 
     | 
    
         
            +
            1. [Can I use another VM instead of Graft?](#can-i-use-another-vm-instead-of-graft)
         
     | 
| 
       113 
113 
     | 
    
         
             
            1. [So, does that mean I can use any Vagrant box?](#so-does-that-mean-i-can-use-any-vagrant-box)
         
     | 
| 
       114 
114 
     | 
    
         
             
            1. [What is a `Customfile`?](#what-is-a-customfile)
         
     | 
| 
       115 
115 
     | 
    
         
             
            1. [What is a `Juicefile`?](#what-is-a-juicefile)
         
     | 
| 
         @@ -137,8 +137,8 @@ In addition to that, `tj` uses the [OS gem](https://github.com/rdp/os) to sniff 
     | 
|
| 
       137 
137 
     | 
    
         | 
| 
       138 
138 
     | 
    
         
             
            _I don't regularly develop on Windows, so if you encounter any bugs, please let me know through a **well-documented** issue and I'll try my best to get it resolved._
         
     | 
| 
       139 
139 
     | 
    
         | 
| 
       140 
     | 
    
         
            -
            ### Can I use  
     | 
| 
       141 
     | 
    
         
            -
            Definitely. If you want to use `tj` with Nginx and  
     | 
| 
      
 140 
     | 
    
         
            +
            ### Can I use another VM instead of Graft?
         
     | 
| 
      
 141 
     | 
    
         
            +
            Definitely. If you want to use `tj` with Nginx and say, [VVV](https://github.com/Varying-Vagrant-Vagrants/VVV), it's as simple as running `tj` with a few flags:
         
     | 
| 
       142 
142 
     | 
    
         | 
| 
       143 
143 
     | 
    
         
             
            ```bash
         
     | 
| 
       144 
144 
     | 
    
         
             
            tj new --vm-box git@github.com:Varying-Vagrant-Vagrants/VVV.git --nginx
         
     | 
| 
         @@ -149,7 +149,7 @@ To use these permanently, set the appropriate `ENV` variables through your `.bas 
     | 
|
| 
       149 
149 
     | 
    
         
             
            _Note: Before running this, you might want to either choose a new `vm-path`, or destroy any existing VMs inside of your `~/tj-vagrant` directory. If `tj` detects that a VM already installed, it will skip installing the new box._
         
     | 
| 
       150 
150 
     | 
    
         | 
| 
       151 
151 
     | 
    
         
             
            ### So, does that mean I can use any Vagrant box?
         
     | 
| 
       152 
     | 
    
         
            -
            Yes and no; in order for `tj` to properly create a project, the Vagrant box needs to follow the same directory structure as  
     | 
| 
      
 152 
     | 
    
         
            +
            Yes and no; in order for `tj` to properly create a project, the Vagrant box needs to follow the same directory structure as [Graft](https://github.com/ezekg/theme-juice-vm), and include logic for a `Customfile`. Here is the required structure that `tj` needs in order to be able to create new projects:
         
     | 
| 
       153 
153 
     | 
    
         | 
| 
       154 
154 
     | 
    
         
             
            ```
         
     | 
| 
       155 
155 
     | 
    
         
             
            ├── config/
         
     | 
| 
         @@ -179,11 +179,12 @@ Yes and no; in order for `tj` to properly create a project, the Vagrant box need 
     | 
|
| 
       179 
179 
     | 
    
         
             
            |  |  ..
         
     | 
| 
       180 
180 
     | 
    
         
             
            |  ..
         
     | 
| 
       181 
181 
     | 
    
         
             
            ├── Customfile
         
     | 
| 
      
 182 
     | 
    
         
            +
            ├── Vagrantfile
         
     | 
| 
       182 
183 
     | 
    
         
             
            ...
         
     | 
| 
       183 
184 
     | 
    
         
             
            ```
         
     | 
| 
       184 
185 
     | 
    
         | 
| 
       185 
186 
     | 
    
         
             
            ### What is a `Customfile`?
         
     | 
| 
       186 
     | 
    
         
            -
            [It's a file that contains custom rules to add into the main `Vagrantfile`, without actually having to modify it](https://github.com/ 
     | 
| 
      
 187 
     | 
    
         
            +
            [It's a file that contains custom rules to add into the main `Vagrantfile`, without actually having to modify it](https://github.com/ezekg/theme-juice-vm/blob/master/Vagrantfile?ts=2#L96-L98). This allows us to easily modify the Vagrant box without causing merge conflicts if you were to update the VM source via `git pull`. Every file that `tj` modifies is _meant to be modified_, so at any time you may update your installation of Graft with a simple `git pull` without getting merge conflicts out the wazoo.
         
     | 
| 
       187 
188 
     | 
    
         | 
| 
       188 
189 
     | 
    
         
             
            ### What is a `Juicefile`?
         
     | 
| 
       189 
190 
     | 
    
         
             
            A YAML configuration file called `Juicefile` can be used to store commonly-used build scripts, similar to [npm scripts](https://docs.npmjs.com/misc/scripts). Each command block sequence can be mapped to an individual project's build script, allowing a streamlined set of commands to be used across multiple projects that utilize different tools. If you plan to deploy using `tj`, this file will also house your [deployment configuration](http://themejuice.it/deploy).
         
     | 
| 
         @@ -230,7 +231,7 @@ commands: 
     | 
|
| 
       230 
231 
     | 
    
         
             
                - tar -zcvf dist.tar.gz .
         
     | 
| 
       231 
232 
     | 
    
         
             
            ```
         
     | 
| 
       232 
233 
     | 
    
         | 
| 
       233 
     | 
    
         
            -
            Each  
     | 
| 
      
 234 
     | 
    
         
            +
            Each list of commands is run within a single execution, with all `%args%`/`%argN%` being replaced with the corresponding argument index, when available. Here's a few example scenarios:
         
     | 
| 
       234 
235 
     | 
    
         
             
            ```bash
         
     | 
| 
       235 
236 
     | 
    
         
             
            # Will contain all arguments stitched together by a space
         
     | 
| 
       236 
237 
     | 
    
         
             
            cmd1 %args%
         
     | 
| 
         @@ -278,7 +279,7 @@ deployment: 
     | 
|
| 
       278 
279 
     | 
    
         
             
            Check out [capistrano-slackify](https://github.com/onthebeach/capistrano-slackify) for more information.
         
     | 
| 
       279 
280 
     | 
    
         | 
| 
       280 
281 
     | 
    
         
             
            ### Can I use a self-signed SSL cert?
         
     | 
| 
       281 
     | 
    
         
            -
            Yes, unless you used the `--no-ssl` flag, `tj` will set up each new site to support SSL, [and the VM will generate a new self-signed certificate](https://github.com/ezekg/theme-juice- 
     | 
| 
      
 282 
     | 
    
         
            +
            Yes, unless you used the `--no-ssl` flag, `tj` will set up each new site to support SSL, [and the VM will generate a new self-signed certificate](https://github.com/ezekg/theme-juice-vm#automatically-generated-self-signed-ssl-certs). In order to take advantage of it, [you'll need to accept the self-signed certificate on your host machine](https://github.com/ezekg/theme-juice-vm#accepting-a-self-signed-ssl-cert).
         
     | 
| 
       282 
283 
     | 
    
         | 
| 
       283 
284 
     | 
    
         
             
            ### Can I define my own Capistrano tasks?
         
     | 
| 
       284 
285 
     | 
    
         
             
            Yes. Any file within a directory called `deploy/` in your project with extensions `.rb`, `.cap` or `.rake` will be automatically loaded by Capistrano.
         
     | 
| 
         @@ -5,7 +5,7 @@ module ThemeJuice 
     | 
|
| 
       5 
5 
     | 
    
         
             
                class Create < Command
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
       7 
7 
     | 
    
         
             
                  TEMPLATES = {
         
     | 
| 
       8 
     | 
    
         
            -
                    " 
     | 
| 
      
 8 
     | 
    
         
            +
                    "themejuice/sprout"   => "git@github.com:ezekg/theme-juice-starter.git",
         
     | 
| 
       9 
9 
     | 
    
         
             
                    "wordpress/wordpress" => "git@github.com:WordPress/WordPress.git",
         
     | 
| 
       10 
10 
     | 
    
         
             
                    "other (specify)"     => nil,
         
     | 
| 
       11 
11 
     | 
    
         
             
                    "none"                => false
         
     | 
| 
         @@ -146,12 +146,12 @@ module ThemeJuice 
     | 
|
| 
       146 
146 
     | 
    
         
             
                    return false if @project.bare
         
     | 
| 
       147 
147 
     | 
    
         | 
| 
       148 
148 
     | 
    
         
             
                    if @project.use_defaults
         
     | 
| 
       149 
     | 
    
         
            -
                      template = TEMPLATES[" 
     | 
| 
      
 149 
     | 
    
         
            +
                      template = TEMPLATES["themejuice/sprout"]
         
     | 
| 
       150 
150 
     | 
    
         
             
                    else
         
     | 
| 
       151 
151 
     | 
    
         
             
                      choice = @io.choose "Which starter template would you like to use?", :blue, TEMPLATES.keys
         
     | 
| 
       152 
152 
     | 
    
         | 
| 
       153 
153 
     | 
    
         
             
                      case choice
         
     | 
| 
       154 
     | 
    
         
            -
                      when /( 
     | 
| 
      
 154 
     | 
    
         
            +
                      when /(themejuice)/
         
     | 
| 
       155 
155 
     | 
    
         
             
                        @io.say "Awesome choice!", :color => :green, :icon => :success
         
     | 
| 
       156 
156 
     | 
    
         
             
                      when /(wordpress)/
         
     | 
| 
       157 
157 
     | 
    
         
             
                        @project.wp_config_modify = true
         
     | 
    
        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.26. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.26.1
         
     | 
| 
       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-07- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2016-07-20 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: thor
         
     |