soupcms-cli 0.5.2 → 0.5.3
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/Gemfile.lock +1 -1
- data/lib/soupcms/cli/version.rb +1 -1
- data/lib/soupcms/soupcms_cli.rb +29 -23
- data/lib/templates/.gitignore +20 -0
- data/lib/templates/pages/default.yml +0 -4
- data/lib/templates/public/common/stylesheets/_custom-variables.scss +4 -0
- data/lib/templates/single-app-config.ru +3 -0
- 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: 96ab0c89df4305acdefb49bc2016f9341f593d84
         | 
| 4 | 
            +
              data.tar.gz: aae155db0adbefd86c38d8e17ab2c051b95add7e
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: b5a032a84906fab09ef3334916ac914fc3178defd6621f5c2b3007c9ea95913f1078e26b9d52afe24c110bb12567557c7906855cb4e26946db12f3b3e708cd86
         | 
| 7 | 
            +
              data.tar.gz: d45210a25e4088abe438ab14e1b1e736178120198204edc4390a7b400539693d13f2b3958f0b89368cb9deb591fee35c12bce73c92ee08340a07e55b34c74480
         | 
    
        data/Gemfile.lock
    CHANGED
    
    
    
        data/lib/soupcms/cli/version.rb
    CHANGED
    
    
    
        data/lib/soupcms/soupcms_cli.rb
    CHANGED
    
    | @@ -15,13 +15,18 @@ class SoupCMSCLI < Thor | |
| 15 15 | 
             
              attr_reader :configs
         | 
| 16 16 |  | 
| 17 17 | 
             
              desc 'new <name>', 'create new application'
         | 
| 18 | 
            +
              method_option :skip_dir, type: :boolean, aliases: '-t', default: false, desc: 'Skip top level directory for application.'
         | 
| 18 19 | 
             
              method_option :generate, type: :boolean, aliases: '-g', default: false, desc: 'Generate NEW soupcms application. Default is false.'
         | 
| 19 20 | 
             
              def new(name)
         | 
| 20 21 | 
             
                configs[:name] = name
         | 
| 21 22 | 
             
                configs[:display_name] = ask('Short display application name? (10 to 15 char) :', :green)
         | 
| 22 23 | 
             
                configs[:description] = ask('Long application description? (30 to 40 char) :', :green)
         | 
| 23 24 |  | 
| 24 | 
            -
                 | 
| 25 | 
            +
                if yes?('Would you like to host your website public on platform like Heroku? (y/n):', :cyan)
         | 
| 26 | 
            +
                  configs[:site_name] = ask('Provide the hostname for your website (e.g. http://myblog.herokuapp.com OR http://www.myblog.com) :', :green)
         | 
| 27 | 
            +
                end
         | 
| 28 | 
            +
             | 
| 29 | 
            +
                configs[:blog] = yes?('Blog support? (y/n):', :cyan)
         | 
| 25 30 | 
             
                if configs[:blog]
         | 
| 26 31 | 
             
                  say('Choose blog layout? (y/n):',:green)
         | 
| 27 32 | 
             
                  blog_layouts = [[1, 'full-width'], [2, 'right-sidebar'], [3, 'left-sidebar']]
         | 
| @@ -30,40 +35,41 @@ class SoupCMSCLI < Thor | |
| 30 35 | 
             
                  configs[:blog_layout] = blog_layouts[layout.to_i - 1][1]
         | 
| 31 36 | 
             
                end
         | 
| 32 37 |  | 
| 38 | 
            +
                top_dir = options.skip_dir? ? '.' : name
         | 
| 39 | 
            +
                data_folder = "#{top_dir}/data/#{name}"
         | 
| 33 40 | 
             
                if configs[:blog]
         | 
| 34 | 
            -
                  template 'lib/templates/pages/blog-post.yml'," | 
| 35 | 
            -
                  template 'lib/templates/pages/posts.yml'," | 
| 41 | 
            +
                  template 'lib/templates/pages/blog-post.yml',"#{data_folder}/pages/blog-post.yml"
         | 
| 42 | 
            +
                  template 'lib/templates/pages/posts.yml',"#{data_folder}/pages/posts.yml"
         | 
| 36 43 | 
             
                end
         | 
| 37 | 
            -
                copy_file 'lib/templates/public/favicon.png',  | 
| 44 | 
            +
                copy_file 'lib/templates/public/favicon.png', "#{top_dir}/public/favicon.png"
         | 
