From f54fc99b9df10b546e5367bca9a8d33b6499f857 Mon Sep 17 00:00:00 2001 From: whitestar Date: Sat, 14 Jul 2018 16:18:03 +0900 Subject: [PATCH] add minim-server cookbook. --- cookbooks/minim-server/.foodcritic | 2 + cookbooks/minim-server/.rubocop.yml | 53 ++++++++++ cookbooks/minim-server/Berksfile | 19 ++++ cookbooks/minim-server/CHANGELOG.md | 5 + cookbooks/minim-server/Gemfile | 4 + cookbooks/minim-server/README.md | 107 +++++++++++++++++++++ cookbooks/minim-server/Rakefile | 41 ++++++++ cookbooks/minim-server/attributes/default.rb | 77 +++++++++++++++ cookbooks/minim-server/concourse.yml | 100 +++++++++++++++++++ cookbooks/minim-server/fly-vars.yml | 3 + cookbooks/minim-server/metadata.rb | 19 ++++ cookbooks/minim-server/recipes/default.rb | 18 ++++ cookbooks/minim-server/recipes/docker-compose.rb | 77 +++++++++++++++ .../minim-server/spec/recipes/default_spec.rb | 9 ++ cookbooks/minim-server/spec/spec_helper.rb | 25 +++++ .../opt/docker-compose/app/minim-server/.env | 8 ++ .../opt/docker-compose/app/minim-server/Dockerfile | 14 +++ .../app/minim-server/docker-compose.yml | 5 + .../app/minim-server/minimserver.config | 8 ++ cookbooks/minim-server/version | 1 + 20 files changed, 595 insertions(+) create mode 100644 cookbooks/minim-server/.foodcritic create mode 100644 cookbooks/minim-server/.rubocop.yml create mode 100644 cookbooks/minim-server/Berksfile create mode 100644 cookbooks/minim-server/CHANGELOG.md create mode 100644 cookbooks/minim-server/Gemfile create mode 100644 cookbooks/minim-server/README.md create mode 100644 cookbooks/minim-server/Rakefile create mode 100644 cookbooks/minim-server/attributes/default.rb create mode 100644 cookbooks/minim-server/concourse.yml create mode 100644 cookbooks/minim-server/fly-vars.yml create mode 100644 cookbooks/minim-server/metadata.rb create mode 100644 cookbooks/minim-server/recipes/default.rb create mode 100644 cookbooks/minim-server/recipes/docker-compose.rb create mode 100644 cookbooks/minim-server/spec/recipes/default_spec.rb create mode 100644 cookbooks/minim-server/spec/spec_helper.rb create mode 100644 cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/.env create mode 100644 cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/Dockerfile create mode 100644 cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/docker-compose.yml create mode 100644 cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/minimserver.config create mode 100644 cookbooks/minim-server/version diff --git a/cookbooks/minim-server/.foodcritic b/cookbooks/minim-server/.foodcritic new file mode 100644 index 0000000..f83b06c --- /dev/null +++ b/cookbooks/minim-server/.foodcritic @@ -0,0 +1,2 @@ +~FC001 +~FC019 diff --git a/cookbooks/minim-server/.rubocop.yml b/cookbooks/minim-server/.rubocop.yml new file mode 100644 index 0000000..4de4294 --- /dev/null +++ b/cookbooks/minim-server/.rubocop.yml @@ -0,0 +1,53 @@ +AllCops: + Exclude: + - vendor/**/* + +AlignParameters: + Enabled: false +LineLength: + Enabled: false +Lint/UnusedBlockArgument: + Enabled: false +Metrics/AbcSize: + Enabled: false +Style/BlockComments: + Enabled: false +Style/BlockDelimiters: + Enabled: false +Style/ExtraSpacing: + Enabled: false +Style/FileName: + Enabled: false +Style/LeadingCommentSpace: + Enabled: false +Style/RescueModifier: + Enabled: false +Style/SpaceAroundOperators: + Enabled: false +Style/SpaceBeforeFirstArg: + Enabled: false +Style/SpaceInsideBlockBraces: + Enabled: false +Style/SpaceInsidePercentLiteralDelimiters: + Enabled: false +Style/TrailingCommaInLiteral: + EnforcedStyleForMultiline: consistent_comma +Style/WordArray: + Enabled: false + +#Lint/ShadowingOuterLocalVariable: +# Enabled: false +#Metrics/MethodLength: +# Max: 10 +#Metrics/ModuleLength: +# Max: 100 +#Metrics/CyclomaticComplexity: +# Max: 6 +#Metrics/PerceivedComplexity: +# Max: 7 +#Style/AccessorMethodName: +# Enabled: false +#Style/MultilineOperationIndentation: +# Enabled: false +#Style/PerlBackrefs: +# Enabled: false diff --git a/cookbooks/minim-server/Berksfile b/cookbooks/minim-server/Berksfile new file mode 100644 index 0000000..2500fb4 --- /dev/null +++ b/cookbooks/minim-server/Berksfile @@ -0,0 +1,19 @@ +# +# Copyright 2018 whitestar +# +# 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. +# + +source 'https://supermarket.chef.io' + +metadata diff --git a/cookbooks/minim-server/CHANGELOG.md b/cookbooks/minim-server/CHANGELOG.md new file mode 100644 index 0000000..dd375bb --- /dev/null +++ b/cookbooks/minim-server/CHANGELOG.md @@ -0,0 +1,5 @@ +# minim-server CHANGELOG + +0.1.0 +----- +- Initial release of minim-server diff --git a/cookbooks/minim-server/Gemfile b/cookbooks/minim-server/Gemfile new file mode 100644 index 0000000..ad84be7 --- /dev/null +++ b/cookbooks/minim-server/Gemfile @@ -0,0 +1,4 @@ +source 'https://rubygems.org' + +# with Chef DK +gem 'stove' diff --git a/cookbooks/minim-server/README.md b/cookbooks/minim-server/README.md new file mode 100644 index 0000000..fb9ba58 --- /dev/null +++ b/cookbooks/minim-server/README.md @@ -0,0 +1,107 @@ +minim-server Cookbook +=================== + +This cookbook sets up a MinimServer by Docker-compose. +You can build MinimServer Docker image and run it by `docker-compose`. + +Note: do not push a Docker image including MinimServer to any public registries, because its re-distribution is not allowed by the [MinimServer license](http://minimserver.com/license.html). + +## Contents + +- [Requirements](#requirements) + - [platforms](#platforms) + - [packages](#packages) +- [Attributes](#attributes) +- [Usage](#usage) + - [Recipes](#recipes) + - [minim-server::default](#minim-serverdefault) + - [minim-server::docker-compose](#minim-serverdocker-compose) + - [Role Examples](#role-examples) +- [License and Authors](#license-and-authors) + +## Requirements + +### platforms + +- Debian >= 9.0 +- Ubuntu >= 16.04 +- CentOS,RHEL >= 7.3 + +### packages +- none. + +## Attributes + +|Key|Type|Description, example|Default| +|:--|:--|:--|:--| +|`['minim-server']['Dockerfile']['FROM']`|String|Base image in the `Dockerfile`.|See `attributes/default.rb`| +|`['minim-server']['docker-compose']['app_dir']`|String||`"#{node['docker-grid']['compose']['app_dir']}/minim-server"`| +|`['minim-server']['docker-compose']['data_dir']`|String||`"#{node['minim-server']['docker-compose']['app_dir']}/data"`| +|`['minim-server']['docker-compose']['dot_env']`|Hash|`.env` configurations.|See `attributes/default.rb`| +|`['minim-server']['docker-compose']['config']`|Hash|`docker-compose.yml` configurations.|See `attributes/default.rb`| + +## Usage + +### Recipes + +#### minim-server::default + +This recipe does nothing. + +#### minim-server::docker-compose + +This recipe generates a `docker-compose.yml` for the Minim-server. + +### Role Examples + +- `roles/minim-server-on-docker.rb` + +```ruby +name 'minim-server-on-docker' +description 'Minim-server on Docker' + +run_list( + 'role[docker]', + 'recipe[minim-server::docker-compose]', +) + +#env_run_lists + +#default_attributes + +override_attributes( + 'minim-server' => { + 'docker-compose' => { + 'config' => { + 'services' => { + 'minim-server' => { + 'volumes' => [ + '/path/local/media:/media:ro', + ], + }, + }, + }, + }, + }, +) +``` + +## License and Authors + +- Author:: whitestar at osdn.jp + +```text +Copyright 2018, whitestar + +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. +``` diff --git a/cookbooks/minim-server/Rakefile b/cookbooks/minim-server/Rakefile new file mode 100644 index 0000000..64191a5 --- /dev/null +++ b/cookbooks/minim-server/Rakefile @@ -0,0 +1,41 @@ +require 'rspec/core/rake_task' +require 'rubocop/rake_task' +require 'foodcritic' +require 'stove/rake_task' + +namespace :style do + desc 'Run Ruby style checks' + RuboCop::RakeTask.new(:ruby) do |t| + t.options = [ + '--auto-gen-config', # creates .rubocop_todo.yml + ] + end + + desc 'Run Chef style checks' + FoodCritic::Rake::LintTask.new(:chef) do |t| + t.options = { + fail_tags: ['any'], + } + end +end + +desc 'Run all style checks' +task style: ['style:chef', 'style:ruby'] + +desc 'Run ChefSpec examples' +RSpec::Core::RakeTask.new(:spec) + +desc 'Publish cookbook' +Stove::RakeTask.new(:publish) do |t| + t.stove_opts = [ + # `--username` and `--key` are set in ~/.stove typically. + #'--username', 'somebody', + #'--key', '~/chef/chef.io.example.com/somebody.pem', + #'--endpoint', 'https://supermarket.io.example.com/api/v1', # default: supermarket.chef.io + #'--no-ssl-verify', + '--no-git', + '--log-level', 'info', + ] +end + +task default: ['style', 'spec'] diff --git a/cookbooks/minim-server/attributes/default.rb b/cookbooks/minim-server/attributes/default.rb new file mode 100644 index 0000000..81da1c0 --- /dev/null +++ b/cookbooks/minim-server/attributes/default.rb @@ -0,0 +1,77 @@ +# +# Cookbook Name:: minim-server +# Attributes:: default +# +# Copyright 2018, whitestar +# +# 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. +# + +minim_ver = '0.8.5.2' +image_name = nil +base_image = nil +download_url = nil + +case node['kernel']['machine'] +when 'x86_64' + image_name = 'docker-minimserver' + base_image = 'java:8-jre' + download_url = "http://jminim.com/cada/MinimServer-#{minim_ver}-linux-intel.tar.gz" +when 'armv7l' + image_name = 'docker-minimserver-armhf' + base_image = 'arm32v7/openjdk:8-jre' + download_url = "http://jminim.com/cada/MinimServer-#{minim_ver}-linux-armhf.tar.gz" +end + +default['minim-server']['Dockerfile'] = { + 'FROM' => base_image, +} + +default['minim-server']['docker-compose']['app_dir'] = "#{node['docker-grid']['compose']['app_dir']}/minim-server" +default['minim-server']['docker-compose']['data_dir'] = "#{node['minim-server']['docker-compose']['app_dir']}/data" + +default['minim-server']['docker-compose']['dot_env'] = { + 'NAME' => image_name, + 'MINIM_VER' => minim_ver, + # archive url + 'url' => download_url, + # already not found! + #'url' => 'http://jminim.com/cada/MinimServer-0.8.4-linux-x64.tar.gz', + # Internal registry context, e.g. gitlab.io.example.com:5050/images + 'REGISTRY' => 'local', +} + +force_override['minim-server']['docker-compose']['config_format_version'] = '2' +version_2_config = { + # Version 2 docker-compose format + 'version' => '2', + 'services' => { + 'minim-server' => { + 'build' => { + 'context' => './', + 'args' => { + 'url' => '${url}', + }, + }, + 'image' => '${REGISTRY}/${NAME}:${MINIM_VER}', + 'restart' => 'always', + 'network_mode' => 'host', + 'volumes' => [ + # These volumes will be set by the minim-server::docker-compose recipe automatically. + #"#{node['minim-server']['docker-compose']['data_dir']}:/opt/minimserver/data:rw", + ], + }, + }, +} + +default['minim-server']['docker-compose']['config'] = version_2_config diff --git a/cookbooks/minim-server/concourse.yml b/cookbooks/minim-server/concourse.yml new file mode 100644 index 0000000..a9036e8 --- /dev/null +++ b/cookbooks/minim-server/concourse.yml @@ -0,0 +1,100 @@ +--- +# $ fly -t $CC_TARGET sp -p minim-server-cookbook -c concourse.yml -l fly-vars.yml -l ~/sec/credentials-prod.yml +resources: +- name: src-git + type: git + source: + uri: ((git-id-osdn))@git.osdn.net:/gitroot/metasearch/grid-chef-repo.git + branch: master + paths: + - cookbooks/((cookbook-name)) + private_key: ((git-private-key)) + git_user: ((git-user-osdn)) + #check_every: 1h # default: 1m +- name: chefdk-cache + type: docker-image + source: + repository: chef/chefdk + tag: ((chefdk-version)) + # ((param)) style: fly >= 3.2.0 + registry_mirror: https://((registry-mirror-domain)) # e.g. https://registry.docker.example.com:5000 + ca_certs: + - domain: ((registry-mirror-domain)) # e.g. registry.docker.example.com:5000 + cert: ((docker-reg-ca-cert)) + check_every: 6h # default: 1m + +jobs: +- name: test-cookbook + plan: + - aggregate: + - get: src-git + params: + depth: 5 + trigger: true + - get: chefdk-cache + - task: ci-build + image: chefdk-cache + params: + http_proxy: ((http-proxy)) # e.g. http://proxy.example.com:3128 + #HTTP_PROXY: ((http-proxy)) + config: + platform: linux + #image_resource: + # type: docker-image + # source: + # repository: chef/chefdk + # tag: ((chefdk-version)) + # NG, setting disable + #registry_mirror: https://((registry-mirror-domain)) + #ca_certs: + #- domain: ((registry-mirror-domain)) + # cert: ((docker-reg-ca-cert)) + inputs: + - name: src-git + run: + #dir: ./src-git/cookbooks/((cookbook-name)) + #path: rake + path: /bin/bash + args: + - -c + - | + cd ./src-git/cookbooks/((cookbook-name)) + bundle install + rake +- name: publish-cookbook + plan: + - aggregate: + - get: src-git + params: + depth: 5 + trigger: false + passed: [test-cookbook] + - get: chefdk-cache + passed: [test-cookbook] + - task: publish + image: chefdk-cache + params: + http_proxy: ((http-proxy)) + chef_username: ((chef-username)) + chef_client_key: ((chef-client-key)) + config: + platform: linux + inputs: + - name: src-git + run: + path: /bin/bash + args: + - -c + - | + echo '{"username":"((chef-username))","key":"/root/chef-client-key.pem"}' > /root/.stove + echo "$chef_client_key" > /root/chef-client-key.pem + cd ./src-git/cookbooks/((cookbook-name)) + bundle install + rake publish + - put: src-git + params: + repository: src-git + tag_prefix: ((cookbook-name))- + tag: src-git/cookbooks/((cookbook-name))/version + only_tag: true + annotate: src-git/cookbooks/((cookbook-name))/version diff --git a/cookbooks/minim-server/fly-vars.yml b/cookbooks/minim-server/fly-vars.yml new file mode 100644 index 0000000..03b903f --- /dev/null +++ b/cookbooks/minim-server/fly-vars.yml @@ -0,0 +1,3 @@ +--- +cookbook-name: minim-server +chefdk-version: 1.4.3 diff --git a/cookbooks/minim-server/metadata.rb b/cookbooks/minim-server/metadata.rb new file mode 100644 index 0000000..99dd6c3 --- /dev/null +++ b/cookbooks/minim-server/metadata.rb @@ -0,0 +1,19 @@ +name 'minim-server' +maintainer 'whitestar' +maintainer_email '' +license 'Apache 2.0' +description 'Installs/Configures minim-server' +long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) +version IO.read(File.join(File.dirname(__FILE__), 'version')).chomp +source_url 'http://scm.osdn.jp/gitroot/metasearch/grid-chef-repo.git' +issues_url 'https://osdn.jp/projects/metasearch/ticket' + +chef_version '>= 12' +%w( centos redhat ).each do |os| + supports os, '>= 7.0' +end +supports 'debian', '>= 9.0' +supports 'ubuntu', '>= 16.04' + +depends 'docker-grid', '>= 0.4.0' +depends 'platform_utils', '>= 0.4.4' diff --git a/cookbooks/minim-server/recipes/default.rb b/cookbooks/minim-server/recipes/default.rb new file mode 100644 index 0000000..4d6ef9c --- /dev/null +++ b/cookbooks/minim-server/recipes/default.rb @@ -0,0 +1,18 @@ +# +# Cookbook Name:: minim-server +# Recipe:: default +# +# Copyright 2018, whitestar +# +# 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. +# diff --git a/cookbooks/minim-server/recipes/docker-compose.rb b/cookbooks/minim-server/recipes/docker-compose.rb new file mode 100644 index 0000000..fa722dc --- /dev/null +++ b/cookbooks/minim-server/recipes/docker-compose.rb @@ -0,0 +1,77 @@ +# +# Cookbook Name:: minim-server +# Recipe:: docker-compose +# +# Copyright 2018, whitestar +# +# 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. +# + +doc_url = 'https://hub.docker.com/r/tromatik/docker-minimserver/' + +include_recipe 'platform_utils::kernel_user_namespace' +include_recipe 'docker-grid::compose' + +app_dir = node['minim-server']['docker-compose']['app_dir'] +data_dir = node['minim-server']['docker-compose']['data_dir'] + +[ + app_dir, + data_dir, +].each {|dir| + resources(directory: dir) rescue directory dir do + owner 'root' + group 'root' + mode '0755' + recursive true + end +} + +config_srvs = node['minim-server']['docker-compose']['config']['services'] +override_config_srvs = node.override['minim-server']['docker-compose']['config']['services'] +force_override_config_srvs = node.force_override['minim-server']['docker-compose']['config']['services'] +envs = {} +vols = config_srvs['minim-server']['volumes'].to_a + +vols.push("#{data_dir}:/opt/minimserver/data:rw") + +# merge environment hash +force_override_config_srvs['minim-server']['environment'] = envs unless envs.empty? +# reset vlumes array. +override_config_srvs['minim-server']['volumes'] = vols unless vols.empty? + +[ + 'Dockerfile', + '.env', + 'docker-compose.yml', + 'minimserver.config', +].each {|conf_file| + template "#{app_dir}/#{conf_file}" do + source "opt/docker-compose/app/minim-server/#{conf_file}" + owner 'root' + group 'root' + mode '0644' + end +} + +log 'minim-server docker-compose post install message' do + message <<-"EOM" +Note: You must execute the following command manually. + See #{doc_url} + * Start: + $ cd #{app_dir} + $ docker-compose up -d + * Stop + $ docker-compose down +EOM +end diff --git a/cookbooks/minim-server/spec/recipes/default_spec.rb b/cookbooks/minim-server/spec/recipes/default_spec.rb new file mode 100644 index 0000000..dfb69c5 --- /dev/null +++ b/cookbooks/minim-server/spec/recipes/default_spec.rb @@ -0,0 +1,9 @@ +require_relative '../spec_helper' + +describe 'minim-server::default' do + let(:chef_run) { ChefSpec::SoloRunner.new.converge(described_recipe) } + + #it 'does something' do + # expect(chef_run).to do_something('...') + #end +end diff --git a/cookbooks/minim-server/spec/spec_helper.rb b/cookbooks/minim-server/spec/spec_helper.rb new file mode 100644 index 0000000..1995e2b --- /dev/null +++ b/cookbooks/minim-server/spec/spec_helper.rb @@ -0,0 +1,25 @@ +# Added by ChefSpec +require 'chefspec' + +# Uncomment to use ChefSpec's Berkshelf extension +# require 'chefspec/berkshelf' + +RSpec.configure do |config| + # Specify the path for Chef Solo to find cookbooks + # config.cookbook_path = '/var/cookbooks' + + # Specify the path for Chef Solo to find roles + # config.role_path = '/var/roles' + + # Specify the Chef log_level (default: :warn) + # config.log_level = :debug + + # Specify the path to a local JSON file with Ohai data + # config.path = 'ohai.json' + + # Specify the operating platform to mock Ohai data from + # config.platform = 'ubuntu' + + # Specify the operating version to mock Ohai data from + # config.version = '12.04' +end diff --git a/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/.env b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/.env new file mode 100644 index 0000000..f77b5e3 --- /dev/null +++ b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/.env @@ -0,0 +1,8 @@ +<% +dot_env = node['minim-server']['docker-compose']['dot_env'] +-%> +# for docker-compose.yml +NAME=<%= dot_env['NAME'] %> +MINIM_VER=<%= dot_env['MINIM_VER'] %> +url=<%= dot_env['url'] %> +REGISTRY=<%= dot_env['REGISTRY'] %> diff --git a/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/Dockerfile b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/Dockerfile new file mode 100644 index 0000000..fefbeac --- /dev/null +++ b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/Dockerfile @@ -0,0 +1,14 @@ +FROM <%= node['minim-server']['Dockerfile']['FROM'] %> + +ARG url=http://jminim.com/cada/MinimServer-0.8.5.2-linux-intel.tar.gz + +RUN wget -O /opt/MinimServer.tar.gz ${url} && \ + cd /opt && \ + tar xf MinimServer.tar.gz && \ + rm MinimServer.tar.gz + +COPY ./minimserver.config /opt/minimserver/data/minimserver.config + +EXPOSE 9790 9791 + +ENTRYPOINT [ "/opt/minimserver/bin/startc" ] diff --git a/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/docker-compose.yml b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/docker-compose.yml new file mode 100644 index 0000000..7af4c17 --- /dev/null +++ b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/docker-compose.yml @@ -0,0 +1,5 @@ +<% +require 'yaml' +yaml_str = node['minim-server']['docker-compose']['config'].to_hash.to_yaml +-%> +<%= yaml_str %> diff --git a/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/minimserver.config b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/minimserver.config new file mode 100644 index 0000000..c339f54 --- /dev/null +++ b/cookbooks/minim-server/templates/default/opt/docker-compose/app/minim-server/minimserver.config @@ -0,0 +1,8 @@ +minimserver.lastIndexTags = Artist, Date, Genre, All Artists, Composer +minimserver.tagOptions = Album.sortTags\={Album, Artist} +minimserver.systemUpdateID = 3 +minimserver.previousAlbumArtistDisplayRole = true +minimserver.tagCustom = AlbumArtist.displayRole\={artist}, Composer.displayRole\={artist} +minimserver.alphaGroup = albums\=20, Artist\=20, Composer +minimserver.configVersion = 0.8.213 +minimserver.contentDir = /media diff --git a/cookbooks/minim-server/version b/cookbooks/minim-server/version new file mode 100644 index 0000000..6e8bf73 --- /dev/null +++ b/cookbooks/minim-server/version @@ -0,0 +1 @@ +0.1.0 -- 2.11.0