Merge ~jugmac00/launchpad-mojo-specs:add-specs-for-copy-archive-publisher into launchpad-mojo-specs:master

Proposed by Jürgen Gmach
Status: Merged
Approved by: Jürgen Gmach
Approved revision: 5b529b1564a67c8a4464a76efee12f814616f1de
Merge reported by: Jürgen Gmach
Merged at revision: 5b529b1564a67c8a4464a76efee12f814616f1de
Proposed branch: ~jugmac00/launchpad-mojo-specs:add-specs-for-copy-archive-publisher
Merge into: launchpad-mojo-specs:master
Diff against target: 260 lines (+80/-0)
3 files modified
lp/bundle.yaml (+70/-0)
lp/configs/custom-secgroups-dogfood.yaml (+5/-0)
lp/configs/custom-secgroups-qastaging.yaml (+5/-0)
Reviewer Review Type Date Requested Status
Colin Watson (community) Approve
Review via email: mp+453316@code.launchpad.net

Commit message

Add mojo specs for copy-archive-publisher

To post a comment you must log in.
Revision history for this message
Jürgen Gmach (jugmac00) wrote :

The comments after the lines are little helpers for me while working on this MP, as then it is easier to see what goes in which environment. I will remove them before merging.

Revision history for this message
Colin Watson (cjwatson) :
Revision history for this message
Colin Watson (cjwatson) :
review: Approve
Revision history for this message
Colin Watson (cjwatson) :
review: Approve
Revision history for this message
Colin Watson (cjwatson) :

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/lp/bundle.yaml b/lp/bundle.yaml
2index 44a98b7..bc1c571 100644
3--- a/lp/bundle.yaml
4+++ b/lp/bundle.yaml
5@@ -23,6 +23,7 @@
6 {%- set devel = False %}
7 {%- set domain_bzr = "" %}
8 {%- set domain_cron_control = "" %}
9+{%- set domain_derived_archive = "" %}
10 {%- set domain_git = "" %}
11 {%- set domain_librarian_aliases = "[]" %}
12 {%- set domain_lists = "" %}
13@@ -32,9 +33,12 @@
14 {%- set domain_ppa_public_alt = "" %}
15 {%- set domain_ppa_buildd = "" %}
16 {%- set domains_ppa_certs_required = "" %}
17+{%- set domain_test_rebuild = "" %}
18+{%- set domain_test_rebuild_aliases = "[]" %}
19 {%- set enable_appserver_frontends = False %}
20 {%- set enable_buildd_manager = False %}
21 {%- set enable_debian_importer = False %}
22+{%- set enable_launchpad_copy_archive_publisher = False %}
23 {%- set enable_launchpad_ftpmaster = False %}
24 {%- set enable_launchpad_ppa = False %}
25 {%- set enable_launchpad_scripts = False %}
26@@ -50,6 +54,7 @@
27 {%- set internal_branch_by_id_root = "" %}
28 {%- set is_demo = True %}
29 {%- set launchpad_appserver_num_units = 1 %}
30+{%- set launchpad_copy_archive_publisher_active = False %}
31 {%- set launchpad_assets_num_units = 1 %}
32 {%- set launchpad_ftpmaster_publisher_active = False %}
33 {%- set launchpad_ftpmaster_uploader_active = False %}
34@@ -126,6 +131,7 @@
35 {%- set domain = "launchpad.net" %}
36 {%- set domain_bzr = "bazaar.launchpad.net" %}
37 {%- set domain_cron_control = "cron-control.lp.internal" %}
38+{%- set domain_derived_archive = "derived.archive.canonical.com" %}
39 {%- set domain_ftpmaster = "ftpmaster.internal" %}
40 {%- set domain_git = "git.launchpad.net" %}
41 {%- set domain_librarian = "launchpadlibrarian.net" %}
42@@ -137,6 +143,8 @@
43 {%- set domain_ppa_public_alt = "ppa.launchpadcontent.net" %}
44 {%- set domain_ppa_buildd = "private-ppa.buildd" %}
45 {%- set domains_ppa_certs_required = (domain_ppa_private, domain_ppa_public_alt, domain_ppa_private_alt) %}
46+{%- set domain_test_rebuild = "rebuild-test.internal" %}
47+{%- set domain_test_rebuild_aliases = "['toolchain.ubunut.com', 'rebuild-test.ubuntu.com']" %}
48 {%- set domain_xmlrpc_private = "xmlrpc.lp.internal" %}
49 {%- set enable_appserver_frontends = True %}
50 {%- set enable_buildd_manager = True %}
51@@ -158,6 +166,8 @@
52 {%- set is_demo = False %}
53 {%- set launchpad_appserver_constraints = "cores=16 mem=16G root-disk-source=volume root-disk=50G" %}
54 {%- set launchpad_appserver_num_units = 4 %}
55+{%- set launchpad_copy_archive_publisher_constraints = "cores=4 mem=8G root-disk-source=volume root-disk=50G" %}
56+{%- set launchpad_copy_archive_publisher_database_name = "launchpad_prod_copy_archive_publisher" %}
57 {%- set launchpad_ppa_lb_constraints = "cores=4 mem=4096M root-disk-source=volume root-disk=50G" %}
58 {%- set launchpad_ppa_publisher_constraints = "cores=4 mem=16G root-disk-source=volume root-disk=50G" %}
59 {%- set launchpad_ppa_publisher_database_name = "launchpad_prod_ppa_publisher" %}
60@@ -324,17 +334,20 @@
61 {%- set domain = "qastaging.launchpad.net" %}
62 {%- set domain_bzr = "bazaar.qastaging.launchpad.net" %}
63 {%- set domain_cron_control = "cron-control.qastaging.lp.internal" %}
64+{%- set domain_derived_archive = "derived-archive.qastaging.content.paddev.net" %}
65 {%- set domain_ftpmaster = "archive.qastaging.content.paddev.net" %}
66 {%- set domain_git = "git.qastaging.paddev.net" %}
67 {%- set domain_librarian = "qastaging.launchpadlibrarian.net" %}
68 {%- set domain_librarian_aliases = "['qastaging.launchpadlibrarian.com', 'qastaging.launchpadlibrarian.org']" %}
69 {%- set domain_ppa_private = "private-ppa.qastaging.content.paddev.net" %}
70 {%- set domain_ppa_public = "ppa.qastaging.content.paddev.net" %}
71+{%- set domain_test_rebuild = "rebuild-test.qastaging.content.paddev.net" %}
72 {%- set domains_ppa_certs_required = (domain_ppa_public, domain_ppa_private) %}
73 {%- set domain_xmlrpc_private = "xmlrpc.qastaging.lp.internal" %}
74 {%- set enable_appserver_frontends = True %}
75 {%- set enable_buildd_manager = True %}
76 {%- set enable_debian_importer = True %}
77+{%- set enable_launchpad_copy_archive_publisher = True %}
78 {%- set enable_launchpad_ftpmaster = True %}
79 {%- set enable_launchpad_ppa = True %}
80 {%- set enable_launchpad_scripts = True %}
81@@ -349,6 +362,9 @@
82 {%- set launchpad_appserver_constraints = "cores=4 mem=4G root-disk-source=volume root-disk=20G" %}
83 {%- set launchpad_appserver_num_units = 2 %}
84 {%- set launchpad_buildd_manager_constraints = "cores=4 mem=4G root-disk-source=volume root-disk=50G" %}
85+{%- set launchpad_copy_archive_publisher_active = True %}
86+{%- set launchpad_copy_archive_publisher_constraints = "cores=4 mem=16G root-disk-source=volume root-disk=50G" %}
87+{%- set launchpad_copy_archive_publisher_database_name = "launchpad_qastaging_copy_archive_publisher" %}
88 {%- set launchpad_debian_importer_constraints = "cores=2 mem=4G root-disk-source=volume root-disk=300G" %}
89 {%- set launchpad_ftpmaster_publisher_active = True %}
90 {%- set launchpad_ftpmaster_uploader_active = True %}
91@@ -420,9 +436,11 @@
92 {%- set database_name = "launchpad_dogfood" %}
93 {%- set debian_importer_database_name = "launchpad_dogfood_debian_importer" %}
94 {%- set domain = "dogfood.paddev.net" %}
95+{%- set domain_derived_archive = "derived-archive.dogfood.content.paddev.net" %}
96 {%- set domain_git = "git.dogfood.paddev.net" %}
97 {%- set domain_librarian = "dogfood.launchpadlibrarian.net" %}
98 {%- set domain_librarian_aliases = "['dogfood.launchpadlibrarian.com', 'dogfood.launchpadlibrarian.org']" %}
99+{%- set domain_test_rebuild = "rebuild-test.dogfood.content.paddev.net" %}
100 {%- set domain_xmlrpc_private = "xmlrpc.dogfood.lp.internal" %}
101 {%- set enable_appserver_frontends = True %}
102 {%- set enable_buildd_manager = True %}
103@@ -488,10 +506,12 @@
104 {%- set devel = True %}
105 {%- set domain = "launchpad.test" %}
106 {%- set domain_cron_control = "cron-control.launchpad.test" %}
107+{%- set domain_derived_archive = "derived-archive.test" %}
108 {%- set domain_ftpmaster = "archive.ubuntu.test" %}
109 {%- set domain_librarian = "launchpadlibrarian.test" %}
110 {%- set domain_ppa_private = "private-ppa.launchpad.test" %}
111 {%- set domain_ppa_public = "ppa.launchpad.test" %}
112+{%- set domain_test_rebuild = "rebuild-test.test" %}
113 {%- set domain_xmlrpc_private = "xmlrpc-private.launchpad.test" %}
114 {%- set enable_appserver_frontends = True %}
115 {%- set enable_buildd_manager = True %}
116@@ -502,6 +522,8 @@
117 {%- set enable_librarian_frontend = True %}
118 {%- set http_proxy = "" %}
119 {%- set internal_branch_by_id_root = "http://bazaar-internal.launchpad.test/" %}
120+{%- set launchpad_copy_archive_publisher_constraints = "" %}
121+{%- set launchpad_copy_archive_publisher_database_name = "launchpad_dev" %}
122 {%- set launchpad_ftpmaster_publisher_constraints = "" %}
123 {%- set launchpad_ftpmaster_publisher_database_name = "launchpad_dev" %}
124 {%- set launchpad_ftpmaster_uploader_constraints = "" %}
125@@ -937,6 +959,32 @@ applications:
126 # Changing this may require manual cleanup in /etc/apache2/sites-*/.
127 servername: "{{ domain_ftpmaster }}"
128 {%- endif %}
129+{%- if enable_launchpad_copy_archive_publisher %}
130+ launchpad-copy-archive-publisher:
131+ charm: ch:launchpad-copy-archive-publisher
132+ channel: stable
133+ # the revision needs to be bumped once the latest MP got merged
134+ revision: 89
135+ options: {{ base_options("launchpad-ppa-publisher") }}
136+ active: {{ launchpad_copy_archive_publisher_active }}
137+ databases: |
138+ db:
139+ name: "{{ launchpad_copy_archive_publisher_database_name }}"
140+ domain_derived_archive: "{{ domain_derived_archive }}"
141+ domain_test_rebuild: "{{ domain_test_rebuild }}"
142+ domain_test_rebuild_aliases: "{{ domain_test_rebuild_aliases }}"
143+ frontend-copy-archive-publisher:
144+ charm: ch:apache2
145+ channel: stable
146+ constraints: "{{ launchpad_copy_archive_publisher_constraints }}"
147+ revision: 41
148+ num_units: 1
149+ options:
150+ disable_modules: "autoindex"
151+ server_signature: "Off"
152+ servername: "{{ domain_derived_archive }}"
153+
154+{%- endif %}
155 {%- if enable_launchpad_ppa %}
156 launchpad-ppa-publisher:
157 charm: ch:launchpad-ppa-publisher
158@@ -1404,6 +1452,9 @@ relations:
159 - ["launchpad-frontend-extras:apache-website", "frontend-main:apache-website"]
160 {%- endif %}
161 - ["launchpad-assets:loadbalancer", "services-lb:reverseproxy"]
162+{%- if enable_launchpad_copy_archive_publisher %}
163+ - ["launchpad-copy-archive-publisher:apache-website", "frontend-copy-archive-publisher:apache-website"]
164+{%- endif %}
165 {%- if enable_librarian_frontend %}
166 - ["launchpad-librarian:vhost-config", "frontend-librarian:vhost-config"]
167 - ["launchpad-frontend-extras:librarian-logs", "frontend-librarian:juju-info"]
168@@ -1437,6 +1488,9 @@ relations:
169 {%- if enable_debian_importer %}
170 - ["launchpad-debian-importer:db", "external-services:db"]
171 {%- endif %}
172+{%- if enable_launchpad_copy_archive_publisher %}
173+ - ["launchpad-copy-archive-publisher:db", "external-services:db"]
174+{%- endif %}
175 {%- if enable_launchpad_ftpmaster %}
176 - ["launchpad-ftpmaster-publisher:db", "external-services:db"]
177 - ["launchpad-ftpmaster-uploader:db", "external-services:db"]
178@@ -1464,6 +1518,9 @@ relations:
179 {%- if enable_buildd_manager %}
180 - ["launchpad-buildd-manager:db", "postgresql:db"]
181 {%- endif %}
182+{%- if enable_launchpad_copy_archive_publisher %}
183+ - ["launchpad-copy-archive-publisher:db", "postgresql:db"]
184+{%- endif %}
185 {%- if enable_debian_importer %}
186 - ["launchpad-debian-importer:db", "postgresql:db"]
187 {%- endif %}
188@@ -1505,6 +1562,9 @@ relations:
189 {%- if enable_buildd_manager %}
190 - ["launchpad-buildd-manager", "rabbitmq-server"]
191 {%- endif %}
192+{%- if enable_launchpad_copy_archive_publisher %}
193+ - ["launchpad-copy-archive-publisher", "rabbitmq-server"]
194+{%- endif %}
195 {%- if enable_debian_importer %}
196 - ["launchpad-debian-importer", "rabbitmq-server"]
197 {%- endif %}
198@@ -1531,6 +1591,9 @@ relations:
199 - ["postfix-relay", "launchpad-buildd-manager"]
200 {%- endif %}
201 - ["postfix-relay", "launchpad-debian-importer"]
202+{%- if enable_launchpad_copy_archive_publisher %}
203+ - ["postfix-relay", "launchpad-copy-archive-publisher"]
204+{%- endif %}
205 {%- if enable_launchpad_ftpmaster %}
206 - ["postfix-relay", "launchpad-ftpmaster-publisher"]
207 - ["postfix-relay", "launchpad-ftpmaster-uploader"]
208@@ -1561,6 +1624,9 @@ relations:
209 {%- if enable_buildd_manager %}
210 - ["nrpe", "launchpad-buildd-manager"]
211 {%- endif %}
212+{%- if enable_launchpad_copy_archive_publisher %}
213+ - ["nrpe", "frontend-copy-archive-publisher:nrpe-external-master"]
214+{%- endif %}
215 {%- if enable_debian_importer %}
216 - ["nrpe", "launchpad-debian-importer"]
217 {%- endif %}
218@@ -1605,6 +1671,10 @@ relations:
219 - ["telegraf", "services-lb:juju-info"]
220 - ["telegraf", "services-lb:statistics"]
221 - ["telegraf", "assets-apache2:juju-info"]
222+{%- if enable_launchpad_copy_archive_publisher %}
223+ - ["telegraf", "frontend-copy-archive-publisher:juju-info"]
224+ - ["telegraf", "frontend-copy-archive-publisher:apache-website"]
225+{%- endif %}
226 {%- if enable_launchpad_ftpmaster %}
227 - ["telegraf", "ftpmaster-apache2:juju-info"]
228 - ["telegraf", "ftpmaster-apache2:apache-website"]
229diff --git a/lp/configs/custom-secgroups-dogfood.yaml b/lp/configs/custom-secgroups-dogfood.yaml
230index af733ce..003f3ea 100644
231--- a/lp/configs/custom-secgroups-dogfood.yaml
232+++ b/lp/configs/custom-secgroups-dogfood.yaml
233@@ -28,6 +28,11 @@ applications:
234 type: neutron
235 rules:
236 - dogfood-rsync-logs
237+ launchpad-copy-archive-publisher:
238+ type: neutron
239+ rules:
240+ - dogfood-http
241+ - dogfood-rsync-logs
242 launchpad-debian-importer:
243 type: neutron
244 rules:
245diff --git a/lp/configs/custom-secgroups-qastaging.yaml b/lp/configs/custom-secgroups-qastaging.yaml
246index 4b01960..14adce5 100644
247--- a/lp/configs/custom-secgroups-qastaging.yaml
248+++ b/lp/configs/custom-secgroups-qastaging.yaml
249@@ -33,6 +33,11 @@ applications:
250 - qastaging-mainsite
251 - qastaging-rsync-logs
252 - qastaging-xmlrpc
253+ launchpad-copy-archive-publisher:
254+ type: neutron
255+ rules:
256+ - qastaging-http
257+ - qastaging-rsync-logs
258 launchpad-debian-importer:
259 type: neutron
260 rules:

Subscribers

People subscribed via source and target branches