| 45 | 
            +
                copy_file 'lib/templates/public/common/stylesheets/_custom-variables.scss', "#{top_dir}/public/common/stylesheets/_custom-variables.scss"
         | 
| 38 46 |  | 
| 39 | 
            -
                template 'lib/templates/schemaless/footer.yml'," | 
| 40 | 
            -
                template 'lib/templates/schemaless/navigation.yml'," | 
| 41 | 
            -
                template 'lib/templates/schemaless/social-toolbar.yml'," | 
| 47 | 
            +
                template 'lib/templates/schemaless/footer.yml',"#{data_folder}/schemaless/footer.yml"
         | 
| 48 | 
            +
                template 'lib/templates/schemaless/navigation.yml',"#{data_folder}/schemaless/navigation.yml"
         | 
| 49 | 
            +
                template 'lib/templates/schemaless/social-toolbar.yml',"#{data_folder}/schemaless/social-toolbar.yml"
         | 
| 42 50 |  | 
| 43 | 
            -
                template 'lib/templates/pages/default.yml'," | 
| 44 | 
            -
                template 'lib/templates/pages/home.yml'," | 
| 45 | 
            -
                template 'lib/templates/pages/about.md'," | 
| 51 | 
            +
                template 'lib/templates/pages/default.yml',"#{data_folder}/pages/default.yml"
         | 
| 52 | 
            +
                template 'lib/templates/pages/home.yml',"#{data_folder}/pages/home.yml"
         | 
| 53 | 
            +
                template 'lib/templates/pages/about.md',"#{data_folder}/pages/about.md"
         | 
| 46 54 |  | 
| 47 | 
            -
                template 'lib/templates/Gemfile',  | 
| 48 | 
            -
                template 'lib/templates/Procfile',  | 
| 55 | 
            +
                template 'lib/templates/Gemfile', "#{top_dir}/Gemfile"
         | 
| 56 | 
            +
                template 'lib/templates/Procfile', "#{top_dir}/Procfile"
         | 
| 57 | 
            +
                template 'lib/templates/.gitignore', "#{top_dir}/.gitignore"
         | 
| 49 58 |  | 
| 50 | 
            -
                 | 
| 51 | 
            -
                  configs[:site_name] = ask('Provide the hostname for your website (e.g. http://myblog.herokuapp.com OR http://www.myblog.com) :', :green)
         | 
| 52 | 
            -
                end
         | 
| 53 | 
            -
                template 'lib/templates/single-app-config.ru', 'config.ru'
         | 
| 59 | 
            +
                template 'lib/templates/single-app-config.ru', "#{top_dir}/config.ru"
         | 
| 54 60 |  | 
| 55 61 | 
             
                if configs[:blog]
         | 
