osdir.com


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[infra][releases][requirements] Publishing per branch constraints files


Tony Breeds <tony at bakeyournoodle.com> writes:

> On Fri, Feb 15, 2019 at 11:32:32AM +1100, Tony Breeds wrote:
>> On Thu, Feb 14, 2019 at 04:33:19PM -0500, Doug Hellmann wrote:
>> 
>> > What if we just had one .htaccess file in the releases (or requirements)
>> > repo, and we updated it when we closed branches?
>> 
>> You mean a completely static file?  That could work.  I'll have a play
>> and see if a single file and work for multiple paths.  I admit it's been
>> a very long time since I played with apache like this.
>
> Yup putting the following in <docroot>/constraints/.htaccess[1]
>
> ---
> RewriteEngine On
> RewriteBase "/constraints/"
> RewriteRule "^upper/master"  "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=master";
> RewriteRule "^upper/train"   "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=master";
> RewriteRule "^upper/stein"   "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=master";
> RewriteRule "^upper/rocky"   "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/rocky";
> RewriteRule "^upper/queens"  "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/queens";
> RewriteRule "^upper/pike"    "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/pike";
> RewriteRule "^upper/ocata"   "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/ocata";
> RewriteRule "^upper/newton"  "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/newton";
> RewriteRule "^upper/juno"    "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=juno-eol";
> RewriteRule "^upper/kilo"    "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=kilo-eol";
> RewriteRule "^upper/liberty" "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=liberty-eol";
> RewriteRule "^upper/mitaka"  "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=mitaka-eol";
> RewriteRule "^upper/newton"  "http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=newton-eol";
> ---
>
> Seems to do pretty much exactly what we need.  It wont be trivial to
> make sure we get that right but it also wont be too hard to automate.
>
> We could add that as static content to releases.openstack.org (from
> openstack/releases) today (well next week) while we work out exactly
> how and when we publish that to ensure it's always in sync.

We should be able to automate building the list of rules using a
template in the releases repo, since we already have a list of all of
the releases and their status there in
deliverables/series_status.yaml. It may require adding something to
source/conf.py to load that data to make it available to the template.

> Thanks Doug!
>
> Thoughts?  Objections?
>
> Yours Tony.
>
> [1] We might need an apache config tweak to ensure the .htaccess file
> works but IIRC we're doign somethign similar on docs.o.o

Yeah, we should make sure redirects are enabled. I think we made that a
blanket change when we did the docs redirect work, but possibly not.

-- 
Doug