From 87bc0a8aeb9744155bac7714a1cbe5d1d3745452 Mon Sep 17 00:00:00 2001 From: Dan Poirier Date: Tue, 19 May 2015 13:04:44 -0400 Subject: [PATCH] 1 Genericize deploy information Fixes #1 --- conf/pillar/devs.sls | 31 +++++++++---------------------- conf/pillar/secrets.ex | 8 +++----- docs/backups.rst | 4 +--- docs/new_environments.rst | 17 ++++++++--------- docs/overview.rst | 2 +- fabfile.py | 10 ++++------ 6 files changed, 26 insertions(+), 46 deletions(-) diff --git a/conf/pillar/devs.sls b/conf/pillar/devs.sls index 83b4ce1..162265f 100644 --- a/conf/pillar/devs.sls +++ b/conf/pillar/devs.sls @@ -1,22 +1,9 @@ -users: - daaray: - public_key: - - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDAjwyvvD6fojZ47GDqEBR1uN8dEBtGTzyFnQ6rlJT01Lw628PhSY+XwZxG6RfQt2+cFVkYo9cGpHWyGM4hP65Ft1XNkOiXAsa9yoWykOAlqpOEMLEHZ0w5NsDP+uCextuVIEIaBu1pcvKgUlcSJlDhoCUF00DBbkYDpNKRY2f1AN49HdfXB+xGGKnb6xJtb4487fDsE10pGbPRWsvL2w2FzHFwt7a/1rQ03y6sFHZhURSW4jCwBKAvdNazVrL3A/cVXJEBa9Q1LSfvG18ILk8GOVT7gmQLLFOJAeSWK576PjIizBqB1wgIi3sSjCWS22BocONrifqQ9v/URA4E68R dray@caktusgroup.com - dpoirier: - public_key: - - ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAmFIbg8mdvn7MQajwpBWXdK+utvP7+d0f391Z+v2r79Pam3/9j8VFBH8mioAmp9b2iFL6DZeDOYWOIM5R3U/bIVvJ8/2kZpE+rItJRyuqYQp3ZbOkBTxmv1avRfX4LSaM4uvurtSHK+VFbRXRlSKr7gURM7d7pUXTsuqAuGiJeBRc492RhKsaRf21/7+X8LyUuIWmaGn/CRgn6SBtq1xTilCAlkiRFBbUR++qkHWonfImAeHN6EiIx9fwtvfjtJA8kW49t75io9HoIovA24psyfZZuMFYkiPzDtPDXSm0fhwx0IbAZc2W1iWqYLbrBZM7A3QGyF61JeafxuC+Jzm3Ow== dpoirier@caktusgroup.com - mlassiter: - public_key: - - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJ9no08KPk8en6zGNprbBVUOXZHVAeGsBLxY97Zan2/Xl5YdBnAl+0cW0jH9s/0EEpg/VhRazq2mVYtDjH1UvVRaOYym38FU54BjunU+ROejvIjzsVedfHhnre+nZ11uPapMSsVG1+k3R92c0k63XFP6fGSvu6eZZ+F7rC23f+W8mjCsxkRiNKEoEYd5z2BxfOWdv9zQ8P6jgPSKkWrADaHUMYf5T6lKiwseBy1FTik9+qdgFqpyAGi8dHuEY965CGCXlIN3HSuaHnbNx+RWIBzfx8EGZRzrgXUi/6Y7ZLm0qGEkX/e9zMreR9V7x8IEm7LsuihSixAPDoOr8VK29f mlasiter@caktusgroup.com - trevorray: - public_key: - - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCm56PvMfyIiOixO6r9+i3F0g10DMNmXZV8BzWQp/cORj24Q41TgWCZwziKqKkOS6OC6cTBkq5NU7qpRE8qZImfXg/sLEbHnVx0QtIM9ikYy+FUoZun85R5YGWwrwd6WgQh0RIaAT2gaJsyYbBJCb01kq3z5b9gqc/qyF/hmEIgpqV/vi/aJPPULOUN3cbkKt3wm25ysQtr3VsWSzQYn+7Ek+45229oeSdre2Vk3mtI6hQeKwA057WqwMcjCUUU0wdwmLtCAUe0pryhi2LE82YLc9o7v4CRWi0nOMcnhR4guqy6n+CvJs/oo4sfvwbh2ZdN3eXJ7kGJYT7YEE4m7OIZ tray@caktusgroup.com - lovewell: - public_key: - - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAB+wCuGhMEXvS1ys+Oox2BvQR+VhyaCr2/KgHTCg7txHTmEYcltyuwVKC0/uTKNFa/VBkgXMWa+6vVQUtDu9O4Yh+rZ0CCEulTwRx6w01oDipvg3SN4i4qbjHYvvA7D4WuXJ1KtKdqYqjxlOBqCbX9yqgvQm/Jntmr1ihKdWp5kKT7YliE47y0ab0kzJoPH4jTrXqKRVldpiJlUhHQbXj1uhSeN1uWYFblj2BivEfO78yR6n9mQRW/EN7CDcDRQJ99sgynEnOxHtpkpAyJZsHjSRgIrB8JUXKhSfSDINttdTNN5Th3vWq+2JdhOwpbgNfd3cJ9csvdTRjg7TfGifLBKmoEHVRg0WF0JR0YiF3YK5yayoJEJ3VeH9AAaXObUprjyiSPQqcF4zg5EY1ojgdPXNWw6gWs8aVjIrqmStQKYDy+G2s6l816hAsfg1Gf6P4ZoEdIelXgpLlzLbphocfmHujkonfN7QCgGWU8k1ABaf8MBzA1Xd5Dnbp/aQ1VCEmVRhY3T3dQp8S/SmFbn6zl27h3THCNFXkzOwpCA6+u2dhhWVgibO4xTU6DA1OCbQpZwcZvVNGGD5nBTHQRABgyU64C7ZtvKg1CHcXqM7ZCWpFZmuw3SVQdl8MK1RuhtjrB25LV5GcB9eY85hiElFlh+utKzJxLkyaU0rJDIw== lovewell@caktus007 - scottm: - public_key: - - ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAsbtDXLHRdkhG+szf07MsiwTTjEi6uVet5rKkvlsfWbbMJF5dDSkRqckjZS94XGGjyY3iy9qRPdSkgGXJ9xekhcOC6uV24riprdgvMs6Jrh1VCx55oND30o1/28VneJ5gm3BwQdAv6+GNVtBlcGph9gaSAKqs8NUKxs+LG7yHc9AWb8x3N/JXcsQY5XYINGCxx1rcBtJXu+lyhpjwMN98P8NFGE5VlGPpFo8AOwRLO0lHP8XjrWNELUeR9XrwxWt+fj93Kv3p08x3TcyfMcTYnHNbUWoGMKw/0jrYZPxh8w0SYvvAAseVXmxPQJxyP22QrQQMhLjyiplZKz1IzUGgciduVPFqx1tSWvka5IVal67LOrSE8rnmJXwo6gnEre8A9ipJWEy64441O9K2xBGKJe2dka2MB6oEROPowHfGQPyYyS0g7xjSi4DzUHkVirMk+dot32dR+i1v7WowUQ5yfCeMWYntGmn8YVfv0r1A3gRnvYUNB7Vz209CIe8+Aaa59egc6i1oMyZD43iL0y1AeooWzbfA44HUr+pXNrlKoqTBGDndkLxagM0081KvV4XIPaINAnJkH0YeGheiHpt5Un5/IxFATe4dVlKg749ZUIBQNDBLrYJtcyCUv6HAe5jQFxmCPkkp5+cKFz/FpRq7zQJIDfkanr54hHYeC0t4wzM= scottm@caktus005 - copelco: - public_key: - - ssh-dss AAAAB3NzaC1kc3MAAACBAP/dCNcAJED+pBsEwH01E4NU2xrvoB6H5gXkvQHWIKUuMF3MWXgSGhKpgVqLJKh+d0gwuKyI9344HM5dFs4z3E0JhI7Fg4uXIYu1SwuqnxO+D18WLVGt4gCn57JCjLy/c8LJWAHJWFb2v9t4fayC+oBiyEvpjI6VYIJnSvO3D4tjAAAAFQCNzcKi0sehN1Jw+zB6ccMlHt5E6wAAAIEAnW18UHG/O+RIkJazTJ7qFlOb79RS1nnvnHAvtfuiAPIBmeJcKoZkiQzeBYtFereSRHmSug9DsqHK6C5PrP36UMZYhDkqqp5gpJexmokI2kt3AVxJwro7cjy6Tq+0yt+lwqH4JEblybk7yPeRNC1ihnp2CSipC5LP1PydIcgN9/UAAACAeH1OxUzgCfpM06cfKL57gtjIS34ryCdkT2oYfYOANa8vahN2JqxB004o+z2CnQ9DkTqzzf9jUYI/qal19+zYhn8Bd/FdPVp+VTfRpR17fQKuTWrnF7g6jNVN2ltwHo6o99vrCzjHhJHZ2EXOODzAUrACptyfQv/ZCutkjAg44YE= copelco@montgomery.local +# Replace username1 and username2 with actual developer usernames and their +# public ssh keys +#users: +# username1: +# public_key: +# - ssh-rsa AAA...ABX user@example.com +# username2: +# public_key: +# - ssh-rsa AAA...ABX user2@example.com diff --git a/conf/pillar/secrets.ex b/conf/pillar/secrets.ex index 855d990..753b51b 100644 --- a/conf/pillar/secrets.ex +++ b/conf/pillar/secrets.ex @@ -4,23 +4,21 @@ secrets: newrelic_license_key: XXXXXX # Uncomment if using celery worker configuration # BROKER_PASSWORD: XXXXXX -# Only define MYSQL_PASSWORD if you need MySQL for migrations -# MYSQL_PASSWORD: XXXXXX # Iraq: - ONA_DOMAIN_IQ: ona-staging.caktusgroup.com + ONA_DOMAIN_IQ: ona-staging.example.com ONA_API_ACCESS_TOKEN_IQ: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ONA_PACKAGE_FORM_ID_IQ: 4 ONA_DEVICEID_VERIFICATION_FORM_ID_IQ: 5 # Jordan: - ONA_DOMAIN_JO: ona-staging.caktusgroup.com + ONA_DOMAIN_JO: ona-staging.example.com ONA_API_ACCESS_TOKEN_JO: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ONA_PACKAGE_FORM_ID_JO: 4 ONA_DEVICEID_VERIFICATION_FORM_ID_JO: 5 # Turkey: - ONA_DOMAIN_TR: ona-staging.caktusgroup.com + ONA_DOMAIN_TR: ona-staging.example.com ONA_API_ACCESS_TOKEN_TR: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ONA_PACKAGE_FORM_ID_TR: 4 ONA_DEVICEID_VERIFICATION_FORM_ID_TR: 5 diff --git a/docs/backups.rst b/docs/backups.rst index edc048f..e1d58b9 100644 --- a/docs/backups.rst +++ b/docs/backups.rst @@ -61,9 +61,7 @@ How to check that backups are working -----BEGIN PGP MESSAGE----- Version: GnuPG v1.4.11 (GNU/Linux) -* Get access to the GPG keypair used for the backups. (Someone on the project can - share them via Lastpass.) The Lastpass entry is named "Caktus Admin GPG Key Note". - Read the comments on the Lastpass entry for instructions to add the keypair to +* Get access to the GPG keypair used for the backups. Add the keypair to your GPG keypair. * Decrypt the file:: diff --git a/docs/new_environments.rst b/docs/new_environments.rst index 80d7460..f209899 100644 --- a/docs/new_environments.rst +++ b/docs/new_environments.rst @@ -19,8 +19,7 @@ a new server, to be referred to as the ``testing`` environment. a light-gray selector on a black background.) * Use an AMI (image) of Ubuntu 12.04 server, 64-bit, EBS - e.g. ubuntu-precise-12.04-amd64-server-20140408 (ami-d1f308a6) * Be sure to save the private key that is created, or use - an existing one you already own. (Caktus: key pairs are stored - in LastPass, search for CTS.) The AWS private key is only + an existing one you already own. The AWS private key is only needed until CTS has been deployed the first time, but it is essential until then. @@ -62,7 +61,7 @@ to multiple places in the CTS configuration files. For the purposes of this documentation, we'll assume we're adding a new environment named ``testing``, which will be accessed -at ``cts-testing.caktusgroup.com``. +at ``cts-testing.example.com``. #. Edit the fabfile (`fabfile.py` in the top directory). Create a new task near the top, modeled @@ -72,7 +71,7 @@ at ``cts-testing.caktusgroup.com``. @task def testing(): env.environment = 'testing' - env.hosts = ['cts-testing.caktusgroup.com'] + env.hosts = ['cts-testing.example.com'] env.master = env.hosts[0] #. In the fabfile, add the new environment to ``SERVER_ENVIRONMENTS`` near the top:: @@ -94,7 +93,7 @@ at ``cts-testing.caktusgroup.com``. environment: testing - domain: cts-testing.caktusgroup.com + domain: cts-testing.example.com repo: url: git@github.com:theirc/CTS.git @@ -144,19 +143,19 @@ at ``cts-testing.caktusgroup.com``. newrelic_license_key: zzzzz # Iraq: - ONA_DOMAIN_IQ: ona-staging.caktusgroup.com + ONA_DOMAIN_IQ: ona-staging.example.com ONA_API_ACCESS_TOKEN_IQ: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ONA_PACKAGE_FORM_ID_IQ: 4 ONA_DEVICEID_VERIFICATION_FORM_ID_IQ: 5 # Jordan: - ONA_DOMAIN_JO: ona-staging.caktusgroup.com + ONA_DOMAIN_JO: ona-staging.example.com ONA_API_ACCESS_TOKEN_JO: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ONA_PACKAGE_FORM_ID_JO: 4 ONA_DEVICEID_VERIFICATION_FORM_ID_JO: 5 # Turkey: - ONA_DOMAIN_TR: ona-staging.caktusgroup.com + ONA_DOMAIN_TR: ona-staging.example.com ONA_API_ACCESS_TOKEN_TR: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ONA_PACKAGE_FORM_ID_TR: 4 ONA_DEVICEID_VERIFICATION_FORM_ID_TR: 5 @@ -164,7 +163,7 @@ at ``cts-testing.caktusgroup.com``. # Uncomment and update username/password to enable HTTP basic auth # Comment out to enable access to the public to the site http_auth: - caktus: abc123 + testuser: testpass github_deploy_key: | -----BEGIN RSA PRIVATE KEY----- diff --git a/docs/overview.rst b/docs/overview.rst index e371428..4a2b66f 100644 --- a/docs/overview.rst +++ b/docs/overview.rst @@ -37,7 +37,7 @@ e.g. ``conf/pillar/staging/env.sls`` might contain:: environment: staging - domain: cts-staging.caktusgroup.com + domain: cts-staging.example.com repo: url: git@github.com:theirc/CTS.git diff --git a/fabfile.py b/fabfile.py index 94fede8..bf1bea4 100644 --- a/fabfile.py +++ b/fabfile.py @@ -29,21 +29,19 @@ @task def testing(): env.environment = 'testing' - env.hosts = ['ec2-54-146-90-35.compute-1.amazonaws.com'] + env.hosts = ['cts-testing.example.com'] @task def staging(): env.environment = 'staging' - env.hosts = ['cts-staging.rescue.org'] + env.hosts = ['cts-staging.example.com'] @task def production(): env.environment = 'production' - # This hostname for our own use to connect to the server to manage it. - # IRC might choose to use whatever domain they want for the web site. - env.hosts = ['cts.rescue.org'] + env.hosts = ['cts.example.com'] @task @@ -52,7 +50,7 @@ def instance(name): if name not in INSTANCES: abort("%s is not a valid instance; instances are %s" % (name, INSTANCES)) env.instance = name - # If these lines change, change conf/salt/project/db/init_sls + # If these lines change, change conf/salt/project/db/init.sls # and cts/settings/staging.py. env.db_name = 'cts_%s' % env.instance env.db_owner = 'cts_%s' % env.instance