]> git.openstreetmap.org Git - chef.git/blob - README.md
kitchen: move chef_image into driver section
[chef.git] / README.md
1 # OpenStreetMap chef cookbooks
2
3 [![Cookstyle](https://github.com/openstreetmap/chef/workflows/Cookstyle/badge.svg?branch=master&event=push)](https://github.com/openstreetmap/chef/actions?query=workflow%3ACookstyle%20branch%3Amaster%20event%3Apush)
4 [![Test Kitchen](https://github.com/openstreetmap/chef/workflows/Test%20Kitchen/badge.svg?branch=master&event=push)](https://github.com/openstreetmap/chef/actions?query=workflow%3A%22Test+Kitchen%22%20branch%3Amaster%20event%3Apush)
5
6 This repository manages the configuration of all the servers run by the
7 OpenStreetMap Foundation's Operations Working Group. We use
8 [Chef](https://www.chef.io/) to automated the configuration of all of our
9 servers.
10
11 [OSMF Operations Working Group](https://operations.osmfoundation.org/)
12
13 # Roles
14
15 We make extensive use of roles to configure the servers. In general we have:
16
17 ## Server-specific roles (e.g. [faffy.rb](roles/faffy.rb))
18
19 These deal with particular setup or quirks of a server, such as its IP address. They also include roles representing the service they are performing, and the location they are in and any particular hardware they have that needs configuration.
20 All our servers are [named after dragons](https://wiki.openstreetmap.org/wiki/Servers/Name_Ideas).
21
22 ## Hardware-specific roles (e.g. [hp-g9.rb](roles/hp-g9.rb))
23
24 Covers anything specific to a certain piece of hardware, like a motherboard, that could apply to multiple machines.
25
26 ## Location-specific roles (e.g. [equinix-dub.rb](roles/equinix-dub.rb))
27
28 These form a hierarchy of datacentres, organisations, and countries where our servers are located.
29
30 ## Service-specific roles (e.g. [web-frontend](roles/web-frontend.rb))
31
32 These cover the services that the server is running, and will include the recipes required for that service along with any specific configurations and other cascading roles.
33
34 # Cookbooks
35
36 We use the 'Organization Repository' approach, where we have all our cookbooks in this repository (as opposed to one repository per cookbook). Additionally we don't make use of external cookbooks so every cookbook required is in this repository.
37
38 # Contributing
39
40 Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for more details. The guide also includes details on how to run the tests locally.
41
42 # Contact Us
43
44 * Twitter: [@OSM_Tech](https://twitter.com/OSM_Tech)
45 * Mastodon / Fediverse: [@OSM_Tech](https://en.osm.town/@osm_tech)
46 * IRC: [#OSM-Dev on irc.oftc.net](https://irc.openstreetmap.org/)