# Redirects from when OpenDev split out of OpenStack
<Macro OpendevRedirects>
 RewriteEngine On

 RewriteRule "^/openstack/afsmon(.*?)$"                           "/opendev/afsmon$1"                      [R=301,L]
 RewriteRule "^/openstack/airship-deckhand(.*?)$"                 "/airship/deckhand$1"                    [R=301,L]
 RewriteRule "^/openstack/almanach(.*?)$"                         "/x/almanach$1"                          [R=301,L]
 RewriteRule "^/openstack/ansible-role-tripleo-congress(.*?)$"    "/x/ansible-role-tripleo-congress$1"     [R=301,L]
 RewriteRule "^/openstack/apmec-horizon(.*?)$"                    "/x/apmec-horizon$1"                     [R=301,L]
 RewriteRule "^/openstack/apmec(.*?)$"                            "/x/apmec$1"                             [R=301,L]
 RewriteRule "^/openstack/ara(.*?)$"                              "/recordsansible/ara$1"                  [R=301,L]
 RewriteRule "^/openstack/bareon-allocator(.*?)$"                 "/x/bareon-allocator$1"                  [R=301,L]
 RewriteRule "^/openstack/bareon-ironic(.*?)$"                    "/x/bareon-ironic$1"                     [R=301,L]
 RewriteRule "^/openstack/bareon(.*?)$"                           "/x/bareon$1"                            [R=301,L]
 RewriteRule "^/openstack/bilean(.*?)$"                           "/x/bilean$1"                            [R=301,L]
 RewriteRule "^/openstack/bindep(.*?)$"                           "/opendev/bindep$1"                      [R=301,L]
 RewriteRule "^/openstack/browbeat(.*?)$"                         "/x/browbeat$1"                          [R=301,L]
 RewriteRule "^/openstack/ceilometer-zvm(.*?)$"                   "/x/ceilometer-zvm$1"                    [R=301,L]
 RewriteRule "^/openstack/cerberus-dashboard(.*?)$"               "/x/cerberus-dashboard$1"                [R=301,L]
 RewriteRule "^/openstack/cerberus(.*?)$"                         "/x/cerberus$1"                          [R=301,L]
 RewriteRule "^/openstack/cinder-fusioncompute(.*?)$"             "/x/cinder-fusioncompute$1"              [R=301,L]
 RewriteRule "^/openstack/cisco-ironic-contrib(.*?)$"             "/x/cisco-ironic-contrib$1"              [R=301,L]
 RewriteRule "^/openstack/ciwatch(.*?)$"                          "/x/ciwatch$1"                           [R=301,L]
 RewriteRule "^/openstack/cloudbase-init(.*?)$"                   "/x/cloudbase-init$1"                    [R=301,L]
 RewriteRule "^/openstack/cloud-init(.*?)$"                       "/x/cloud-init$1"                        [R=301,L]
 RewriteRule "^/openstack/cloudpulse(.*?)$"                       "/x/cloudpulse$1"                        [R=301,L]
 RewriteRule "^/openstack/cloudv-ostf-adapter(.*?)$"              "/x/cloudv-ostf-adapter$1"               [R=301,L]
 RewriteRule "^/openstack/collectd-openstack-plugins(.*?)$"       "/x/collectd-openstack-plugins$1"        [R=301,L]
 RewriteRule "^/openstack/conveyor(.*?)$"                         "/x/conveyor$1"                          [R=301,L]
 RewriteRule "^/openstack/craton-dashboard(.*?)$"                 "/x/craton-dashboard$1"                  [R=301,L]
 RewriteRule "^/openstack/cursive(.*?)$"                          "/x/cursive$1"                           [R=301,L]
 RewriteRule "^/openstack/delimiter(.*?)$"                        "/x/delimiter$1"                         [R=301,L]
 RewriteRule "^/openstack/distil-ui(.*?)$"                        "/x/distil-ui$1"                         [R=301,L]
 RewriteRule "^/openstack/distil(.*?)$"                           "/x/distil$1"                            [R=301,L]
 RewriteRule "^/openstack/doc8(.*?)$"                             "/x/doc8$1"                              [R=301,L]
 RewriteRule "^/openstack/downpour(.*?)$"                         "/x/downpour$1"                          [R=301,L]
 RewriteRule "^/openstack/dox(.*?)$"                              "/x/dox$1"                               [R=301,L]
 RewriteRule "^/openstack/driverlog(.*?)$"                        "/x/driverlog$1"                         [R=301,L]
 RewriteRule "^/openstack/ekko(.*?)$"                             "/x/ekko$1"                              [R=301,L]
 RewriteRule "^/openstack/evoque-dashboard(.*?)$"                 "/x/evoque-dashboard$1"                  [R=301,L]
 RewriteRule "^/openstack/evoque(.*?)$"                           "/x/evoque$1"                            [R=301,L]
 RewriteRule "^/openstack/fenix(.*?)$"                            "/x/fenix$1"                             [R=301,L]
 RewriteRule "^/openstack/fixtures-git(.*?)$"                     "/x/fixtures-git$1"                      [R=301,L]
 RewriteRule "^/openstack/flame(.*?)$"                            "/x/flame$1"                             [R=301,L]
 RewriteRule "^/openstack/fuel-ccp-entrypoint(.*?)$"              "/x/fuel-ccp-entrypoint$1"               [R=301,L]
 RewriteRule "^/openstack/fuel-ccp-installer(.*?)$"               "/x/fuel-ccp-installer$1"                [R=301,L]
 RewriteRule "^/openstack/fuel-ccp-tests(.*?)$"                   "/x/fuel-ccp-tests$1"                    [R=301,L]
 RewriteRule "^/openstack/fuel-ccp(.*?)$"                         "/x/fuel-ccp$1"                          [R=301,L]
 RewriteRule "^/openstack/gantt(.*?)$"                            "/x/gantt$1"                             [R=301,L]
 RewriteRule "^/openstack/gce-api(.*?)$"                          "/x/gce-api$1"                           [R=301,L]
 RewriteRule "^/openstack/gear(.*?)$"                             "/opendev/gear$1"                        [R=301,L]
 RewriteRule "^/openstack/germqtt(.*?)$"                          "/opendev/germqtt$1"                     [R=301,L]
 RewriteRule "^/openstack/gerritbot(.*?)$"                        "/opendev/gerritbot$1"                   [R=301,L]
 RewriteRule "^/openstack/gerrit-dash-creator(.*?)$"              "/x/gerrit-dash-creator$1"               [R=301,L]
 RewriteRule "^/openstack/gerritlib(.*?)$"                        "/opendev/gerritlib$1"                   [R=301,L]
 RewriteRule "^/openstack/gerrit(.*?)$"                           "/opendev/gerrit$1"                      [R=301,L]
 RewriteRule "^/openstack/gertty(.*?)$"                           "/ttygroup/gertty$1"                     [R=301,L]
 RewriteRule "^/openstack/giftwrap(.*?)$"                         "/x/giftwrap$1"                          [R=301,L]
 RewriteRule "^/openstack/git-nit(.*?)$"                          "/x/git-nit$1"                           [R=301,L]
 RewriteRule "^/openstack/git-os-job(.*?)$"                       "/x/git-os-job$1"                        [R=301,L]
 RewriteRule "^/openstack/git-restack(.*?)$"                      "/opendev/git-restack$1"                 [R=301,L]
 RewriteRule "^/openstack/git-upstream(.*?)$"                     "/x/git-upstream$1"                      [R=301,L]
 RewriteRule "^/openstack/glare(.*?)$"                            "/x/glare$1"                             [R=301,L]
 RewriteRule "^/openstack/glean(.*?)$"                            "/opendev/glean$1"                       [R=301,L]
 RewriteRule "^/openstack/gluon(.*?)$"                            "/x/gluon$1"                             [R=301,L]
 RewriteRule "^/openstack/grafyaml(.*?)$"                         "/opendev/grafyaml$1"                    [R=301,L]
 RewriteRule "^/openstack/group-based-policy-automation(.*?)$"    "/x/group-based-policy-automation$1"     [R=301,L]
 RewriteRule "^/openstack/group-based-policy-ui(.*?)$"            "/x/group-based-policy-ui$1"             [R=301,L]
 RewriteRule "^/openstack/group-based-policy(.*?)$"               "/x/group-based-policy$1"                [R=301,L]
 RewriteRule "^/openstack/groups(.*?)$"                           "/osf/groups$1"                          [R=301,L]
 RewriteRule "^/openstack/horizon-mellanox(.*?)$"                 "/x/horizon-mellanox$1"                  [R=301,L]
 RewriteRule "^/openstack/intel-nfv-ci-tests(.*?)$"               "/x/intel-nfv-ci-tests$1"                [R=301,L]
 RewriteRule "^/openstack/iotronic-lightning-rod(.*?)$"           "/x/iotronic-lightning-rod$1"            [R=301,L]
 RewriteRule "^/openstack/iotronic-ui(.*?)$"                      "/x/iotronic-ui$1"                       [R=301,L]
 RewriteRule "^/openstack/iotronic(.*?)$"                         "/x/iotronic$1"                          [R=301,L]
 RewriteRule "^/openstack/ironic-staging-drivers(.*?)$"           "/x/ironic-staging-drivers$1"            [R=301,L]
 RewriteRule "^/openstack/jenkins-job-builder(.*?)$"              "/jjb/jenkins-job-builder$1"             [R=301,L]
 RewriteRule "^/openstack/kingbird-dashboard(.*?)$"               "/x/kingbird-dashboard$1"                [R=301,L]
 RewriteRule "^/openstack/kingbird(.*?)$"                         "/x/kingbird$1"                          [R=301,L]
 RewriteRule "^/openstack/kite(.*?)$"                             "/x/kite$1"                              [R=301,L]
 RewriteRule "^/openstack/kloudbuster(.*?)$"                      "/x/kloudbuster$1"                       [R=301,L]
 RewriteRule "^/openstack/kolla-mesos(.*?)$"                      "/x/kolla-mesos$1"                       [R=301,L]
 RewriteRule "^/openstack/kosmos(.*?)$"                           "/x/kosmos$1"                            [R=301,L]
 RewriteRule "^/openstack/log_processor(.*?)$"                    "/opendev/log_processor$1"               [R=301,L]
 RewriteRule "^/openstack/lpmqtt(.*?)$"                           "/opendev/lpmqtt$1"                      [R=301,L]
 RewriteRule "^/openstack/marshal(.*?)$"                          "/x/marshal$1"                           [R=301,L]
 RewriteRule "^/openstack/meteos-ui(.*?)$"                        "/x/meteos-ui$1"                         [R=301,L]
 RewriteRule "^/openstack/meteos(.*?)$"                           "/x/meteos$1"                            [R=301,L]
 RewriteRule "^/openstack/mitmstack(.*?)$"                        "/x/mitmstack$1"                         [R=301,L]
 RewriteRule "^/openstack/mixmatch(.*?)$"                         "/x/mixmatch$1"                          [R=301,L]
 RewriteRule "^/openstack/mogan-ui(.*?)$"                         "/x/mogan-ui$1"                          [R=301,L]
 RewriteRule "^/openstack/mogan(.*?)$"                            "/x/mogan$1"                             [R=301,L]
 RewriteRule "^/openstack/monitoring-for-openstack(.*?)$"         "/x/monitoring-for-openstack$1"          [R=301,L]
 RewriteRule "^/openstack/murano-plugin-networking-sfc(.*?)$"     "/x/murano-plugin-networking-sfc$1"      [R=301,L]
 RewriteRule "^/openstack/nemesis(.*?)$"                          "/x/nemesis$1"                           [R=301,L]
 RewriteRule "^/openstack/nerd-reviewer(.*?)$"                    "/x/nerd-reviewer$1"                     [R=301,L]
 RewriteRule "^/openstack/network-checker(.*?)$"                  "/x/network-checker$1"                   [R=301,L]
 RewriteRule "^/openstack/networking-6wind(.*?)$"                 "/x/networking-6wind$1"                  [R=301,L]
 RewriteRule "^/openstack/networking-ale-omniswitch(.*?)$"        "/x/networking-ale-omniswitch$1"         [R=301,L]
 RewriteRule "^/openstack/networking-ansible(.*?)$"               "/x/networking-ansible$1"                [R=301,L]
 RewriteRule "^/openstack/networking-arista(.*?)$"                "/x/networking-arista$1"                 [R=301,L]
 RewriteRule "^/openstack/networking-bigswitch(.*?)$"             "/x/networking-bigswitch$1"              [R=301,L]
 RewriteRule "^/openstack/networking-brocade(.*?)$"               "/x/networking-brocade$1"                [R=301,L]
 RewriteRule "^/openstack/networking-cisco(.*?)$"                 "/x/networking-cisco$1"                  [R=301,L]
 RewriteRule "^/openstack/networking-cumulus(.*?)$"               "/x/networking-cumulus$1"                [R=301,L]
 RewriteRule "^/openstack/networking-dpm(.*?)$"                   "/x/networking-dpm$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-edge-vpn(.*?)$"              "/x/networking-edge-vpn$1"               [R=301,L]
 RewriteRule "^/openstack/networking-extreme(.*?)$"               "/x/networking-extreme$1"                [R=301,L]
 RewriteRule "^/openstack/networking-fortinet(.*?)$"              "/x/networking-fortinet$1"               [R=301,L]
 RewriteRule "^/openstack/networking-fujitsu(.*?)$"               "/x/networking-fujitsu$1"                [R=301,L]
 RewriteRule "^/openstack/networking-gluon(.*?)$"                 "/x/networking-gluon$1"                  [R=301,L]
 RewriteRule "^/openstack/networking-h3c(.*?)$"                   "/x/networking-h3c$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-hpe(.*?)$"                   "/x/networking-hpe$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-huawei(.*?)$"                "/x/networking-huawei$1"                 [R=301,L]
 RewriteRule "^/openstack/networking-infoblox(.*?)$"              "/x/networking-infoblox$1"               [R=301,L]
 RewriteRule "^/openstack/networking-lagopus(.*?)$"               "/x/networking-lagopus$1"                [R=301,L]
 RewriteRule "^/openstack/networking-mlnx(.*?)$"                  "/x/networking-mlnx$1"                   [R=301,L]
 RewriteRule "^/openstack/networking-nec(.*?)$"                   "/x/networking-nec$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-omnipath(.*?)$"              "/x/networking-omnipath$1"               [R=301,L]
 RewriteRule "^/openstack/networking-opencontrail(.*?)$"          "/x/networking-opencontrail$1"           [R=301,L]
 RewriteRule "^/openstack/networking-ovs-dpdk(.*?)$"              "/x/networking-ovs-dpdk$1"               [R=301,L]
 RewriteRule "^/openstack/networking-plumgrid(.*?)$"              "/x/networking-plumgrid$1"               [R=301,L]
 RewriteRule "^/openstack/networking-spp(.*?)$"                   "/x/networking-spp$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-vpp(.*?)$"                   "/x/networking-vpp$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-vsphere(.*?)$"               "/x/networking-vsphere$1"                [R=301,L]
 RewriteRule "^/openstack/networking-zte(.*?)$"                   "/x/networking-zte$1"                    [R=301,L]
 RewriteRule "^/openstack/networking-zvm(.*?)$"                   "/x/networking-zvm$1"                    [R=301,L]
 RewriteRule "^/openstack/neutron-classifier(.*?)$"               "/x/neutron-classifier$1"                [R=301,L]
 RewriteRule "^/openstack/nfv-filters(.*?)$"                      "/x/nfv-filters$1"                       [R=301,L]
 RewriteRule "^/openstack/nodepool(.*?)$"                         "/zuul/nodepool$1"                       [R=301,L]
 RewriteRule "^/openstack/nova-docker(.*?)$"                      "/x/nova-docker$1"                       [R=301,L]
 RewriteRule "^/openstack/nova-dpm(.*?)$"                         "/x/nova-dpm$1"                          [R=301,L]
 RewriteRule "^/openstack/nova-fusioncompute(.*?)$"               "/x/nova-fusioncompute$1"                [R=301,L]
 RewriteRule "^/openstack/novajoin-tempest-plugin(.*?)$"          "/x/novajoin-tempest-plugin$1"           [R=301,L]
 RewriteRule "^/openstack/novajoin(.*?)$"                         "/x/novajoin$1"                          [R=301,L]
 RewriteRule "^/openstack/nova-lxd(.*?)$"                         "/x/nova-lxd$1"                          [R=301,L]
 RewriteRule "^/openstack/nova-mksproxy(.*?)$"                    "/x/nova-mksproxy$1"                     [R=301,L]
 RewriteRule "^/openstack/nova-solver-scheduler(.*?)$"            "/x/nova-solver-scheduler$1"             [R=301,L]
 RewriteRule "^/openstack/nova-zvm-virt-driver(.*?)$"             "/x/nova-zvm-virt-driver$1"              [R=301,L]
 RewriteRule "^/openstack/oaktreemodel(.*?)$"                     "/x/oaktreemodel$1"                      [R=301,L]
 RewriteRule "^/openstack/oaktree(.*?)$"                          "/x/oaktree$1"                           [R=301,L]
 RewriteRule "^/openstack/ooi(.*?)$"                              "/x/ooi$1"                               [R=301,L]
 RewriteRule "^/openstack/osc-summit-counter(.*?)$"               "/x/osc-summit-counter$1"                [R=301,L]
 RewriteRule "^/openstack/os-dpm(.*?)$"                           "/x/os-dpm$1"                            [R=301,L]
 RewriteRule "^/openstack/os-faults(.*?)$"                        "/performa/os-faults$1"                  [R=301,L]
 RewriteRule "^/openstack/os-log-merger(.*?)$"                    "/x/os-log-merger$1"                     [R=301,L]
 RewriteRule "^/openstack/ospurge(.*?)$"                          "/x/ospurge$1"                           [R=301,L]
 RewriteRule "^/openstack/os-xenapi(.*?)$"                        "/x/os-xenapi$1"                         [R=301,L]
 RewriteRule "^/openstack/packetary(.*?)$"                        "/x/packetary$1"                         [R=301,L]
 RewriteRule "^/openstack/packstack(.*?)$"                        "/x/packstack$1"                         [R=301,L]
 RewriteRule "^/openstack/pandaman(.*?)$"                         "/x/pandaman$1"                          [R=301,L]
 RewriteRule "^/openstack/performa(.*?)$"                         "/x/performa$1"                          [R=301,L]
 RewriteRule "^/openstack/poppy(.*?)$"                            "/x/poppy$1"                             [R=301,L]
 RewriteRule "^/openstack/proliantutils(.*?)$"                    "/x/proliantutils$1"                     [R=301,L]
 RewriteRule "^/openstack/promstat(.*?)$"                         "/x/promstat$1"                          [R=301,L]
 RewriteRule "^/openstack/pyghmi(.*?)$"                           "/x/pyghmi$1"                            [R=301,L]
 RewriteRule "^/openstack/pynotedb(.*?)$"                         "/opendev/pynotedb$1"                    [R=301,L]
 RewriteRule "^/openstack/pypi-mirror(.*?)$"                      "/opendev/pypi-mirror$1"                 [R=301,L]
 RewriteRule "^/openstack/python-almanachclient(.*?)$"            "/x/python-almanachclient$1"             [R=301,L]
 RewriteRule "^/openstack/python-apmecclient(.*?)$"               "/x/python-apmecclient$1"                [R=301,L]
 RewriteRule "^/openstack/python-bileanclient(.*?)$"              "/x/python-bileanclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-cerberusclient(.*?)$"            "/x/python-cerberusclient$1"             [R=301,L]
 RewriteRule "^/openstack/python-cloudpulseclient(.*?)$"          "/x/python-cloudpulseclient$1"           [R=301,L]
 RewriteRule "^/openstack/python-cratonclient(.*?)$"              "/x/python-cratonclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-distilclient(.*?)$"              "/x/python-distilclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-don(.*?)$"                       "/x/python-don$1"                        [R=301,L]
 RewriteRule "^/openstack/python-evoqueclient(.*?)$"              "/x/python-evoqueclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-fenixclient(.*?)$"               "/x/python-fenixclient$1"                [R=301,L]
 RewriteRule "^/openstack/python-glareclient(.*?)$"               "/x/python-glareclient$1"                [R=301,L]
 RewriteRule "^/openstack/python-group-based-policy-client(.*?)$" "/x/python-group-based-policy-client$1"  [R=301,L]
 RewriteRule "^/openstack/python-hnvclient(.*?)$"                 "/x/python-hnvclient$1"                  [R=301,L]
 RewriteRule "^/openstack/python-iotronicclient(.*?)$"            "/x/python-iotronicclient$1"             [R=301,L]
 RewriteRule "^/openstack/python-jenkins(.*?)$"                   "/jjb/python-jenkins$1"                  [R=301,L]
 RewriteRule "^/openstack/python-k8sclient(.*?)$"                 "/x/python-k8sclient$1"                  [R=301,L]
 RewriteRule "^/openstack/python-kingbirdclient(.*?)$"            "/x/python-kingbirdclient$1"             [R=301,L]
 RewriteRule "^/openstack/python-kiteclient(.*?)$"                "/x/python-kiteclient$1"                 [R=301,L]
 RewriteRule "^/openstack/python-meteosclient(.*?)$"              "/x/python-meteosclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-moganclient(.*?)$"               "/x/python-moganclient$1"                [R=301,L]
 RewriteRule "^/openstack/python-oneviewclient(.*?)$"             "/x/python-oneviewclient$1"              [R=301,L]
 RewriteRule "^/openstack/python-redfish(.*?)$"                   "/x/python-redfish$1"                    [R=301,L]
 RewriteRule "^/openstack/python-rsdclient(.*?)$"                 "/x/python-rsdclient$1"                  [R=301,L]
 RewriteRule "^/openstack/python-scciclient(.*?)$"                "/x/python-scciclient$1"                 [R=301,L]
 RewriteRule "^/openstack/python-sticksclient(.*?)$"              "/x/python-sticksclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-storyboardclient(.*?)$"          "/opendev/python-storyboardclient$1"     [R=301,L]
 RewriteRule "^/openstack/python-surveilclient(.*?)$"             "/x/python-surveilclient$1"              [R=301,L]
 RewriteRule "^/openstack/python-tempestconf(.*?)$"               "/osf/python-tempestconf$1"              [R=301,L]
 RewriteRule "^/openstack/python-tuskarclient(.*?)$"              "/x/python-tuskarclient$1"               [R=301,L]
 RewriteRule "^/openstack/python-valenceclient(.*?)$"             "/x/python-valenceclient$1"              [R=301,L]
 RewriteRule "^/openstack/quark(.*?)$"                            "/x/quark$1"                             [R=301,L]
 RewriteRule "^/openstack/ranger-agent(.*?)$"                     "/x/ranger-agent$1"                      [R=301,L]
 RewriteRule "^/openstack/ranger(.*?)$"                           "/x/ranger$1"                            [R=301,L]
 RewriteRule "^/openstack/refstack-client(.*?)$"                  "/osf/refstack-client$1"                 [R=301,L]
 RewriteRule "^/openstack/refstack(.*?)$"                         "/osf/refstack$1"                        [R=301,L]
 RewriteRule "^/openstack/requests-mock(.*?)$"                    "/x/requests-mock$1"                     [R=301,L]
 RewriteRule "^/openstack/rsd-lib(.*?)$"                          "/x/rsd-lib$1"                           [R=301,L]
 RewriteRule "^/openstack/rsd-virt-for-nova(.*?)$"                "/x/rsd-virt-for-nova$1"                 [R=301,L]
 RewriteRule "^/openstack/sardonic(.*?)$"                         "/sardonic/sardonic$1"                   [R=301,L]
 RewriteRule "^/openstack/scalpels(.*?)$"                         "/x/scalpels$1"                          [R=301,L]
 RewriteRule "^/openstack/shaker(.*?)$"                           "/performa/shaker$1"                     [R=301,L]
 RewriteRule "^/openstack/snap.openstack(.*?)$"                   "/x/snap.openstack$1"                    [R=301,L]
 RewriteRule "^/openstack/solar(.*?)$"                            "/x/solar$1"                             [R=301,L]
 RewriteRule "^/openstack/spanner(.*?)$"                          "/x/spanner$1"                           [R=301,L]
 RewriteRule "^/openstack/sqlalchemy-migrate(.*?)$"               "/x/sqlalchemy-migrate$1"                [R=301,L]
 RewriteRule "^/openstack/stackalytics(.*?)$"                     "/x/stackalytics$1"                      [R=301,L]
 RewriteRule "^/openstack/statusbot(.*?)$"                        "/opendev/statusbot$1"                   [R=301,L]
 RewriteRule "^/openstack/steth(.*?)$"                            "/x/steth$1"                             [R=301,L]
 RewriteRule "^/openstack/sticks-dashboard(.*?)$"                 "/x/sticks-dashboard$1"                  [R=301,L]
 RewriteRule "^/openstack/sticks(.*?)$"                           "/x/sticks$1"                            [R=301,L]
 RewriteRule "^/openstack/storyboard(.*?)$"                       "/opendev/storyboard$1"                  [R=301,L]
 RewriteRule "^/openstack/storyboard-webclient(.*?)$"             "/opendev/storyboard-webclient$1"        [R=301,L]
 RewriteRule "^/openstack/subunit2sql(.*?)$"                      "/opendev/subunit2sql$1"                 [R=301,L]
 RewriteRule "^/openstack/surveil(.*?)$"                          "/x/surveil$1"                           [R=301,L]
 RewriteRule "^/openstack/swauth(.*?)$"                           "/x/swauth$1"                            [R=301,L]
 RewriteRule "^/openstack/swift3(.*?)$"                           "/x/swift3$1"                            [R=301,L]
 RewriteRule "^/openstack/swiftonhpss(.*?)$"                      "/x/swiftonhpss$1"                       [R=301,L]
 RewriteRule "^/openstack/synergy-scheduler-manager(.*?)$"        "/x/synergy-scheduler-manager$1"         [R=301,L]
 RewriteRule "^/openstack/synergy-service(.*?)$"                  "/x/synergy-service$1"                   [R=301,L]
 RewriteRule "^/openstack/tap-as-a-service-dashboard(.*?)$"       "/x/tap-as-a-service-dashboard$1"        [R=301,L]
 RewriteRule "^/openstack/tap-as-a-service-tempest-plugin(.*?)$"  "/x/tap-as-a-service-tempest-plugin$1"   [R=301,L]
 RewriteRule "^/openstack/tc-as-a-service(.*?)$"                  "/x/tc-as-a-service$1"                   [R=301,L]
 RewriteRule "^/openstack/terracotta(.*?)$"                       "/x/terracotta$1"                        [R=301,L]
 RewriteRule "^/openstack/timmy(.*?)$"                            "/x/timmy$1"                             [R=301,L]
 RewriteRule "^/openstack/tobiko(.*?)$"                           "/x/tobiko$1"                            [R=301,L]
 RewriteRule "^/openstack/trio2o(.*?)$"                           "/x/trio2o$1"                            [R=301,L]
 RewriteRule "^/openstack/turbo-hipster(.*?)$"                    "/x/turbo-hipster$1"                     [R=301,L]
 RewriteRule "^/openstack/tuskar-ui(.*?)$"                        "/x/tuskar-ui$1"                         [R=301,L]
 RewriteRule "^/openstack/tuskar(.*?)$"                           "/x/tuskar$1"                            [R=301,L]
 RewriteRule "^/openstack/valence(.*?)$"                          "/x/valence$1"                           [R=301,L]
 RewriteRule "^/openstack/valet(.*?)$"                            "/x/valet$1"                             [R=301,L]
 RewriteRule "^/openstack/virtualpdu(.*?)$"                       "/x/virtualpdu$1"                        [R=301,L]
 RewriteRule "^/openstack/vmtp(.*?)$"                             "/x/vmtp$1"                              [R=301,L]
 RewriteRule "^/openstack/vmware-nsxlib(.*?)$"                    "/x/vmware-nsxlib$1"                     [R=301,L]
 RewriteRule "^/openstack/vmware-nsx-tempest-plugin(.*?)$"        "/x/vmware-nsx-tempest-plugin$1"         [R=301,L]
 RewriteRule "^/openstack/vmware-nsx(.*?)$"                       "/x/vmware-nsx$1"                        [R=301,L]
 RewriteRule "^/openstack/vmware-vspc(.*?)$"                      "/x/vmware-vspc$1"                       [R=301,L]
 RewriteRule "^/openstack/windmill(.*?)$"                         "/windmill/windmill$1"                   [R=301,L]
 RewriteRule "^/openstack/wsme(.*?)$"                             "/x/wsme$1"                              [R=301,L]
 RewriteRule "^/openstack/yaml2ical(.*?)$"                        "/opendev/yaml2ical$1"                   [R=301,L]
 RewriteRule "^/openstack/zuul-sphinx(.*?)$"                      "/zuul/zuul-sphinx$1"                    [R=301,L]
 RewriteRule "^/openstack/zuul(.*?)$"                             "/zuul/zuul$1"                           [R=301,L]
