diff --git a/tools/www-generator.py b/tools/www-generator.py index 078426ecba..61d203b337 100755 --- a/tools/www-generator.py +++ b/tools/www-generator.py @@ -70,7 +70,12 @@ def _check_url(url): return (resp.status_code // 100) == 2, resp.status_code +# NOTE(dhellmann): List of tuple of flag name and URL template. None +# for the flag name means always apply the URL, otherwise look for a +# True value associated with the flag in the project data. _URLS = [ + (None, + 'https://docs.openstack.org/{name}/{series}/'), ('has_install_guide', 'https://docs.openstack.org/{name}/{series}/install/'), ('has_admin_guide', @@ -159,7 +164,10 @@ def load_project_data(source_directory, check_all_links=False): # If the project claims to have a separately published guide # of some sort, look for it before allowing the flag to stand. for flag, url_template in _URLS: - flag_val = project.get(flag, False) + if flag is None: + flag_val = True + else: + flag_val = project.get(flag, False) try: url = url_template.format(series=series, **project) except KeyError: @@ -179,7 +187,8 @@ def load_project_data(source_directory, check_all_links=False): if flag_val and not exists: logger.error( '%s set for %s but %s does not exist (%s)', - flag, project['name'], url, status, + flag or 'home page check', project['name'], + url, status, ) fail = True elif (not flag_val) and check_all_links and exists: diff --git a/www/project-data/latest.yaml b/www/project-data/latest.yaml index dc1ad534a4..4923ebc4bb 100644 --- a/www/project-data/latest.yaml +++ b/www/project-data/latest.yaml @@ -36,7 +36,7 @@ service: Image service Python Bindings type: client description: glance client -- name: glance-store +- name: glance_store service: glance backend abstraction library type: library @@ -55,10 +55,10 @@ - name: os-vif type: library service: Library for plugging and unplugging virtual interfaces. -- name: osc-placement - type: client - service: OpenStackClient plugin for the Nova Placement service. - description: nova placement client +# - name: osc-placement +# type: client +# service: OpenStackClient plugin for the Nova Placement service. +# description: nova placement client - name: neutron service: Networking service @@ -202,13 +202,13 @@ type: client description: designate client -- name: ec2-api - service: EC2 API compatibility layer - service_type: ec2-api -# has_install_guide: true -# has_config_ref: true - has_api_ref: true - type: service +# - name: ec2-api +# service: EC2 API compatibility layer +# service_type: ec2-api +# # has_install_guide: true +# # has_config_ref: true +# has_api_ref: true +# type: service - name: barbican service: Key Manager service @@ -349,10 +349,10 @@ has_api_ref: true # has_config_ref: true has_user_guide: true -- name: python-muranoclient - service: Application Catalog service Python Bindings - type: client - description: murano client +# - name: python-muranoclient +# service: Application Catalog service Python Bindings +# type: client +# description: murano client - name: senlin service: Clustering service @@ -361,10 +361,10 @@ has_install_guide: false # has_config_ref: true has_user_guide: true -- name: python-senlinclient - service: Clustering service Python Bindings - type: client - description: senlin client +# - name: python-senlinclient +# service: Clustering service Python Bindings +# type: client +# description: senlin client - name: storlets service: Compute inside Object Storage service @@ -390,10 +390,10 @@ has_api_ref: true # has_config_ref: true has_user_guide: true -- name: python-tackerclient - service: NFV Orchestration service Python Bindings - type: client - description: tacker client +# - name: python-tackerclient +# service: NFV Orchestration service Python Bindings +# type: client +# description: tacker client - name: cloudkitty service: Rating service @@ -401,10 +401,10 @@ type: service has_install_guide: false # has_config_ref: true -- name: python-cloudkittyclient - service: Rating service Python Bindings - type: client - description: cloudkitty client +# - name: python-cloudkittyclient +# service: Rating service Python Bindings +# type: client +# description: cloudkitty client - name: vitrage service: RCA (Root Cause Analysis) service @@ -585,10 +585,10 @@ # has_install_guide: true # has_api_ref: true # type: service -- name: python-freezerclient - service: Backup, Restore, and Disaster Recovery service client - type: client - description: freezer client +# - name: python-freezerclient +# service: Backup, Restore, and Disaster Recovery service client +# type: client +# description: freezer client - name: karbor service: Data Protection Orchestration Service @@ -597,15 +597,15 @@ has_api_ref: true # has_config_ref: true type: service -- name: python-karborclient - service: Data Protection Orchestration Service client - type: client - description: karbor client +# - name: python-karborclient +# service: Data Protection Orchestration Service client +# type: client +# description: karbor client -- name: python-monascaclient - service: Monitoring client - type: client - description: monasca client +# - name: python-monascaclient +# service: Monitoring client +# type: client +# description: monasca client - name: python-openstackclient service: Command line interface to OpenStack @@ -634,10 +634,10 @@ # has_api_ref: true # has_config_ref: true type: service -- name: python-solumclient - service: Software Development Lifecycle Automation client - type: client - description: solum client +# - name: python-solumclient +# service: Software Development Lifecycle Automation client +# type: client +# description: solum client - name: tricircle service: Networking automation across Neutron service @@ -651,9 +651,9 @@ type: client description: tricircle client -- name: os-win - service: Windows / Hyper-V library for OpenStack projects. - type: library +# - name: os-win +# service: Windows / Hyper-V library for OpenStack projects. +# type: library - name: openstackdocstheme service: Theme and extension support for Sphinx documentation for official projects