===== New Mirror Management System ===== // Possible Mentor: [[danbrown@php.net|Daniel P. Brown]] // ==== Description ==== Our existing management system for the network of official mirrors worldwide has a few issues and areas for improvement. The present system is accessible via a browser-based web interface (using a php.net CVS account, and hosted on master.php.net), and provides the following services: * Addition, deletion, and modification of DNS for official mirrors of the php.net site as a whole * Automated checking of all mirrors, marking mirrors as "disabled" when issues are detected * Listing of all mirrors presently configured with the system (active and otherwise) * Manual disabling of mirrors * Generic status display of the "health" of the mirror ("OK" or flagged) * Ability to edit the mirror's display information within our list on php.net * Automated mailing to the mirror's maintainer when an issue is detected * Automated mailing of the status of all mirrors on a weekly basis Over time, some of the php.net mirror admins have discussed the need and/or desire to add new - or improve existing - functionality in this system. This includes, but is not limited to: * Improved mirror status checking * The ability to keep logs of notes regarding the mirror over time, displaying the most recent on the summary page * Simple graphing and statistics for uptime and PING response time * A geo-IP lookup to ensure that the mirror IP address matches the physical region it serves * An online "waiting list" application form (many potential donors currently contact the mailing list or Dan Brown directly) * An online form to collect data from mirror maintainer applicants * A form-to-mail interface to email individual maintainers, the mailing list, or all maintainers directly (for announcements) * Number of interested donors on the "waiting list" under each country's heading * Automated quarterly reminders to folks on the "waiting list" to update their status if they are no longer willing/able (?) * System specifications on each individual mirror (?) * A scoring system based on the system specs of the mirrors (?) * Load-balancing based upon the score of the mirror when redirecting to a local mirror in the region (?) * Automated daily reminder emails to mirror maintainer when mirror is out-of-sync > 24 hours (still auto-disabled) (?) * .... etc. ==== Progress ==== A few points integrated. ==== Status ==== Open. ==== TODO ==== * Document currently used process and tools * Also note that several related bugs exist