</Macro>

Define AFS_ROOT /afs/openstack.org/project/tarballs.opendev.org

<VirtualHost *:80>
  ServerName tarballs.opendev.org
  RewriteEngine On
  RewriteRule ^/(.*) https://tarballs.opendev.org/$1 [last,redirect=permanent]
  LogLevel warn
  ErrorLog /var/log/apache2/tarballs.opendev.org_error.log
  CustomLog /var/log/apache2/tarballs.opendev.org_access.log combined
  ServerSignature Off
</VirtualHost>

<IfModule mod_ssl.c>
<VirtualHost *:443>

  ServerName tarballs.opendev.org

  DocumentRoot ${AFS_ROOT}

  SSLCertificateFile      /etc/letsencrypt-certs/tarballs.opendev.org/tarballs.opendev.org.cer
  SSLCertificateKeyFile   /etc/letsencrypt-certs/tarballs.opendev.org/tarballs.opendev.org.key
  SSLCertificateChainFile /etc/letsencrypt-certs/tarballs.opendev.org/ca.cer
  SSLProtocol All -SSLv2 -SSLv3
  # Note: this list should ensure ciphers that provide forward secrecy
  SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:!AES256:!aNULL:!eNULL:!MD5:!DSS:!PSK:!SRP
  SSLHonorCipherOrder on

  Use UserAgentFilter

  <Directory ${AFS_ROOT}>
    Options Indexes FollowSymLinks MultiViews
    AllowOverrideList Redirect RedirectMatch
    Require all granted
  </Directory>

  Use OpendevRedirects

  LogLevel warn
  ErrorLog /var/log/apache2/tarballs.opendev.org_error.log
  CustomLog /var/log/apache2/tarballs.opendev.org_access.log combined
  ServerSignature Off

</VirtualHost>
</IfModule>

UndefMacro OpendevRedirects