2 # Cookbook:: serverinfo
 
   5 # Copyright:: 2015, OpenStreetMap Foundation
 
   7 # Licensed under the Apache License, Version 2.0 (the "License");
 
   8 # you may not use this file except in compliance with the License.
 
   9 # You may obtain a copy of the License at
 
  11 #     https://www.apache.org/licenses/LICENSE-2.0
 
  13 # Unless required by applicable law or agreed to in writing, software
 
  14 # distributed under the License is distributed on an "AS IS" BASIS,
 
  15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
  16 # See the License for the specific language governing permissions and
 
  17 # limitations under the License.
 
  20 include_recipe "apache"
 
  33 git "/srv/hardware.openstreetmap.org" do
 
  35   repository "https://github.com/osmfoundation/osmf-server-info.git"
 
  39   notifies :run, "bundle_install[/srv/hardware.openstreetmap.org]"
 
  42 nodes = { :rows => search(:node, "*:*") }
 
  43 roles = { :rows => search(:role, "*:*") }
 
  45 file "/srv/hardware.openstreetmap.org/_data/nodes.json" do
 
  50   notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]"
 
  53 file "/srv/hardware.openstreetmap.org/_data/roles.json" do
 
  58   notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]"
 
  61 directory "/srv/hardware.openstreetmap.org/_site" do
 
  67 directory "/srv/hardware.openstreetmap.org/vendor" do
 
  71   notifies :run, "bundle_install[/srv/hardware.openstreetmap.org]", :immediately
 
  74 bundle_install "/srv/hardware.openstreetmap.org" do
 
  78   environment "BUNDLE_FROZEN" => "true",
 
  79               "BUNDLE_WITHOUT" => "development:test",
 
  80               "BUNDLE_PATH" => "vendor/bundle",
 
  81               "BUNDLE_DEPLOYMENT" => "1",
 
  82               "BUNDLE_JOBS" => node.cpu_cores.to_s
 
  83   notifies :run, "bundle_exec[/srv/hardware.openstreetmap.org]"
 
  86 bundle_exec "/srv/hardware.openstreetmap.org" do
 
  88   command "jekyll build --trace --disable-disk-cache --baseurl=https://hardware.openstreetmap.org"
 
  91   environment "LANG" => "C.UTF-8",
 
  92               "BUNDLE_PATH" => "vendor/bundle",
 
  93               "BUNDLE_DEPLOYMENT" => "1"
 
  96 ssl_certificate "hardware.openstreetmap.org" do
 
  97   domains ["hardware.openstreetmap.org", "hardware.osm.org", "hardware.osmfoundation.org"]
 
  98   notifies :reload, "service[apache2]"
 
 101 apache_site "hardware.openstreetmap.org" do
 
 102   template "apache.erb"
 
 103   directory "/srv/hardware.openstreetmap.org/_site"
 
 104   variables :aliases => ["hardware.osm.org", "hardware.osmfoundation.org"]