From 8ca69b327f3b3fd0eee7b2709254cab3a505b006 Mon Sep 17 00:00:00 2001 From: Ralph Bean Date: Fri, 12 Dec 2014 19:42:48 +0000 Subject: [PATCH] Add fedora-docs proxy entry. --- playbooks/groups/proxies-fedora-web.yml | 4 ++ roles/fedora-docs/build/files/cron-docs-sync | 2 + roles/fedora-docs/build/files/docs-sync | 13 +++++ roles/fedora-docs/build/tasks/main.yml | 15 ++++++ roles/fedora-docs/proxy/files/cron-docs-rsync | 2 + roles/fedora-docs/proxy/files/docs-rsync | 3 ++ .../fedora-docs/proxy/files/fedora-docs.conf | 20 ++++++++ roles/fedora-docs/proxy/files/redirects.conf | 51 +++++++++++++++++++ roles/fedora-docs/proxy/tasks/main.yml | 25 +++++++++ 9 files changed, 135 insertions(+) create mode 100644 roles/fedora-docs/build/files/cron-docs-sync create mode 100755 roles/fedora-docs/build/files/docs-sync create mode 100644 roles/fedora-docs/build/tasks/main.yml create mode 100644 roles/fedora-docs/proxy/files/cron-docs-rsync create mode 100755 roles/fedora-docs/proxy/files/docs-rsync create mode 100644 roles/fedora-docs/proxy/files/fedora-docs.conf create mode 100644 roles/fedora-docs/proxy/files/redirects.conf create mode 100644 roles/fedora-docs/proxy/tasks/main.yml diff --git a/playbooks/groups/proxies-fedora-web.yml b/playbooks/groups/proxies-fedora-web.yml index e57dc0b448..c2d2ed8053 100644 --- a/playbooks/groups/proxies-fedora-web.yml +++ b/playbooks/groups/proxies-fedora-web.yml @@ -31,3 +31,7 @@ website: fedoramagazine.org - role: fedora-web/getfedora website: getfedora.org + + # Some other static content, not strictly part of "fedora-web" goes below here + - role: fedora-docs/proxy + website: docs.fedoraproject.org diff --git a/roles/fedora-docs/build/files/cron-docs-sync b/roles/fedora-docs/build/files/cron-docs-sync new file mode 100644 index 0000000000..c5c32ca364 --- /dev/null +++ b/roles/fedora-docs/build/files/cron-docs-sync @@ -0,0 +1,2 @@ +# TODO: Make add some locking to this. +5 * * * * root /usr/bin/rsync --delete -aSHPq --exclude=.git/objects/ bapp02::docs/ /srv/web/docs.fedoraproject.org/ diff --git a/roles/fedora-docs/build/files/docs-sync b/roles/fedora-docs/build/files/docs-sync new file mode 100755 index 0000000000..e6bfd02be2 --- /dev/null +++ b/roles/fedora-docs/build/files/docs-sync @@ -0,0 +1,13 @@ +#!/bin/sh + +if [ ! -d /srv/web/docs ] +then + echo "/srv/web/docs missing" + cd /srv/web + git clone git://git.fedorahosted.org/docs/web.git docs +fi + + +cd /srv/web/docs +git reset --hard +git pull diff --git a/roles/fedora-docs/build/tasks/main.yml b/roles/fedora-docs/build/tasks/main.yml new file mode 100644 index 0000000000..03bf73a615 --- /dev/null +++ b/roles/fedora-docs/build/tasks/main.yml @@ -0,0 +1,15 @@ +- file: dest=/srv/web/docs state=directory + +- copy: > + src=docs-sync dest=/usr/local/bin/docs-sync + owner=root group=root mode=0755 + tags: + - fedora-docs + - fedora-docs/build + +- copy: > + src=cron-docs-sync dest=/etc/cron.d/docs-sync + owner=root group=root mode=0755 + tags: + - fedora-docs + - fedora-docs/build diff --git a/roles/fedora-docs/proxy/files/cron-docs-rsync b/roles/fedora-docs/proxy/files/cron-docs-rsync new file mode 100644 index 0000000000..5f7d02db3a --- /dev/null +++ b/roles/fedora-docs/proxy/files/cron-docs-rsync @@ -0,0 +1,2 @@ +# TODO: Make add some locking to this. +10 * * * * root /usr/bin/rsync --delete -aSHPq --exclude=.git/objects/ bapp02::docs/ /srv/web/docs.fedoraproject.org/ diff --git a/roles/fedora-docs/proxy/files/docs-rsync b/roles/fedora-docs/proxy/files/docs-rsync new file mode 100755 index 0000000000..28ef854d95 --- /dev/null +++ b/roles/fedora-docs/proxy/files/docs-rsync @@ -0,0 +1,3 @@ +#!/bin/sh + +/usr/bin/rsync -aSHPv --delete --exclude=.git/objects/ bapp02::docs/ /srv/web/docs.fedoraproject.org/ diff --git a/roles/fedora-docs/proxy/files/fedora-docs.conf b/roles/fedora-docs/proxy/files/fedora-docs.conf new file mode 100644 index 0000000000..cd3d10000d --- /dev/null +++ b/roles/fedora-docs/proxy/files/fedora-docs.conf @@ -0,0 +1,20 @@ +DocumentRoot /srv/web/docs.fedoraproject.org/public_html +Redirect permanent /yum http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/Software_Management_Guide/index.html +ErrorDocument 404 http://docs.fedoraproject.org/ + +AddType application/epub+zip .epub +AddType image/svg+xml .svg +AddType image/svg+xml .svgz +AddEncoding gzip .svgz + + + mod_gzip_on No + + + +AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript + +FileETag MTime Size + +ExpiresActive On +ExpiresDefault "access plus 5 days" diff --git a/roles/fedora-docs/proxy/files/redirects.conf b/roles/fedora-docs/proxy/files/redirects.conf new file mode 100644 index 0000000000..b1b126974f --- /dev/null +++ b/roles/fedora-docs/proxy/files/redirects.conf @@ -0,0 +1,51 @@ +## +## Due to a lot of configuration changes right before F13 we have to fix +## links + +RewriteEngine On + +RewriteRule /sysadmin-guide /en-US/Fedora/18/html/System_Administrators_Guide [R=301] +RewriteRule /accessibility-guide /en-US/Fedora/16/html/Accessibility_Guide [R=301] +RewriteRule /deployment-guide /en-US/Fedora/15/html/Deployment_Guide [R=301] +RewriteRule /install-guide /en-US/Fedora/21/html/Installation_Guide [R=301] +RewriteRule /installation-quick-start-guide /en-US/Fedora/21/html/Installation_Guide [R=301] +RewriteRule /readme-burning-isos /en-US/Fedora/20/html/Burning_ISO_images_to_disc [R=301] +RewriteRule /readme-live-image /en-US/Fedora/21/html/Installation_Guide/chap-downloading-fedora.html [R=301] +RewriteRule /security-guide /en-US/Fedora/19/html/Security_Guide [R=301] +RewriteRule /selinux-faq /en-US/Fedora/13/html/SELinux_FAQ [R=301] +RewriteRule /selinux-managing-confined-services-guide /en-US/Fedora/13/html/Managing_Confined_Services [R=301] +RewriteRule /selinux-user-guide /en-US/Fedora/13/html/Security-Enhanced_Linux [R=301] +RewriteRule /technical-notes /en-US/Fedora/16/html/Technical_Notes [R=301] +RewriteRule /user-guide /en-US/Fedora/14/html/User_Guide [R=301] +RewriteRule /virtualization-guide /en-US/Fedora/13/html/Virtualization_Guide [R=301] +RewriteRule /wireless-guide /en-US/Fedora/13/html/Wireless_Guide [R=301] +RewriteRule /release-notes/fc1/x86_64 /en-US/Fedora_Core/1/html/Release_Notes_for_64-bit_x86_Systems [R=301] +RewriteRule /release-notes/fc1/x86 /en-US/Fedora_Core/1/html/Release_Notes_for_32-bit_x86_Systems [R=301] +RewriteRule /release-notes/fc2/x86_64 /en-US/Fedora_Core/2/html/Release_Notes_for_64-bit_x86_Systems [R=301] +RewriteRule /release-notes/fc2/x86 /en-US/Fedora_Core/2/html/Release_Notes_for_32-bit_x86_Systems [R=301] +RewriteRule /release-notes/fc3/x86_64 /en-US/Fedora_Core/3/html/Release_Notes_for_64-bit_x86_Systems [R=301] +RewriteRule /release-notes/fc3/x86 /en-US/Fedora_Core/3/html/Release_Notes_for_32-bit_x86_Systems [R=301] +RewriteRule /release-notes/fc4 /en-US/Fedora_Core/4/html/Release_Notes [R=301] +RewriteRule /release-notes/fc5 /en-US/Fedora_Core/5/html/Release_Notes [R=301] +RewriteRule /release-notes/fc6 /en-US/Fedora_Core/6/html/Release_Notes [R=301] +RewriteRule /release-notes/f7 /en-US/Fedora/7/html/Release_Notes [R=301] +RewriteRule /release-notes/f8 /en-US/Fedora/8/html/Release_Notes [R=301] +RewriteRule /release-notes/f9 /en-US/Fedora/9/html/Release_Notes [R=301] +RewriteRule /release-notes/f10 /en-US/Fedora/10/html/Release_Notes [R=301] +RewriteRule /release-notes/f11 /en-US/Fedora/11/html/Release_Notes [R=301] +RewriteRule /release-notes/f12 /en-US/Fedora/12/html/Release_Notes [R=301] +RewriteRule /release-notes/f13 /en-US/Fedora/13/html/Release_Notes [R=301] +RewriteRule /release-notes/f14 /en-US/Fedora/14/html/Release_Notes [R=301] +RewriteRule /release-notes/f15 /en-US/Fedora/15/html/Release_Notes [R=301] +RewriteRule /release-notes/f16 /en-US/Fedora/16/html/Release_Notes [R=301] +RewriteRule /release-notes/f17 /en-US/Fedora/17/html/Release_Notes [R=301] +RewriteRule /release-notes/f18 /en-US/Fedora/18/html/Release_Notes [R=301] +RewriteRule /release-notes/f19 /en-US/Fedora/19/html/Release_Notes [R=301] +RewriteRule /release-notes/f20 /en-US/Fedora/20/html/Release_Notes [R=301] +RewriteRule /release-notes/f21 /en-US/Fedora/21/html/Release_Notes [R=301] +# Current release +RewriteRule /release-notes /en-US/Fedora/21/html/Release_Notes [R=301] + +## +## EOF +## diff --git a/roles/fedora-docs/proxy/tasks/main.yml b/roles/fedora-docs/proxy/tasks/main.yml new file mode 100644 index 0000000000..a9646afea1 --- /dev/null +++ b/roles/fedora-docs/proxy/tasks/main.yml @@ -0,0 +1,25 @@ +- copy: > + src=docs-rsync dest=/usr/local/bin/docs-rsync + owner=root group=root mode=0755 + tags: + - fedora-docs + - fedora-docs/proxy + +- copy: > + src=cron-docs-rsync dest=/etc/cron.d/docs-rsync + owner=root group=root mode=0755 + tags: + - fedora-docs + - fedora-docs/proxy + +- copy: > + src={{item}} dest=/etc/httpd/conf.d/{{website}}/{{item}} + owner=root group=root mode=0644 + with_items: + - fedora-docs.conf + - redirects.conf + notify: + - restart httpd + tags: + - fedora-docs + - fedora-docs/proxy