SuperTux88's Diaspora Saltstack Formula
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
2.5KB

  1. {% set os_map = salt['grains.filter_by']({
  2. 'Debian': {
  3. 'dependencies' : [
  4. 'build-essential',
  5. 'git',
  6. 'curl',
  7. 'libreadline-dev',
  8. 'libcurl4-openssl-dev',
  9. salt['grains.filter_by']({
  10. 'stretch': 'libssl1.0-dev',
  11. 'default': 'libssl-dev'
  12. }, grain='oscodename'),
  13. 'libxml2-dev',
  14. 'libxslt1-dev',
  15. 'imagemagick',
  16. 'libmagickwand-dev',
  17. 'ghostscript',
  18. 'nodejs',
  19. ],
  20. 'postgresql_package': 'libpq-dev',
  21. 'mysql_package' : 'libmariadbclient-dev',
  22. 'redis_package' : 'redis-server',
  23. 'redis_service' : 'redis-server',
  24. 'configuration' : {
  25. 'environment': {
  26. 'certificate_authorities': '/etc/ssl/certs/ca-certificates.crt'
  27. }
  28. },
  29. },
  30. 'RedHat': {
  31. 'dependencies' : [
  32. 'tar',
  33. 'make',
  34. 'automake',
  35. 'gcc',
  36. 'gcc-c++',
  37. 'git',
  38. 'net-tools',
  39. 'libcurl-devel',
  40. 'libxml2-devel',
  41. 'libffi-devel',
  42. 'libxslt-devel',
  43. 'wget',
  44. 'ImageMagick',
  45. 'nodejs',
  46. ],
  47. 'postgresql_package': 'postgresql-devel',
  48. 'mysql_package' : 'mariadb-devel',
  49. 'redis_package' : 'redis',
  50. 'redis_service' : 'redis',
  51. 'configuration' : {
  52. 'environment': {
  53. 'certificate_authorities': '/etc/pki/tls/certs/ca-bundle.crt'
  54. }
  55. },
  56. },
  57. }, merge=salt['grains.filter_by']({
  58. 'Ubuntu': {
  59. 'dependencies' : [
  60. 'build-essential',
  61. 'git',
  62. 'curl',
  63. 'libcurl4-openssl-dev',
  64. 'libssl-dev',
  65. 'libxml2-dev',
  66. 'libxslt1-dev',
  67. 'libgmp-dev',
  68. 'imagemagick',
  69. 'libmagickwand-dev',
  70. 'nodejs',
  71. ],
  72. 'mysql_package' : 'libmysqlclient-dev',
  73. },
  74. }, grain='os', merge=salt['pillar.get']('diaspora:lookup'))) %}
  75. {% import_yaml "diaspora/defaults.yaml" as defaults %}
  76. {% do defaults.diaspora.update(os_map) %}
  77. # use production as default rails environment
  78. {% do defaults.diaspora.configuration.update({'server': {'rails_environment': 'production'}}) %}
  79. {% set diaspora = salt['pillar.get']('diaspora', default=defaults.diaspora, merge=True) %}