= geoip-city-wsgi SOP A simple web service that return geoip information as JSON-formatted dictionary in utf-8. Particularly, it's used by anaconda[1] to get the most probable territory code, based on the public IP of the caller. == Contents * <<_contact_information>> * <<_basic_function>> * <<_ansible_roles>> * <<_documentation_links>> == Contact Information Owner:: Fedora Infrastructure Team Contact:: #fedora-apps, #fedora-admin, #fedora-noc Location:: https://geoip.fedoraproject.org Servers:: sundries*, sundries*-stg Purpose:: A simple web service that return geoip information as JSON-formatted dictionary in utf-8. Particularly, it's used by https://fedoraproject.org/wiki/Anaconda[anaconda] to get the most probable territory code, based on the public IP of the caller. == Basic Function * Users go to https://geoip.fedoraproject.org/city * The website is exposed via `/etc/httpd/conf.d/geoip-city-wsgi-proxy.conf`. * Return a string with geoip information with syntax as JSON-formatted dict in utf8 * It also currently accepts one override: `?ip=xxx.xxx.xxx.xxx`, e.g. https://geoip.fedoraproject.org/city?ip=18.0.0.1 which then uses the passed IP address instead of the determined IP address of the client. == Ansible Roles The geoip-city-wsgi role: https://pagure.io/fedora-infra/ansible/blob/main/f/roles/geoip-city-wsgi is present in sundries playbook: https://pagure.io/fedora-infra/ansible/blob/main/f/playbooks/groups/sundries.yml the proxy tasks are present in: https://pagure.io/fedora-infra/ansible/blob/main/f/playbooks/include/proxies-reverseproxy.yml == Documentation Links App: https://geoip.fedoraproject.org Source: https://github.com/fedora-infra/geoip-city-wsgi Bugs: https://github.com/fedora-infra/geoip-city-wsgi/issues