From: Grant Slater Date: Wed, 14 Jul 2021 21:45:23 +0000 (+0100) Subject: Add placeholder cookbook for community X-Git-Url: https://git.openstreetmap.org./chef.git/commitdiff_plain/b6b95dafa71524e7baa9614e09f7a7e2d5e1206c?ds=inline Add placeholder cookbook for community --- diff --git a/cookbooks/community/README.md b/cookbooks/community/README.md new file mode 100644 index 000000000..97ee9be2a --- /dev/null +++ b/cookbooks/community/README.md @@ -0,0 +1,3 @@ +# Community Cookbook + +This installs and configures the community.openstreetmap.org website. diff --git a/cookbooks/community/attributes/default.rb b/cookbooks/community/attributes/default.rb new file mode 100644 index 000000000..68a98c736 --- /dev/null +++ b/cookbooks/community/attributes/default.rb @@ -0,0 +1 @@ +default[:accounts][:users][:community][:status] = :role diff --git a/cookbooks/community/metadata.rb b/cookbooks/community/metadata.rb new file mode 100644 index 000000000..fe35d4329 --- /dev/null +++ b/cookbooks/community/metadata.rb @@ -0,0 +1,11 @@ +name "community" +maintainer "OpenStreetMap Administrators" +maintainer_email "admins@openstreetmap.org" +license "Apache-2.0" +description "Installs and configures community site" + +version "1.0.0" +supports "ubuntu" +depends "docker" +depends "git" +depends "ssl" diff --git a/cookbooks/community/recipes/default.rb b/cookbooks/community/recipes/default.rb new file mode 100644 index 000000000..5ad6e7afb --- /dev/null +++ b/cookbooks/community/recipes/default.rb @@ -0,0 +1,74 @@ +# +# Cookbook:: community +# Recipe:: default +# +# Copyright:: 2021, OpenStreetMap Foundation +# +# 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 +# +# https://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 "docker" +include_recipe "git" +include_recipe "ssl" + +ssl_certificate "community.openstreetmap.org" do + domains ["community.openstreetmap.org", "community.osm.org"] +end + +# passwords = data_bag_item("community", "passwords") + +# postgresql_user "community_user" do +# cluster node[:db][:cluster] +# password passwords["database"] +# end + +# postgresql_database "community_db" do +# cluster node[:db][:cluster] +# owner "community_user" +# end + +# postgresql_extension "hstore" do +# cluster node[:db][:cluster] +# database "community_db" +# end + +# postgresql_extension "pg_trgm" do +# cluster node[:db][:cluster] +# database "community_db" +# end + +directory "/srv/community.openstreetmap.org" do + owner "root" + group "root" + mode "755" +end + +directory "/srv/community.openstreetmap.org/shared" do + owner "community" + group "community" + mode "755" +end + +git "/srv/community.openstreetmap.org/docker" do + action :sync + repository "https://github.com/discourse/discourse_docker.git" + revision "master" + depth 1 + user "root" + group "root" +end + +# TBC: discourse docker templates +# web.ssl.template.yml +# redis.template.yml +# TBC: discourse launcher rebuild diff --git a/roles/community.rb b/roles/community.rb new file mode 100644 index 000000000..c24e40fbb --- /dev/null +++ b/roles/community.rb @@ -0,0 +1,17 @@ +name "community" +description "Role applied to all community servers" + +default_attributes( + :accounts => { + :users => { + :community => { + :status => :role, + :members => [:grant, :tomh] + } + } + } +) + +run_list( + "recipe[community]" +) diff --git a/roles/lockheed.rb b/roles/lockheed.rb index f920f6053..beefb2a85 100644 --- a/roles/lockheed.rb +++ b/roles/lockheed.rb @@ -31,5 +31,6 @@ default_attributes( ) run_list( - "role[equinix]" + "role[equinix]", + "role[community]" )