Webdev:Flux:Steward Guidelines
Jump to navigation
Jump to search
So you want to Steward an externally created web property... eh?
Concerns
- What is the URL for the site?
- Is there a Project Tracking Bug
- Does it cover requirements?
- Will this be localized
- Every project must be localizable (under consideration)
- Notify Teams Early
- WebQA
- Infrasec
- L10n
- IT
- Lifecycle
- All phases defined and built by agency
- Who supports the site / fixes bugs post-launch? Agency? Mozilla dev?
- End of life (campaign end date, takedown date)
Typical Requirement Areas
- Authentication/Authorization
- Community moderation
- Developed in Python/Django using Playdoh for rapid development.
- Webtrend Analytics
- Responsys - Allowing members to signup for mailing lists.
Process
- Create a wiki page for this website, if not already available.
- Create a new Component in Bugzilla
- Create a Github repo for this project; grant access to team members.
- Create a Bugzilla tracking ticket for this project. Will track:
- Create a Bugzilla ticket to document the End of Life process.
- Create a Bugzilla ticket to add Webtrends analytics code.
- Create a Bugzilla ticket for Privacy and Legal review.
- Create a Bugzilla ticket for Security review.
- Create a Bugzilla ticket to ensure that all config settings that will need to be updated have been added to the appropriate -dist file.
- Create a Bugzilla ticket to setup a stage server. Ticket Text
- Add site info to WhoWorksOnWhat
- Place HTTP Auth password (if available) on Stage Credentials page.
Stage Server Ticket
(This is a placeholder to create a stage instance for this project.)
Please create a stage instance for {Website Name}.
== Language ==
* Language: Python
* Framework: Django
== URL ==
* Production URL: {URL}
* Stage URL: {URL}
== HTTP Auth ==
* HTTP Auth is required to access this site.
* Please record username / password in this ticket.
== SSL ==
* SSL is required for testing the stage site.
== Code Repository ==
* Github Repo: {URL}
* Setup Github to auto-update every 5 minutes.
== Database ==
* This site requires a MySQL database.
== Settings ==
* cp settings_local.py-dist settings_local.py
* Update settings values accordingly.
* Set DEBUG to False in settings_local.py.
Code Repository
- First, determine if this project will be developed publicly or privately.
- All web projects will be hosted on Github.
- Create repo (private or public) under the mozilla organization
- Create a Team and add the external developers who will be the owner of the project through development
- Add Webdev and IT_Operations teams to the project
- If this is a private project, ensure that the code repository is also private until launch. Once launched, make the repo public.
Code Review
- Follow WebAppSec/Secure_Coding_Guidelines
- Follow WebDev:FrontendCodeStandards
- Hosting requirements
- Scalability concerns?
- Code review process?