Skip to content
  • Georgios D. Tsoukalas's avatar
    make synnefo URLs consistent and configurable · 79f2ca3b
    Georgios D. Tsoukalas authored
    https://service.deployment.vendor.tld/service-base/api-prefix/hard/path
    |___________________________________| |__________| |________| |_______|
                 BASE_HOST                  BASE_PATH    PREFIX    Hardcoded
    |_________________________________________________|
                 SERVICE_BASE_URL
    
    - Introduce <SERVICE>_BASE_URL setting, and <API>_PREFIX constants
      for all services. Extract BASE_HOST, BASE_PATH from the setting.
    
    - Use settings and constants to construct top-level patterns
      (base-path/api-prefix) in services' urls.py
    
    - Refactor/extend proxy() to be compatible with the above.
    
    - Change URLs passed around (ui, e-mails) to be compatible.
      (needs more work)
    
    Notes:
    
    This configuration REQUIRES that any rewriting and proxying on the
    front-end must eventually result in the application server (gunicorn)
    getting the original path of the request, otherwise the view-generated
    URLs will be different.
    
    Changes:
    - set top-level urlpatterns from <SERVICE>_BASE_URL
    - rename setting: APP_INSTALL_URL to CYCLADES_BASE_URL
    - rename setting: ASTAKOS_URL to ASTAKOS_BASE_URL everywhere
    - introduce setting: PITHOS_BASE_URL
    - update shipped .confs, quick install admin guide, upgrade guide
    - fix urls/views/reverse()/other that were broken
    - (more not listed)
    79f2ca3b