| 56 | 
            -
                  while yes?('Would you like to add blog post? (y/n):', : | 
| 57 | 
            -
                    post(configs[:name])
         | 
| 62 | 
            +
                  while yes?('Would you like to add blog post? (y/n):', :cyan)
         | 
| 63 | 
            +
                    post(configs[:name], top_dir)
         | 
| 58 64 | 
             
                  end
         | 
| 59 65 | 
             
                end
         | 
| 60 66 |  | 
| 61 67 |  | 
| 62 | 
            -
                create_file "data/#{name}/_config.yml", YAML.dump(JSON.parse(configs.to_json))
         | 
| 68 | 
            +
                create_file "#{top_dir}/data/#{name}/_config.yml", YAML.dump(JSON.parse(configs.to_json))
         | 
| 63 69 | 
             
              end
         | 
| 64 70 |  | 
| 65 71 | 
             
              desc 'post <name>', 'create new post for given application name'
         | 
| 66 | 
            -
              def post(name)
         | 
| 72 | 
            +
              def post(name, top_dir = '.')
         | 
| 67 73 | 
             
                configs[:name] = name
         | 
| 68 74 | 
             
                configs[:title] = ask('Title for the new post? (20 to 30 char) :', :green)
         | 
| 69 75 | 
             
                sanitize_title = configs[:title].gsub(' ','-').gsub('\'','').gsub(',','').downcase   #TODO: proper sanitization
         | 
| @@ -71,9 +77,9 @@ class SoupCMSCLI < Thor | |
| 71 77 | 
             
                tags = ask('Tags as comma separated list:', :green)
         | 
| 72 78 | 
             
                configs[:tags] = tags.split(',')
         | 
| 73 79 |  | 
| 74 | 
            -
                template 'lib/templates/blog/my-first-post.md',"data/#{name}/posts/#{sanitize_title}.md"
         | 
| 75 | 
            -
                copy_file 'lib/templates/public/blog/posts/images/my-first-post.png',"public/#{name}/posts/images/#{sanitize_title}.png"
         | 
| 76 | 
            -
                copy_file 'lib/templates/public/blog/posts/images/my-first-post/1-post-image.png',"public/#{name}/posts/images/#{sanitize_title}/1-post-image.png"
         | 
| 80 | 
            +
                template 'lib/templates/blog/my-first-post.md',"#{top_dir}/data/#{name}/posts/#{sanitize_title}.md"
         | 
| 81 | 
            +
                copy_file 'lib/templates/public/blog/posts/images/my-first-post.png',"#{top_dir}/public/#{name}/posts/images/#{sanitize_title}.png"
         | 
| 82 | 
            +
                copy_file 'lib/templates/public/blog/posts/images/my-first-post/1-post-image.png',"#{top_dir}/public/#{name}/posts/images/#{sanitize_title}/1-post-image.png"
         | 
| 77 83 | 
             
              end
         | 
| 78 84 |  | 
| 79 85 | 
             
              desc 'delete <name>', 'delete application'
         | 
| @@ -33,10 +33,6 @@ | |
| 33 33 | 
             
                          data:
         | 
| 34 34 | 
             
                            title: <%= configs[:display_name] %>
         | 
| 35 35 | 
             
                            sub_headline: <%= configs[:description] %>
         | 
| 36 | 
            -
                            image:
         | 
| 37 | 
            -
                              source: cloudinary
         | 
| 38 | 
            -
                              base_url: http://res.cloudinary.com/sunitparekh/image/upload
         | 
| 39 | 
            -
                              desktop: purple-textures-low_xiamgc.jpg
         | 
| 40 36 | 
             
                          return: page-header
         | 
| 41 37 | 
             
                      template:
         | 
| 42 38 | 
             
                        type: slim
         | 
| @@ -15,6 +15,9 @@ SoupCMS::Common::Strategy::Application::SingleApp.configure do |app| | |
| 15 15 | 
             
                app.soupcms_api_url = 'http://localhost:9292/api'
         | 
| 16 16 | 
             
                app.app_base_url = 'http://localhost:9292/'
         | 
| 17 17 | 
             
              end
         | 
| 18 | 
            +
              <%- else %>
         | 
| 19 | 
            +
              app.soupcms_api_url = 'http://localhost:9292/api'
         | 
| 20 | 
            +
              app.app_base_url = 'http://localhost:9292/'
         | 
| 18 21 | 
             
              <%- end %>
         | 
| 19 22 | 
             
            end
         | 
| 20 23 |  | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: soupcms-cli
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.5. | 
| 4 | 
            +
              version: 0.5.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Sunit Parekh
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2014-04- | 
| 11 | 
            +
            date: 2014-04-24 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: thor
         | 
| @@ -84,6 +84,7 @@ files: | |
| 84 84 | 
             
            - lib/soupcms/cli/resolve_file_reference.rb
         | 
| 85 85 | 
             
            - lib/soupcms/cli/version.rb
         | 
| 86 86 | 
             
            - lib/soupcms/soupcms_cli.rb
         | 
| 87 | 
            +
            - lib/templates/.gitignore
         | 
| 87 88 | 
             
            - lib/templates/Gemfile
         | 
| 88 89 | 
             
            - lib/templates/Procfile
         | 
| 89 90 | 
             
            - lib/templates/blog/my-first-post.md
         | 
| @@ -94,6 +95,7 @@ files: | |
| 94 95 | 
             
            - lib/templates/pages/posts.yml
         | 
| 95 96 | 
             
            - lib/templates/public/blog/posts/images/my-first-post.png
         | 
| 96 97 | 
             
            - lib/templates/public/blog/posts/images/my-first-post/1-post-image.png
         | 
| 98 | 
            +
            - lib/templates/public/common/stylesheets/_custom-variables.scss
         | 
| 97 99 | 
             
            - lib/templates/public/favicon.png
         | 
| 98 100 | 
             
            - lib/templates/schemaless/footer.yml
         | 
| 99 101 | 
             
            - lib/templates/schemaless/navigation.yml
         |