Remove remnants of conditional build infrastructure
We no longer build multiple conditional builds. Remove all the tooling that enabled this along with references to said tooling. Change-Id: Iea75f686797ab379c235ddbfb2f881b3f6376814 Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
This commit is contained in:
@@ -1,15 +1,13 @@
|
|||||||
===============================
|
=========
|
||||||
Profiling (conditional content)
|
Profiling
|
||||||
===============================
|
=========
|
||||||
|
|
||||||
Installation Guides has content that depends upon the operating
|
Installation Guides has content that depends upon the operating
|
||||||
systems.
|
systems.
|
||||||
|
|
||||||
Use the ``only`` directive to specify the content that is operating-system
|
Use separate files to specify content that is operating-system specific. Each
|
||||||
specific. Define one or several tags depending on the operating system
|
file should have the same name but for an addition suffix. The following
|
||||||
the content belongs to. Make sure to close the ``only`` tag with ``endonly``.
|
suffixes should be used:
|
||||||
|
|
||||||
The valid tags for the ``only`` directive are:
|
|
||||||
|
|
||||||
* ``ubuntu`` for Ubuntu
|
* ``ubuntu`` for Ubuntu
|
||||||
* ``debian`` for Debian
|
* ``debian`` for Debian
|
||||||
@@ -18,50 +16,5 @@ The valid tags for the ``only`` directive are:
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
The ``endonly`` tag allows the parser to identify the distro-specific blocks.
|
Previously, ``.. only`` directives were used to generate conditional output.
|
||||||
For more information, refer to the :doc:`rst2bash` section. These
|
This required multiple builds and has since been phased out.
|
||||||
changes are mandatory only for the installation guides.
|
|
||||||
|
|
||||||
**Input**
|
|
||||||
|
|
||||||
.. code-block:: none
|
|
||||||
|
|
||||||
Install the NTP service
|
|
||||||
-----------------------
|
|
||||||
|
|
||||||
.. only:: ubuntu or debian
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# apt-get install chrony
|
|
||||||
|
|
||||||
.. endonly
|
|
||||||
|
|
||||||
.. only:: rdo
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# yum install chrony
|
|
||||||
|
|
||||||
.. endonly
|
|
||||||
|
|
||||||
.. only:: obs
|
|
||||||
|
|
||||||
On openSUSE:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# zypper addrepo http://download.opensuse.org/repositories/network:time/openSUSE_13.2/network:time.repo
|
|
||||||
...
|
|
||||||
|
|
||||||
On SLES:
|
|
||||||
|
|
||||||
.. code-block:: console
|
|
||||||
|
|
||||||
# zypper addrepo http://download.opensuse.org/repositories/network:time/SLE_12/network:time.repo
|
|
||||||
...
|
|
||||||
|
|
||||||
.. endonly
|
|
||||||
|
|
||||||
For more details refer to `Including content based on tags
|
|
||||||
<http://sphinx.readthedocs.org/en/latest/markup/misc.html?highlight=only%20directive#including-content-based-on-tags>`_.
|
|
||||||
|
|||||||
@@ -53,13 +53,3 @@ syntax format.
|
|||||||
[DEFAULT]
|
[DEFAULT]
|
||||||
...
|
...
|
||||||
debug = True
|
debug = True
|
||||||
|
|
||||||
* The ``only`` tags should be closed with ``endonly``.
|
|
||||||
|
|
||||||
.. code-block:: rst
|
|
||||||
|
|
||||||
.. only:: ubuntu or debian
|
|
||||||
|
|
||||||
All related content.
|
|
||||||
|
|
||||||
.. endonly
|
|
||||||
|
|||||||
@@ -1,85 +0,0 @@
|
|||||||
#!/usr/bin/env python3
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
|
|
||||||
import argparse
|
|
||||||
import os
|
|
||||||
|
|
||||||
|
|
||||||
def do_one(base, out_dir, filename, tag):
|
|
||||||
outname = filename[:-4] + '-' + tag + '.rst'
|
|
||||||
print(outname, tag)
|
|
||||||
|
|
||||||
inside_only = None
|
|
||||||
prefix_len = None
|
|
||||||
output = []
|
|
||||||
num_only_blocks = 0
|
|
||||||
|
|
||||||
with open(filename, 'r', encoding='utf-8') as inf:
|
|
||||||
for line in inf:
|
|
||||||
if '.. only::' in line:
|
|
||||||
print(line.rstrip())
|
|
||||||
inside_only = line
|
|
||||||
num_only_blocks += 1
|
|
||||||
prefix_len = None
|
|
||||||
continue
|
|
||||||
elif '.. endonly' in line:
|
|
||||||
inside_only = None
|
|
||||||
prefix_len = None
|
|
||||||
continue
|
|
||||||
elif inside_only:
|
|
||||||
if line.lstrip() == line and line.strip():
|
|
||||||
# The line has content and is flush left, so the
|
|
||||||
# existing inside block was not closed with the
|
|
||||||
# comment.
|
|
||||||
inside_only = None
|
|
||||||
prefix_len = None
|
|
||||||
print('copying %r' % line)
|
|
||||||
output.append(line)
|
|
||||||
elif tag in inside_only:
|
|
||||||
if not line.strip():
|
|
||||||
# blank line, include it but do not use it to find
|
|
||||||
# the prefix len
|
|
||||||
output.append('\n')
|
|
||||||
continue
|
|
||||||
if prefix_len is None:
|
|
||||||
# Determine how much this block is indented.
|
|
||||||
prefix_len = len(line) - len(line.lstrip())
|
|
||||||
print('prefix length:', prefix_len)
|
|
||||||
output.append(line[prefix_len:])
|
|
||||||
print('ONLY:', repr(line[prefix_len:]))
|
|
||||||
else:
|
|
||||||
print('IGNORE:', repr(line))
|
|
||||||
else:
|
|
||||||
print('copying %r' % line)
|
|
||||||
output.append(line)
|
|
||||||
if inside_only:
|
|
||||||
raise RuntimeError('unclosed only block in %s' % filename)
|
|
||||||
if num_only_blocks:
|
|
||||||
with open(outname, 'w', encoding='utf-8') as outf:
|
|
||||||
outf.writelines(output)
|
|
||||||
|
|
||||||
|
|
||||||
parser = argparse.ArgumentParser()
|
|
||||||
parser.add_argument('base')
|
|
||||||
parser.add_argument('outdir')
|
|
||||||
parser.add_argument('tag', nargs='+')
|
|
||||||
args = parser.parse_args()
|
|
||||||
|
|
||||||
base = args.base.rstrip('/') + '/'
|
|
||||||
|
|
||||||
for dir_name, sub_dirs, files in os.walk(base):
|
|
||||||
for f in files:
|
|
||||||
if not f.endswith('.rst'):
|
|
||||||
continue
|
|
||||||
for tag in args.tag:
|
|
||||||
do_one(base, args.outdir, os.path.join(dir_name, f), tag)
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
|
|
||||||
toolsdir=$(dirname $0)
|
|
||||||
install_guide=doc/install-guide/source
|
|
||||||
|
|
||||||
python3 $toolsdir/split_platforms.py doc/install-guide/source doc/install-guide \
|
|
||||||
rdo obs ubuntu debian
|
|
||||||
|
|
||||||
# $ git grep 'only::' | cut -f2- -d: | sed 's/.*:: //g' | sort -ur
|
|
||||||
# ubuntu or debian
|
|
||||||
# ubuntu
|
|
||||||
# rdo or ubuntu or debian or obs
|
|
||||||
# rdo or ubuntu or debian
|
|
||||||
# rdo or ubuntu
|
|
||||||
# rdo or obs or ubuntu
|
|
||||||
# rdo or obs
|
|
||||||
# rdo or debian or obs
|
|
||||||
# rdo
|
|
||||||
# obs or ubuntu
|
|
||||||
# obs or rdo or ubuntu
|
|
||||||
# obs or rdo
|
|
||||||
# obs or debian
|
|
||||||
# obs
|
|
||||||
# debian or ubuntu
|
|
||||||
# debian
|
|
||||||
Reference in New Issue
Block a user