diff --git a/files/reg-server/cron-prod b/files/reg-server/cron-prod
deleted file mode 100644
index 743604cc56..0000000000
--- a/files/reg-server/cron-prod
+++ /dev/null
@@ -1,2 +0,0 @@
-#SHELL=/bin/bash
-#*/5 * * * * root cd /var/lib/reg-server/ && reg server -r registry.fedoraproject.org --once |& grep -vi INFO |& grep -vi WARNING
diff --git a/files/reg-server/cron-stg b/files/reg-server/cron-stg
deleted file mode 100644
index af5898251f..0000000000
--- a/files/reg-server/cron-stg
+++ /dev/null
@@ -1,2 +0,0 @@
-#SHELL=/bin/bash
-#*/5 * * * * root cd /var/lib/reg-server/ && reg server -r registry.stg.fedoraproject.org --once |& grep -vi INFO |& grep -vi WARNING
diff --git a/files/reg-server/fedora.png b/files/reg-server/fedora.png
deleted file mode 100644
index eeeb70c868..0000000000
Binary files a/files/reg-server/fedora.png and /dev/null differ
diff --git a/files/reg-server/repositories.html b/files/reg-server/repositories.html
deleted file mode 100644
index 71f7532c94..0000000000
--- a/files/reg-server/repositories.html
+++ /dev/null
@@ -1,98 +0,0 @@
-{{define "repositories"}}
-
-
-
-
-
-
-
-
-
-
-
-
- Fedora Container Registry
-
-
-
-
-
-
-
-
-
Fedora Container Registry
-
-
- {{ .RegistryDomain }}
-
-
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/files/reg-server/styles.css b/files/reg-server/styles.css
deleted file mode 100644
index 4880df9d2c..0000000000
--- a/files/reg-server/styles.css
+++ /dev/null
@@ -1,265 +0,0 @@
-@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,300');
-/* Have to use @import for the font, as you can only specify a single stylesheet */
-* {
- margin: 0;
- padding: 0;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-html {
- min-height: 100%;
- border-top: 10px solid #ECEEF1;
- border-bottom: 10px solid #ECEEF1;
- color: #61666c;
- font-weight: 300;
- font-size: 1em;
- font-family: 'Open Sans', sans-serif;
- line-height: 2em;
-}
-body {
- padding: 20px;
- -webkit-backface-visibility: hidden;
-}
-code {
- font-family: Inconsolata,monospace;
-}
-a {
- color: #61666c;
- text-decoration: none;
-}
-a:hover {
- color: #2a2a2a;
-}
-/*------------------------------------*\
- Wrapper
-\*------------------------------------*/
-.wrapper {
- margin: 0 auto;
- padding-top: 20px;
- max-width: 800px;
-}
-/*------------------------------------*\
- Demo block
-\*------------------------------------*/
-.block {
- font-size: .875em;
- margin: 20px 0;
- padding: 20px;
- color: #9099A3;
-}
-h1 {
- font-weight: 200;
- text-align: center;
- font-size: 1.4em;
- line-height: 3em;
- font-family: 'Museo Slab', 'Open Sans', monospace;
-}
-h3{
- font-weight: 100;
- text-align: center;
- font-size: 1.2em;
- line-height: 3em;
- font-family: 'Museo Slab', 'Open Sans', monospace;
-}
-
-form {
- text-align: center;
-}
-input {
- margin: 0 auto;
- font-size: 100%;
- vertical-align: middle;
- *overflow: visible;
- line-height: normal;
- font-family: 'Open Sans', sans-serif;
- font-size: 12px;
- font-weight: 300;
- line-height: 18px;
- display: inline-block;
- height: 20px;
- padding: 4px 32px 4px 6px;
- margin-bottom: 9px;
- font-size: 14px;
- line-height: 20px;
- color: #555555;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
- width: 196px;
- background-color: #ffffff;
- border: 1px solid #cccccc;
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
- -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
- -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
- -o-transition: border linear 0.2s, box-shadow linear 0.2s;
- transition: border linear 0.2s, box-shadow linear 0.2s;
- background: url('search.svg') no-repeat 211px center;
- background-size: auto 20px;
-}
-input:focus {
- border-color: rgba(82, 168, 236, 0.8);
- outline: 0;
- outline: thin dotted \9;
- /* IE6-9 */
-
- -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
- -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
- box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
-}
-input::-moz-focus-inner {
- padding: 0;
- border: 0;
-}
-input[type="search"] {
- margin-top: 20px;
- -webkit-box-sizing: content-box;
- -moz-box-sizing: content-box;
- box-sizing: content-box;
- -webkit-appearance: textfield;
- -webkit-transition: all 300ms ease-in;
- -moz-transition: all 300ms ease-in;
- -ms-transition: all 300ms ease-in;
- -o-transition: all 300ms ease-in;
- transition: all 300ms ease-in;
-}
-input[type="search"]::-webkit-search-decoration,
-input[type="search"]::-webkit-search-cancel-button {
- -webkit-appearance: none;
-}
-input[type="text"]{
- width: 100%;
- background: none;
-}
-a.clear,
-a.clear:link,
-a.clear:visited {
- color: #666;
- padding: 2px 0 2px 0;
- font-weight: 400;
- font-size: 14px;
- margin: 0px 0 0 20px;
- line-height: 14px;
- display: inline-block;
- border-bottom: transparent 1px solid;
- vertical-align: -10px;
- -webkit-transition: all 300ms ease-in;
- -moz-transition: all 300ms ease-in;
- -ms-transition: all 300ms ease-in;
- -o-transition: all 300ms ease-in;
- transition: all 300ms ease-in;
-}
-a.clear:hover {
- text-decoration: none;
- color: #333;
- cursor: pointer;
-}
-/*------------------------------------*\
- Table (directory listing)
-\*------------------------------------*/
-table {
- border-collapse: collapse;
- font-size: .875em;
- max-width: 100%;
- margin: 20px auto 0px auto;
-}
-tr {
- outline: 0;
- border: 0;
-}
-tr:hover td {
- background: #f6f6f6;
-}
-th {
- text-align: left;
- font-size: 1em;
- padding-right: 20px;
-}
-/* 2nd Column: Filename */
-th + th {
- width: 65%;
-}
-/* 3rd Column: Last Modified */
-/* 4th Column: Size */
-th + th + th + th {
- width: 5%;
-}
-tr td:first-of-type {
- padding-left: 10px;
- padding-right: 10px;
-}
-td {
- padding: 5px 0;
- outline: 0;
- border: 0;
- border-bottom: 1px solid #edf1f5;
- vertical-align: middle;
- text-align: left;
- -webkit-transition: background 300ms ease-in;
- -moz-transition: background 300ms ease-in;
- -ms-transition: background 300ms ease-in;
- -o-transition: background 300ms ease-in;
- transition: background 300ms ease-in;
-}
-td:last-child,
-th:last-child {
- text-align: right;
- padding-right: 5px;
-}
-td a {
- display: block;
-}
-tr.parent a {
- color: #9099A3;
-}
-.parent a:hover {
- color: #2a2a2a;
-}
-
-/*------------------------------------*\
- Loading Indicator
-\*------------------------------------*/
-.signal {
- border: 2px solid #333;
- border-radius: 15px;
- height: 15px;
- left: 50%;
- margin: -8px 0 0 -8px;
- opacity: 0;
- top: 50%;
- width: 15px;
- float: right;
- animation: pulsate 1s ease-out;
- animation-iteration-count: infinite;
-}
-
-@keyframes pulsate {
- 0% {
- transform: scale(.1);
- opacity: 0.0;
- }
- 50% {
- opacity: 1;
- }
- 100% {
- transform: scale(1.2);
- opacity: 0;
- }
-}
-
-/*------------------------------------*\
- Footer
-\*------------------------------------*/
-.footer {
- text-align: center;
- font-size: .75em;
- margin-top: 50px;
-}
-img {
- outline: none;
- border: none;
- height: 3em;
- max-width: 100%;
-}
diff --git a/files/reg-server/tags.html b/files/reg-server/tags.html
deleted file mode 100644
index 0100489b01..0000000000
--- a/files/reg-server/tags.html
+++ /dev/null
@@ -1,74 +0,0 @@
-{{define "tags"}}
-
-
-
-
-
-
-
-
-
- {{ .RegistryDomain }}/{{ .Name }}
-
-
-
-
- {{ .RegistryDomain }}/{{ .Name }}
-
-
-
- Name |
- Tag |
- Created |
-
- {{ range $key, $value := .Repositories }}
-
-
- {{ $value.Name }}
- |
-
- {{ $value.Tag }}
- |
-
- {{ $value.Created.Format "02 Jan, 2006 15:04:05 UTC" }}
- |
-
- {{ end }}
-
-
-
-
-
-
-
-
-
-{{end}}
diff --git a/playbooks/groups/sundries.yml b/playbooks/groups/sundries.yml
index 6a7c06e492..4fcc9c9f3a 100644
--- a/playbooks/groups/sundries.yml
+++ b/playbooks/groups/sundries.yml
@@ -91,7 +91,6 @@
tasks:
- import_tasks: "{{ tasks_path }}/motd.yml"
- - import_tasks: "{{ tasks_path }}/reg-server.yml"
handlers:
- import_tasks: "{{ handlers_path }}/restart_services.yml"
diff --git a/roles/fedora-web/main/files/redirects.conf.prod b/roles/fedora-web/main/files/redirects.conf.prod
index 808b3fb7b0..d44da97bc0 100644
--- a/roles/fedora-web/main/files/redirects.conf.prod
+++ b/roles/fedora-web/main/files/redirects.conf.prod
@@ -27,3 +27,7 @@ RewriteRule ^/([^/]+/)?(keys|verify)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,
RewriteCond %{HTTP_REFERER} .*fedorproject.*
RewriteRule .* http://mmcgrath.fedorapeople.org/spam.html [R=301,L]
+
+# registry.fedoraproject.org web interface previously served by reg-server
+RewriteCond %{HTTP_HOST} ^registry\.fedoraproject\.org$
+RewriteRule ^(index\.html|repo(.)*)?$ https://quay.io/organization/fedora/ [R=301,L]
diff --git a/roles/rsyncd/files/rsyncd.conf.sundries b/roles/rsyncd/files/rsyncd.conf.sundries
index 49e9387f93..dcdaf0c673 100644
--- a/roles/rsyncd/files/rsyncd.conf.sundries
+++ b/roles/rsyncd/files/rsyncd.conf.sundries
@@ -158,14 +158,6 @@ gid = root
read only = yes
hosts allow = 10.3.160.0/255.255.224.0 192.168.0.0/255.255.0.0
-[registry-index]
-comment = registry-index
-path = /var/lib/reg-server/static/
-uid = root
-gid = root
-read only = yes
-hosts allow = 10.3.160.0/255.255.224.0 192.168.0.0/255.255.0.0
-
[flatpak-index]
comment = flatpak-indexer output
path = /srv/web/registry-index
diff --git a/roles/rsyncd/files/rsyncd.conf.sundries-stg b/roles/rsyncd/files/rsyncd.conf.sundries-stg
index 49e9387f93..dcdaf0c673 100644
--- a/roles/rsyncd/files/rsyncd.conf.sundries-stg
+++ b/roles/rsyncd/files/rsyncd.conf.sundries-stg
@@ -158,14 +158,6 @@ gid = root
read only = yes
hosts allow = 10.3.160.0/255.255.224.0 192.168.0.0/255.255.0.0
-[registry-index]
-comment = registry-index
-path = /var/lib/reg-server/static/
-uid = root
-gid = root
-read only = yes
-hosts allow = 10.3.160.0/255.255.224.0 192.168.0.0/255.255.0.0
-
[flatpak-index]
comment = flatpak-indexer output
path = /srv/web/registry-index
diff --git a/tasks/reg-server.yml b/tasks/reg-server.yml
deleted file mode 100644
index 84bc5f0194..0000000000
--- a/tasks/reg-server.yml
+++ /dev/null
@@ -1,50 +0,0 @@
----
-- name: Install reg-server
- ansible.builtin.package:
- name: reg
- tags:
- - regserver
-
-- name: Copy reg-server repositories html template
- ansible.builtin.copy:
- src: "{{files}}/reg-server/repositories.html"
- dest: "/var/lib/reg-server/templates/repositories.html"
- tags:
- - regserver
-
-- name: Copy reg-server tags html template
- ansible.builtin.copy:
- src: "{{files}}/reg-server/tags.html"
- dest: "/var/lib/reg-server/templates/tags.html"
- tags:
- - regserver
-
-- name: Install cronjob file
- ansible.builtin.copy:
- src: "{{files}}/reg-server/cron-prod"
- dest: "/etc/cron.d/reg-server"
- when: env == "production"
- tags:
- - regserver
-
-- name: Install cronjob file - stg
- ansible.builtin.copy:
- src: "{{files}}/reg-server/cron-stg"
- dest: "/etc/cron.d/reg-server"
- when: env == "staging"
- tags:
- - regserver
-
-- name: Copy fedora icon
- ansible.builtin.copy:
- src: "{{files}}/reg-server/fedora.png"
- dest: "/var/lib/reg-server/static/fedora.png"
- tags:
- - regserver
-
-- name: Copy custom styles.css
- ansible.builtin.copy:
- src: "{{files}}/reg-server/styles.css"
- dest: "/var/lib/reg-server/static/css/styles.css"
- tags:
- - regserver