diff --git a/hieradata/env/production.yaml b/hieradata/env/production.yaml index ffd27c13..6c69e425 100644 --- a/hieradata/env/production.yaml +++ b/hieradata/env/production.yaml @@ -29,6 +29,15 @@ metacpan::crons::general: metacpan_sitemaps: ensure : present +metacpan::web::docker: + + github-meets-cpan: + vhost_aliases: + - 'gh.metacpan.org' + - "gh.lo.metacpan.org" + - "gh.%{hostname}.metacpan.org" + docker_port: 5002 + metacpan::web::starman: metacpan-web: @@ -49,19 +58,6 @@ metacpan::web::starman: git_enable: true starman_workers: 2 - github-meets-cpan: - git_enable: true - starman_workers: 1 - git_source: 'https://github.com/metacpan/github-meets-cpan.git' - git_revision: 'master' - vhost_bare: true - vhost_aliases: - - 'gh.metacpan.org' - - "gh.lo.metacpan.org" - - "gh.%{hostname}.metacpan.org" - starman_port: 5002 - starman_workers: 1 - sco-redirect: git_enable: true starman_workers: 10 diff --git a/hieradata/nodes/lw-mc-02.yaml b/hieradata/nodes/lw-mc-02.yaml index aa27bf9f..5d944ba9 100644 --- a/hieradata/nodes/lw-mc-02.yaml +++ b/hieradata/nodes/lw-mc-02.yaml @@ -9,10 +9,6 @@ minion_queue::service::ensure: running minion_queue::service::enable: true -metacpan::crons::general: - github-meets-cpan: - ensure : present - metacpan::crons::general: metacpan_sitemaps: minute : 25 diff --git a/hieradata/nodes/metacpan-dev.yaml b/hieradata/nodes/metacpan-dev.yaml index 591048b6..296e8012 100644 --- a/hieradata/nodes/metacpan-dev.yaml +++ b/hieradata/nodes/metacpan-dev.yaml @@ -49,8 +49,6 @@ metacpan::fw_ports: metacpan_api: port: 5000 source: '0.0.0.0/0' - github-meets-cpan: - port: 5002 - source: '0.0.0.0/0' + starman::config::plack_env: development diff --git a/modules/metacpan/files/default/home/brad/ssh/authorized_keys b/modules/metacpan/files/default/home/brad/ssh/authorized_keys index f730cd66..5bd2bd89 100644 --- a/modules/metacpan/files/default/home/brad/ssh/authorized_keys +++ b/modules/metacpan/files/default/home/brad/ssh/authorized_keys @@ -1,2 +1,4 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCvboGh/Ulrb6JzdNVwOEM1+YoixRxcJAK2KaY/a8Tm7S6PM0lcx5+IesG4nDV5zIA+6hikXTS4aE6itZJtXf4hH3vwWO+W7Tn/HcmduhbXmHvZ0/IuFaOU2xLMhSaDUMOmylytRTmFrnSppRErg0hpe5o6PE2zDFYCTwZu31YgDhgbgJKwDsEekp17VvwUo0sFeKdh72WAQ+sSzl7yVSZ6K+1RwsHn57Oq0aAJYJPfw1yRTCsqcNU8h+i1ul0AWt4+nzP6095jcTbXx7cfCcjfDcGXC/PleOo+aak0LiTf1EPI1WqcSqgec9y05RgdOfWAr895U+W6xTVB1dx3plrtwA7l+0ESiiEQQrc4Dft4Uws7jycODbL8UWPRroePNscDnqLG/FprD6Zz7/JG8iLwVhQS6T7bFHxKJPq0Q7VeTi2cQBt6yV1z35+3433cR2zR3vTtDkflbkBnbPwumXTCmaefcJP76yv/ZNkfYRM8rbqVLuUvzQOg8oepX/8TeevPdxHtkTkRnFc2wjN3ZXqMHlGDm6HaHsYdwHxixrZwm4TJM2lZD97e4S3QdLyr/j6ATrxizirzDBbTQVAZAbDWgHZk8vdAY5M1ZtuUz2fCV5nYTJ6CFvxHSVJXhYEYaVbirb7MbVm9Si8WQ5Tec23Ct1Nbig8Fc0LU4G5U6+XQPQ== Brad Lhotsky -ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDL4q+2sevRNuJ4yM+fKbPVEhmZpqfetFJtb+PzRWPM2blPQvm0wXKzlzSk+I/7wDjrn7y9fZDcw7OBM5ywSvdkxERHpASnChr7dBHE/D7zZb8ek+/bOmnB2CqYb51hP26qExHo5aV99DmEjGLanmFZplTp8sKpcnCuJpD2G2BSQTvlQ1PVtsZZZN6MNI0L5a9aeHpWPZJkVgjfdz2RKsZ5G6ELgphOPBWEnURpreJZHpDHFWyNa1/ma9o13tizkFvf+v3aPEebEXJDt8aYRp0LXt40SG8XTjlD2a7Z6JsudmFcNJOcnRsJdz+EGDj2w/PplsqcV1MB/Z8a1ko6gPS1xFF25EekIYLA4ykCVVPwu82lbPOhQe5SxPK+TkNtGpL8gNqrZIoNqp1/Lufg1GGBB7rSN79MD9/c7eccfYW3DNRefqBje1ITNTs0qWtMOsuFNf6m5o8yTAyK+BAj/YPq8ItfVTlXFtPoFQ/LcOqkuM9/ZW1OGccdK93UuJSx8PXkOuoU1br8sQ6hJRFDb/hiGYffIwrZtB+HRAJeJ1dboZrt2JBls20VOiy1cbzoieFWAW9sSTyHBxTTxMi2WmYCcbr+lXDbtAouffKwrC1ZhKNgm2TqBfbMhMCV+F+JgMkoKmyO9TIOrrvuv0Sa3SvoUHNvgcYLO0G8K2lYSo+RjQ== Brad Lhotsky +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDLkwqliY0E+R9sqX20cAeRfSh+aRcliS5O6/xrgHXKhxCYSBldyXFZi9NJTnJSQsHoLPy7fr10wLGdFFZP+Rn+hh8Fx/4uMa8xxKShvpMyjsnrCsBmth/7S3AASa9LxS1rpJeTXUN0zwIkNvuB95orpSfH97OEoUXn3vOFn/oea2MwtJeaN/kMv9cJbmQmSQRE+1v408PK27T1TBawPTW9/QBntYcJAkp0dPpTL7RwkIS6P8fNNT/qZVxTZBmFMgk+Yn5akEWUt3hx+hPWaqzP0V/kLtjZt1Phq37HzbMqrxI4KiMkQVnjMjvYr9gTNu0wyN2H4xWZhaZ8IATQr/RbaR8CiCWrdnixB0cOEp6mJcpufDRf349E5B12amHaJAhF97d4Hsu9tpwpGC5pxF83TdA6p9+MX29PYPVmMlWL5/sFZj3A3gHWdeYkqZH3V5kRtD3JyF8vOu9Mrhct1qJ6kLcb9oeU9sXqVO0UB2J/XHfmVB0E2dJCiew+5MDQuw9bPlHfQQ9287pEYyX3MCEBxLBmstdLHoXvnihkUCYWT1Ljl3MQCSxfMjwJaafPqbYvHfDYeJ+X9S+4r+KM90fDTIzWZBurP2geNkh7wFxwzpaMxbMp15AmFQTKomda9TxYq35PYgaFJ18tg8GOhibdXVVrE0d7+N9usNEmUgVAqw== /Users/blhotsky/.ssh/blhotsky@spaceheater.rsa +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDIy3OrlYIivp3dosXzy1CCiCNcvEls/5fRcvFnU24Lc/G51yRIEtLImuH28lx4UWbqE88U8nVm16Fbu6pzh+cHv2cb5wZ0fXd8qYxQLnWMMA4xE0+BJ+bOU2WEHTIPZmWtQVTGpljYJQ9kGKjOr/25GYvbjJM/sRblracj4R5nu7ru+YZT4miU97+/el+2Ln4ln2qbrycmTdbse4JHOcP0r3k4jYDHLenH/XGKwJtN/aAZuv6gCHJkt2czk7NKwZTIocvlHSjMxhL9nRTZyUNGeHOpPWFGw+IMPLlaA7xzM0xwnpUe5CyabYJVwpNaoM722EbQJYiCWZQDCIWOKJTj0PHdnxxP19IRHpTnrgzzuJSjXFc7K6qugtS1c82fd4a3Bb0vMzG+O9ka/lnNqDmm2WyuBOuuEcyASLyB7fyoPA3ucvz6eI4dKnTU7DCSl5+AMnLSq72YkT1QcOb9KJF7tsRgBHQzdiUfJJDAUe5/Wbd+H2MgU3q2UwWt4+lDNBvaa+BgQgv00Crpuj8WvmhNd710+27pscolBIWug1z/I5+ldaG+e5EBY3yzaUyaQt1fT9WSwZVSIq/zktgNOAKmKxfuDSb/nW/NZ3drneQ3Qaq/02iEADI0TN9lQM6wJfKCNJpjPr3I6bCvJm0r9jfJeYr245+Yu71iHv6j7OTcSQ== .ssh/legacy.rsa +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDbjvdWSeP33rk4faRhTyXBOSIrMsRWrwf5PcIQ7CzpYlh+XtDNVgKWeDLrWzFYuTWXkP2c5+B2OfGaxPFUxpd+AfJo1sgM0um9e9vzPmKvcfh0jOsIcDgXGMZ/R5vceAPvIAE6UNIV8qDTvAdOeym4kvUmffiHWQ9gq+QkALz9DjzkZAbR7djjKrnrRA6xjqpYYUQjE57talE3vkvotNW63W0znATKR32Gr2vMNW7Py2XhUekAsR1a4b4l1rt4EqCzYRV5dDWBJajKAYy09rjwbvDwqXRunUsxRupCYXXl8mfYezUIb5JZYSXe4qn/P+d+7RosNnkgxLS5vy/qSnoQC71fmdovHQld5upq9C2mbfpdjBm5zF5b7puDXClfMil3FtgAV39BqJJpZ2l+o21R2CI3WsugDLGlyuUPDveY/pXVQeICzOFTWal5h/ATDskLibetuHsedO7lS1fhEFTkFocnGjKAGYJ531AY4gehIMVsI+U9CUMKiyAifxdUQKk076EviC/7DCvWXIubLMW02yLo3pgm03KWeGMWVcPpfsUEsUuaY+Ff/ZeABBbSgkzLm8IFzhvtiLc7iH+wDtdc9NhKWHeT/+wlikTzoBf+YY2ZR4qaaxDhtCya+YIL5nysLVZZ29UufWgxqwp6kvSdWSGot3OnXvMFXfK3yfbrkw== brad@last-unicorn.home.db0.us +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEWTimZbGAKEOMRoR8J1i3mMi+yi71KLQH7/UmJckFGD brad@mini.home.db0.us diff --git a/modules/metacpan/manifests/init.pp b/modules/metacpan/manifests/init.pp index dd48355e..c8b0f94c 100644 --- a/modules/metacpan/manifests/init.pp +++ b/modules/metacpan/manifests/init.pp @@ -69,6 +69,10 @@ $websites = hiera_hash('metacpan::web::starman', {}) create_resources('metacpan::web::starman', $websites) + # Docker backed sites + $docker_sites = hiera_hash('metacpan::web::docker', {}) + create_resources('metacpan::web::docker', $docker_sites) + # Swat site $swat = hiera_hash('metacpan::system::swat', {}) create_resources('metacpan::system::swat', $swat) diff --git a/modules/metacpan/manifests/system/mongodb.pp b/modules/metacpan/manifests/system/mongodb.pp index ad5f3752..003abca6 100644 --- a/modules/metacpan/manifests/system/mongodb.pp +++ b/modules/metacpan/manifests/system/mongodb.pp @@ -1,5 +1,5 @@ class metacpan::system::mongodb { - # Needed for gh.metacpan.org - package { 'mongodb': ensure => present } + # Was needed for gh.metacpan.org - now using docker + package { 'mongodb': ensure => absent } } diff --git a/modules/metacpan/manifests/web/docker.pp b/modules/metacpan/manifests/web/docker.pp new file mode 100644 index 00000000..64c32518 --- /dev/null +++ b/modules/metacpan/manifests/web/docker.pp @@ -0,0 +1,49 @@ +# === Definition metacpan::web::starman +# +# In Hiera: +# +# metacpan::web::docker: +# +# +define metacpan::web::docker ( + + # nginx + $vhost_aliases, # Required as main domain now here + $vhost_html = '', + $vhost_ssl_only = false, + $vhost_ssl = $vhost_ssl_only, + + $vhost_extra_proxies = {}, + $vhost_extra_configs = {}, + + # docker port + $docker_port = 'UNSET', +) { + + metacpan_nginx::vhost { $name: + html => $vhost_html, + ssl => $vhost_ssl, + ssl_only => $vhost_ssl_only, + bare => true, + aliases => $vhost_aliases, + } + + # Add all the extra proxy / config gumpf + create_resources('metacpan_nginx::proxy', $vhost_extra_proxies, { + target => "http://localhost:${docker_port}/", + site => $name, + location => '', + }) + + create_resources('metacpan::web::nginx_extra_confs', $vhost_extra_configs, { + site => $name, + }) + + # Setup rev-proxy to starman + metacpan_nginx::proxy { "proxy_${name}": + target => "http://localhost:${docker_port}/", + site => $name, + location => '', + } + +} diff --git a/modules/metacpan/manifests/web/production.pp b/modules/metacpan/manifests/web/production.pp index b4d124ab..03055f99 100644 --- a/modules/metacpan/manifests/web/production.pp +++ b/modules/metacpan/manifests/web/production.pp @@ -30,14 +30,4 @@ notify => Starman::Service['metacpan-api'], } - file { "/home/${user}/github-meets-cpan/environment.json": - ensure => file, - owner => $user, - group => $group, - source => "puppet:///private/github-meets-cpan/environment.json", - require => Metacpan::Gitrepo['gitrepo_github-meets-cpan'], # after repo created - notify => Starman::Service['github-meets-cpan'], - } - - }