YUKI Hiroshi
null+****@clear*****
Mon Apr 21 14:06:06 JST 2014
YUKI Hiroshi 2014-04-21 14:06:06 +0900 (Mon, 21 Apr 2014) New Revision: f7d92188a9ae2b5b2bba6154b7fd201d8b9bbe0c https://github.com/droonga/chef-cookbooks/commit/f7d92188a9ae2b5b2bba6154b7fd201d8b9bbe0c Message: Add recipe for droonga-http-server (experimental) Added files: droonga/recipes/http-server.rb droonga/templates/default/sv-droonga-http-server-log-config.erb Modified files: droonga/attributes/default.rb droonga/metadata.rb Modified: droonga/attributes/default.rb (+4 -0) =================================================================== --- droonga/attributes/default.rb 2014-04-21 11:32:52 +0900 (8347654) +++ droonga/attributes/default.rb 2014-04-21 14:06:06 +0900 (c617ad5) @@ -6,3 +6,7 @@ default.droonga.engine.host = node.name default.droonga.engine.port = 10031 default.droonga.engine.tag = "droonga" default.droonga.engine.template.cookbooks = {} + +default.droonga.http_server.user_name = "droonga-http-server" +default.droonga.http_server.group_name = "droonga-http-server" +default.droonga.http_server.home = "/home/droonga-http-server" Modified: droonga/metadata.rb (+3 -0) =================================================================== --- droonga/metadata.rb 2014-04-21 11:32:52 +0900 (123e4d5) +++ droonga/metadata.rb 2014-04-21 14:06:06 +0900 (3a868f1) @@ -11,4 +11,7 @@ recipe "droonga", "Installs and configures Droonga engine and protocol adapter" depends "runit" depends "build-essential" depends "git" +depends "nodejs" +depends "npm" + depends "groonga" Added: droonga/recipes/http-server.rb (+82 -0) 100644 =================================================================== --- /dev/null +++ droonga/recipes/http-server.rb 2014-04-21 14:06:06 +0900 (f541414) @@ -0,0 +1,82 @@ +# +# Cookbook Name:: droonga +# Recipe:: engine +# +# Copyright 2014, Kouhei Sutou +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +include_recipe "nodejs" +include_recipe "npm" +include_recipe "git" + +droonga_http_server = node.droonga.http_server + +user_name = droonga_http_server.user_name +group_name = droonga_http_server.group_name +home_dir = droonga_http_server.home + +service_name = "droonga-http-server" + +group group_name do +end + +user user_name do + home home_dir + group group_name + password nil + supports :manage_home => true +end + +deploy "#{home_dir}/droonga-http-server" do + repo "https://github.com/droonga/droonga-http-server" + user user_name + group group_name + shallow_clone + keep_releases 10 + purge_before_symlink ["log", "tmp/pids"] + create_dirs_before_symlink ["tmp"] + symlinks "pids" => "tmp/pids", + "log" => "log" + action :deploy + + migrate true + migration_command "npm install" + + before_migrate do + log_dir = "#{new_resource.shared_path}/log" + directory log_dir do + user user_name + group group_name + mode 0755 + end + end + + notifies :restart, "runit_service[#{service_name}]" +end + +package "runit" do +end + +runit_service service_name do + log true + default_logger true +end + +log_dir = "/var/log/#{service_name}" +log_config = "#{log_dir}/config" +template log_config do + source "sv-droonga-http-server-log-config.erb" + mode 0644 +end Added: droonga/templates/default/sv-droonga-http-server-log-config.erb (+1 -0) 100644 =================================================================== --- /dev/null +++ droonga/templates/default/sv-droonga-http-server-log-config.erb 2014-04-21 14:06:06 +0900 (b2729ac) @@ -0,0 +1 @@ +n30 -------------- next part -------------- HTML����������������������������...Download