diff --git a/files/httpd/fedorahosted-redirects.conf b/files/httpd/fedorahosted-redirects.conf new file mode 100644 index 0000000000..18e9c7d986 --- /dev/null +++ b/files/httpd/fedorahosted-redirects.conf @@ -0,0 +1,224 @@ +RewriteEngine On + +RewriteRule ^/fedora-commops/ticket/(.*) https://pagure.io/fedora-commops/issue/$1 [R=301] +RewriteRule ^/fedora-commops/report https://pagure.io/fedora-commops/issues [R=301] +RewriteRule ^/fedora-commops https://pagure.io/fedora-commops/ [R=301] + +RewriteRule ^/marketing-team/report https://pagure.io/fedora-marketing/issues [R=301] +RewriteRule ^/marketing-team/ticket/(.*) https://pagure.io/fedora-marketing/issue/$1 [R=301] +RewriteRule ^/marketing-team https://pagure.io/fedora-marketing [R=301] + +RewriteRule ^/fedora-project-schedule/report https://pagure.io/fedora-project-schedule/issues [R=301] +RewriteRule ^/fedora-project-schedule https://pagure.io/fedora-project-schedule [R=301] + +RewriteRule ^/firewalld https://github.com/t-woerner/firewalld [R=301] + +RewriteRule ^/fpaste https://pagure.io/fpaste [R=301] + +RewriteRule ^/rpmfluff https://pagure.io/rpmfluff [R=301] + +RewriteRule ^/weatheralert https://pagure.io/weatheralert [R=301] + +RewriteRule ^/create-tx-configuration https://pagure.io/create-tx-configuration [R=301] + +RewriteRule ^/fedora-magazine https://pagure.io/fedoramagazine-images [R=301] + +RewriteRule ^/newt https://pagure.io/newt [R=301] +RewriteRule ^/releases/n/e/newt/(.*) https://pagure.io/releases/newt/$1 [R=301] +RewriteRule ^/releases/n/e/newt https://pagure.io/releases/newt [R=301] + +Rewriterule ^/cloud/report https://pagure.io/atomic-wg/issues [R=301] +Rewriterule ^/cloud/ticket/(.*) https://pagure.io/atomic-wg/issue/$1 [R=301] +Rewriterule ^/cloud https://pagure.io/atomic-wg [R=301] + +RewriteRule ^/imapsync https://pagure.io/imapsync [R=301] +RewriteRule ^/releases/i/m/imapsync/(.*) https://pagure.io/releases/imapsync/$1 [R=301] +RewriteRule ^/releases/i/m/imapsync https://pagure.io/releases/imapsync [R=301] +RewriteRule ^/released/i/m/imapsync/(.*) https://pagure.io/releases/imapsync/$1 [R=301] +RewriteRule ^/released/i/m/imapsync https://pagure.io/releases/imapsync [R=301] + +RewriteRule ^/fedora-infrastructure/report https://pagure.io/fedora-infrastructure/issues [R=301] +RewriteRule ^/fedora-infrastructure/ticket/(.*) https://pagure.io/fedora-infrastructure/issue/$1 [R=301] +RewriteRule ^/fedora-infrastructure https://pagure.io/fedora-infrastructure [R=301] + +RewriteRule ^/fesco/report https://pagure.io/fesco/issues [R=301] +RewriteRule ^/fesco/ticket/(.*) https://pagure.io/fesco/issue/$1 [R=301] +RewriteRule ^/fesco https://pagure.io/fesco [R=301] + +Rewriterule ^/fedora-packager/report https://pagure.io/fedora-packager/issues [R=301] +RewriteRule ^/fedora-packager/ticket/(.*) https://pagure.io/fedora-packager/issue/$1 [R=301] +Rewriterule ^/fedora-packager https://pagure.io/fedora-packager [R=301] + +RewriteRule ^/rpkg/report https://pagure.io/rpkg/issues [R=301] +RewriteRule ^/rpkg/ticket/(.*) https://pagure.io/rpkg/issue/$1 [R=301] +RewriteRule ^/rpkg https://pagure.io/rpkg [R=301] + +RewriteRule ^/fedpkg/report https://pagure.io/fedpkg/issues [R=301] +Rewriterule ^/fedpkg/ticket/(.*) https://pagure.io/fedpkg/issue/$1 [R=301] +Rewriterule ^/fedpkg https://pagure.io/fedpkg [R=301] + +RewriteRule ^/ELAPI/report https://pagure.io/ELAPI/issues [R=301] +RewriteRule ^/ELAPI/ticket/(.*) https://pagure.io/ELAPI/issue/$1 [R=301] +RewriteRule ^/ELAPI https://pagure.io/ELAPI [R=301] + +RewriteRule ^/irc-support-sig/report https://pagure.io/irc-support-sig/issues [R=301] +Rewriterule ^/irc-support-sig/ticket/(.*) https://pagure.io/irc-support-sig/issue/$1 [R=301] +RewriteRule ^/irc-support-sig https://pagure.io/irc-support-sig [R=301] + +RewriteRule ^/packager-sponsors/report https://pagure.io/packager-sponsors/issues [R=301] +Rewriterule ^/packager-sponsors/ticket/(.*) https://pagure.io/packager-sponsors/issue/$1 [R=301] +Rewriterule ^/packager-sponsors https://pagure.io/packager-sponsors [R=301] + +RewriteRule ^/epel/report https://pagure.io/epel/issues [R=301] +Rewriterule ^/epel/ticket/(.*) https://pagure.io/epel/issue/$1 [R=301] +RewriteRule ^/epel https://pagure.io/epel [R=301] + +RewriteRule ^/elfutils/wiki/(.*) https://sourceware.org/elfutils/$1 [R=301] +RewriteRule ^/elfutils https://sourceware.org/elfutils [R=301] +Rewriterule ^/releases/e/l/elfutils/(.*) https://sourceware.org/elfutils/ftp/$1 [R=301] + +RewriteRule ^/rpmdevtools/report https://pagure.io/rpmdevtools/issues [R=301] +RewriteRule ^/rpmdevtools/ticket/(.*) https://pagure.io/rpmdevtools/issue/$1 [R=301] +Rewriterule ^/rpmdevtools https://pagure.io/rpmdevtools [R=301] + +RewriteRule ^/fudcon-planning/report https://pagure.io/fudcon-planning/issues [R=301] +RewriteRule ^/fudcon-planning/ticket/(.*) https://pagure.io/fudcon-planning/issue/$1 [R=301] +Rewriterule ^/fudcon-planning https://pagure.io/fudcon-planning [R=301] + +RewriteRule ^/gfs2-utils/report https://pagure.io/gfs2-utils/issues [R=301] +RewriteRule ^/gfs2-utils/ticket/(.*) https://pagure.io/gfs2-utils/issue/$1 [R=301] +RewriteRule ^/gfs2-utils https://pagure.io/gfs2-utils [R=301] + +RewriteRule ^/elections/report https://pagure.io/elections/issues [R=301] +RewriteRule ^/elections/ticket/(.*) https://pagure.io/elections/issue/$1 [R=301] +RewriteRule ^/elections https://pagure.io/elections [R=301] + +RewriteRule ^/fedocal/report https://pagure.io/fedocal/issues [R=301] +RewriteRule ^/fedocal/ticket/(.*) https://pagure.io/fedocal/issue/$1 [R=301] +RewriteRule ^/fedocal https://pagure.io/fedocal [R=301] + +RewriteRule ^/FedoraReview/report https://pagure.io/FedoraReview/issues [R=301] +RewriteRule ^/FedoraReview/ticket/(.*) https://pagure.io/FedoraReview/issue/$1 [R=301] +RewriteRule ^/FedoraReview https://pagure.io/FedoraReview [R=301] + +RewriteRule ^/packagedb-cli/report https://pagure.io/pkgdb-cli/issues [R=301] +RewriteRule ^/packagedb-cli/ticket/(.*) https://pagure.io/pkgdb-cli/issue/$1 [R=301] +RewriteRule ^/packagedb-cli https://pagure.io/pkgdb-cli [R=301] + +RewriteRule ^/r2spec/report https://pagure.io/r2spec/issues [R=301] +RewriteRule ^/r2spec/ticket/(.*) https://pagure.io/r2spec/issue/$1 [R=301] +RewriteRule ^/r2spec https://pagure.io/r2spec [R=301] + +RewriteRule ^/pkgdb2/report https://pagure.io/pkgdb2/issues [R=301] +RewriteRule ^/pkgdb2/ticket/(.*) https://pagure.io/pkgdb2/issue/$1 [R=301] +RewriteRule ^/pkgdb2 https://pagure.io/pkgdb2/ [R=301] + +RewriteRule ^/tgcapcha22/report https://pagure.io/tgcapcha22/issues [R=301] +RewriteRule ^/tgcapcha22/ticket/(.*) https://pagure.io/tgcapcha22/issue/$1 [R=301] +RewriteRule ^/tgcapcha22 https://pagure.io/tgcapcha22 [R=301] + +RewriteRule ^/fedora-gather-easyfix/report https://pagure.io/fedora-gather-easyfi/issues [R=301] +RewriteRule ^/fedora-gather-easyfix/ticket/(.*) https://pagure.io/fedora-gather-easyfile/issue/$1 [R=301] +RewriteRule ^/fedora-gather-easyfix https://pagure.io/fedora-gather-easyfile [R=301] + +RewriteRule ^/389/report https://pagure.io/389-ds-base/issues [R=301] +RewriteRule ^/389/ticket/(.*) https://pagure.io/389-ds-base/issue/$1 [R=301] +RewriteRule ^/389 https:///pagure.io/389-ds-base [R=301] + +RewriteRule ^/ipsilon/report https://pagure.io/ipsilon/issues [R=301] +RewriteRule ^/ipsilon/ticket/(.*) https://pagure.io/ipsilon/issue/$1 [R=301] +RewriteRule ^/released/ipsilon/(.*) http://releases.pagure.org/ipsilon/$1 [R=301] +RewriteRule ^/released/ipsilon http://releases.pagure.org/ipsilon/ [R=301] +# Ipsilon still uses the trac wiki for now +#RedirectMatch ^/ipsilon https://pagure.io/ipsilon +#RedirectMatch ^/ipsilon/ https://pagure.io/ipsilon/ + +RewriteRule ^/mod_nss/report https://pagure.io/mod_nss/issues [R=301] +Rewriterule ^/mod_nss/ticket/(.*) https://pagure.io/mod_nss/issue/$1 [R=301] +RewriteRule ^/mod_nss https:///pagure.io/mod_nss [R=301] + +RewriteRule ^/mod_revocator/report https://pagure.io/mod_revocator/issues [R=301] +RewriteRule ^/mod_revocator/ticket/(.*) https://pagure.io/mod_revocator/issue/$1 [R=301] +RewriteRule ^/mod_revocator https:///pagure.io/mod_revocator [R=301] + +RewriteRule ^/fpc/report https://pagure.io/packaging-committee/issues [R=301] +Rewriterule ^/fpc/ticket/(.*) https://pagure.io/packaging-committee/issue/$1 [R=301] +RewriteRule ^/fpc https:///pagure.io/packaging-committee [R=301] + +RewriteRule ^/certmonger/report https://pagure.io/certmonger/issues [R=301] +RewriteRule ^/certmonger/ticket/(.*) https://pagure.io/certmonger/issue/$1 [R=301] +RewriteRule ^/certmonger https:///pagure.io/certmonger [R=301] + +RewriteRule ^/publican https:///sourceware.org/publican [R=301] + +RewriteRule ^/fedora-apac/report https://pagure.io/ambassadors-apac/issues [R=301] +RewriteRule ^/fedora-apac/ticket/(.*) https://pagure.io/ambassadors-apac/issue/$1 [R=301] +Rewriterule ^/fedora-apac https:///pagure.io/ambassadors-apac [R=301] + +RewriteRule ^/sssd/report https://pagure.io/SSSD/sssd/issues [L,R] +RewriteRule ^/sssd/ticket/(.*) https://pagure.io/SSSD/sssd/issue/$1 [L,R] +RewriteRule ^/releases/s/s/sssd/(.*) https://releases.pagure.org/SSSD/sssd/$1 [L,R] +RewriteRule ^/releases/s/s/sssd https://releases.pagure.org/SSSD/sssd/ [L,R] +RewriteRule ^/released/sssd/(.*) https://releases.pagure.org/SSSD/sssd/$1 [L,R] +RewriteRule ^/released/sssd https://releases.pagure.org/SSSD/sssd/ [L,R] +#RewriteRule ^/sssd https://pagure.io/SSSD/sssd [L,R] +#RewriteRule ^/sssd/ https://pagure.io/SSSD/sssd/ [L,R] + +RewriteRule ^/freeipa/changeset/(.*) https://pagure.io/freeipa/c/$1 [L,R] +RewriteRule ^/freeipa/report https://pagure.io/freeipa/issues [L,R] +RewriteRule ^/freeipa/ticket/(.*) https://pagure.io/freeipa/issue/$1 [L,R] +RewriteRule ^/freeipa https://pagure.io/freeipa [L,R] +RewriteRule ^/freeipa/(.*) https://pagure.io/freeipa [L,R] + +RewriteRule ^/rel-eng/report https://pagure.io/releng/issues [R=301] +RewriteRule ^/rel-eng/ticket/(.*) https://pagure.io/releng/issue/$1 [R=301] +RewriteRule ^/rel-eng https://pagure.io/releng [R=301] + +RewriteRule ^/fedora-badges/report https://pagure.io/Fedora-Badges/issues [R=301] +RewriteRule ^/fedora-badges/ticket/(.*) https://pagure.io/Fedora-Badges/issue/$1 [R=301] +RewriteRule ^/fedora-badges https://pagure.io/Fedora-Badges [R=301] + +RewriteRule ^/bind-dyndb-ldap/report https://pagure.io/bind-dyndb-ldap/issues [R=301] +RewriteRule ^/bind-dyndb-ldap/ticket/(.*) https://pagure.io/bind-dyndb-ldap/issue/$1 [R=301] +RewriteRule ^/bind-dyndb-ldap/changeset/(.*) https://pagure.io/bind-dyndb-ldap/c/$1 [R=301] +RewriteRule ^/bind-dyndb-ldap https://pagure.io/bind-dyndb-ldap [R=301] + +RewriteRule ^/released/ding-libs/(.*) https://releases.pagure.org/SSSD/ding-libs/$1 [R=301] +RewriteRule ^/released/ding-libs https://releases.pagure.org/SSSD/ding-libs/ [R=301] + +RewriteRule ^/webauthinfra/wiki/mod_lookup_identity https://www.adelton.com/apache/mod_lookup_identity/ [R] +RewriteRule ^/webauthinfra/wiki/mod_intercept_form_submit https://www.adelton.com/apache/mod_intercept_form_submit/ [R] +RewriteRule ^/webauthinfra/wiki/mod_authnz_pam https://www.adelton.com/apache/mod_authnz_pam/ [R] +RewriteRule ^/webauthinfra https://pagure.io/webauthinfra [R] + +RewriteRule ^/spacewalk/wiki/(.*) https://github.com/spacewalkproject/spacewalk/wiki/$1 [R] +RewriteRule ^/spacewalk/wiki https://github.com/spacewalkproject/spacewalk/wiki [R] +RewriteRule ^/spacewalk https://github.com/spacewalkproject/spacewalk [R] + +RewriteRule ^/famnarequests/report https://pagure.io/ambassadors-na/requests/issues [R=301] +RewriteRule ^/famnarequests/ticket/(.*) https://pagure.io/ambassadors-na/requests/issue/$1 [R=301] +RewriteRule ^/famnarequests https://pagure.io/ambassadors-na/requests [R=301] + +RewriteCond %{HTTP_HOST} ^fedorahosted.org [NC,OR] +RewriteCond %{REQUEST_URI} ^/released/javapackages/doc/(.*) +RewriteRule ^/released/javapackages/doc/(.*)$ https://fedora-java.github.io/howto/latest/$1 [L,R=301,NC] + +RewriteRule ^/liberation-fonts/report https://pagure.io/liberation-fonts/issues [L,R] +RewriteRule ^/liberation-fonts/ticket/(.*) https://pagure.io/liberation-fonts/issue/$1 [L,R] +RewriteRule ^/liberation-fonts/l/i/liberation-fonts/(.*) https://releases.pagure.org/liberation-fonts/$1 [L,R] +RewriteRule ^/liberation-fonts/l/i/liberation-fonts https://releases.pagure.org/liberation-fonts/ [L,R] +RewriteRule ^/liberation-fonts https://pagure.io/liberation-fonts [R=301] + +RewriteRule ^/lohit/report https://pagure.io/lohit/issues [L,R] +RewriteRule ^/lohit/ticket/(.*) https://pagure.io/lohit/issue/$1 [L,R] +RewriteRule ^/lohit/l/i/liberation-fonts/(.*) https://releases.pagure.org/lohit/$1 [L,R] +RewriteRule ^/lohit/l/i/liberation-fonts https://releases.pagure.org/lohit/ [L,R] +RewriteRule ^/lohit/ https://pagure.io/lohit [R=301] + +RewriteRule ^/aplaws/ https://aplwas.org/ [R=301] +RewriteRule ^/aplaws https://aplwas.org [R=301] + +# Ipsilon wiki is now moving content +ReWriteCond %{REQUEST_URI} !^/ipsilon/.* + +RewriteRule ^/.* https://fedoraproject.org/wiki/Infrastructure/Fedorahosted-retirement diff --git a/files/httpd/git.fedorahosted-redirects.conf b/files/httpd/git.fedorahosted-redirects.conf new file mode 100644 index 0000000000..c96ed14117 --- /dev/null +++ b/files/httpd/git.fedorahosted-redirects.conf @@ -0,0 +1,55 @@ +RewriteEngine on + +RewriteRule ^/git/ipsilon.git(.*)$ https://pagure.io/ipsilon.git$1 [L,R] +RewriteRule ^/git/rpkg.git(.*)$ https://pagure.io/rpkg.git$1 [L,R] +RewriteRule ^/git/weatheralert.git(.*)$ https://pagure.io/weatheralert.git$1 [L,R] +RewriteRule ^/git/create-tx-configuration.git(.*)$ https://pagure.io/create-tx-configuration.git$1 [L,R] +RewriteRule ^/git/kernel-tests.git(.*)$ https://pagure.io/kernel-tests.git$1 [L,R] +RewriteRule ^/git/elfutils.git$ https://sourceware.org/git/?p=elfutils.git;a=summary [L,R] + +RewriteRule ^/c*git/389/ds.git(.*)$ https://pagure.io/389-ds-base [L,R] +RewriteRule ^/c*git/389/lib389.git(.*)$ https://pagure.io/lib389 [L,R] +RewriteRule ^/c*git/389/console.git(.*)$ https://pagure.io/389-console [L,R] +RewriteRule ^/c*git/389/ds-console.git(.*)$ https://pagure.io/389-ds-console [L,R] +RewriteRule ^/c*git/389/dsgw.git(.*)$ https://pagure.io/389-dsgw [L,R] +RewriteRule ^/c*git/389/admin.git(.*)$ https://pagure.io/389-admin [L,R] +RewriteRule ^/c*git/389/adminutil.git(.*)$ https://pagure.io/389-adminutil [L,R] +RewriteRule ^/c*git/389/admin-console.git(.*)$ https://pagure.io/389-admin-console [L,R] + +RewriteRule ^/c*git/idm-console-framework.git(.*)$ https://pagure.io/idm-console-framework [L,R] +RewriteRule ^/c*git/gss-ntlmssp.git(.*)$ https://pagure.io/gssntlmssp [L,R] +RewriteRule ^/c*git/mod_nss.git(.*)$ https://pagure.io/mod_nss [L,R] +RewriteRule ^/c*git/freeipa.git(.*)$ https://pagure.io/freeipa [L,R] +RewriteRule ^/c*git/certmonger.git(.*)$ https://pagure.io/certmonger [L,R] + +RewriteCond %{REQUEST_URI} /cgit/sanlock\.git/commit/ +RewriteCond %{query_string} id=(.+)$ +RewriteRule ^/.*$ https://pagure.io/sanlock/c/%1 [R,L,NE] +RewriteRule ^/git/sanlock.git$ https://pagure.io/sanlock.git [L,R] + +RewriteCond %{REQUEST_URI} /cgit/dlm\.git/commit/ +RewriteCond %{query_string} id=(.+)$ +RewriteRule ^/.*$ https://pagure.io/dlm/c/%1 [R,L,NE] +RewriteRule ^/git/dlm.git(.*)$ https://pagure.io/dlm.git$1 [L,R] + +RewriteCond %{REQUEST_URI} /cgit/lvm2\.git/commit/ +RewriteCond %{query_string} id=(.+)$ +RewriteRule ^/.*$ https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=%1 [R,L,NE] +RewriteCond %{REQUEST_URI} /cgit/lvm2\.git/patch/ +RewriteCond %{query_string} id=(.+)$ +RewriteRule ^/.*$ https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=%1 [R,L,NE] +RewriteCond %{REQUEST_URI} /cgit/lvm2\.git(.*)$ +RewriteRule ^/.*$ https://sourceware.org/git/?p=lvm2.git [R,L,NE] +RewriteRule ^/git/lvm2.git https://sourceware.org/git/?p=lvm2.git [L,R] + + # rewrite log + # set level to 0 to turn off and speed things up + # when debugging - set to 3 and you can see what the hell is going on + RewriteLogLevel 0 + RewriteLog "/var/log/httpd/git-rewrite.log" + +# redirect vdsm to ovirt git server - since ?p == querystring we have to match that sanely +RewriteCond %{QUERY_STRING} ^.*p=(.*vdsm\.git.*)$ +RewriteRule ^.*$ http://gerrit.ovirt.org/gitweb\?p=%1 [R,L,NE] + +RedirectMatch permanent ^/.* https://fedoraproject.org/wiki/Infrastructure/Fedorahosted-retirement diff --git a/playbooks/groups/proxies.yml b/playbooks/groups/proxies.yml index ffb2b9c724..16ea85a576 100644 --- a/playbooks/groups/proxies.yml +++ b/playbooks/groups/proxies.yml @@ -160,6 +160,13 @@ - include: /srv/web/infra/ansible/playbooks/include/proxies-certificates.yml - include: /srv/web/infra/ansible/playbooks/include/proxies-websites.yml + + - name: install special fedorahosted-redirects.conf with fedorahosted redirects + copy: src={{ files }}/httpd/fedorahosted-redirects.conf dest=/etc/httpd/conf.d/fedorahosted.org/fedorahosted-redirects.conf + + - name: install special git.fedorahosted-redirects.conf with letsencrypt info + copy: src={{ files }}/httpd/git.fedorahosted-redirects.conf dest=/etc/httpd/conf.d/git.fedorahosted.org/fedorahosted-redirects.conf + - include: /srv/web/infra/ansible/playbooks/include/proxies-reverseproxy.yml - include: /srv/web/infra/ansible/playbooks/include/proxies-rewrites.yml - include: /srv/web/infra/ansible/playbooks/include/proxies-redirects.yml diff --git a/playbooks/include/proxies-websites.yml b/playbooks/include/proxies-websites.yml index c41d3c8bc6..ac526ac0b6 100644 --- a/playbooks/include/proxies-websites.yml +++ b/playbooks/include/proxies-websites.yml @@ -745,3 +745,18 @@ sslonly: true server_aliases: [mbs.stg.fedoraproject.org] cert_name: "{{wildcard_cert_name}}" + +# fedorahosted is retired. We have the site here so we can redirect it. + + - role: httpd/website + name: fedorahosted.org + sslonly: true + server_aliases: bzr.fedorahosted.org hg.fedorahosted.org svn.fedorahosted.org + SSLCertificateChainFile: wildcard-2017.fedorahosted.org.intermediate.cert + cert_name: wildcard-2017.fedorahosted.org + + - role: httpd/website + name: git.fedorahosted.org + sslonly: true + SSLCertificateChainFile: wildcard-2017.fedorahosted.org.intermediate.cert + cert_name: wildcard-2017.fedorahosted.org