Differences between revisions 5 and 6
Revision 5 as of 2015-03-19 00:50:30
Size: 4129
Editor: ?BrandonF
Comment:
Revision 6 as of 2015-03-19 01:02:09
Size: 4134
Editor: ?BrandonF
Comment:
Deletions are marked like this. Additions are marked like this.
Line 39: Line 39:
 * '''Benefits to Debian''': It will allow Debian users to be able to self host web applications that requires knowledge of system administration and web servers. This tool will simplify hosting these applications on Debian.  * '''Benefits to Debian''': It will allow Debian users to be able to self host web applications that require knowledge of system administration and web servers. This tool will simplify hosting these applications on Debian.
Line 41: Line 41:
 * '''Deliverables''': A tool that automates the installation, automated configuration, and upgrading of web applications through a web interface presented to the user and code documentation.  * '''Deliverables''': A tool that automates the installation, automated configuration, and upgrading of web applications through a web interface presented to the user; code documentation.
Line 49: Line 49:
  * Get more familiar with Chef and other technologies needed for this project   * Get more familiar with Chef, Plinth, and other technologies needed for this project
  • Name: Brandon Fairchild

  • Contact/Email: csbit32 at gmail dot com, IRC: nerith on freenode/OFTC, Github: https://github.com/nerith

  • Background:I am a Computer Science student with an interest in free and open source software development and system administration. I was a Google Summer of Code student last year on the Debian Continuous Integration Project. I have been involved in programming for the past six years. During that time I have programmed in C, Java, Python, Ruby, BASH scripting, and other languages. I have taught myself most of the languages that I know. Currently, I run Linux on all of my computers, specifically Debian. I am familiar with web development since I took some classes on the subject and practice it in my spare time and I have become familiar with databases such as MySQL and SQLite. I am the best person to work on this project because I understand what needs to be accomplished, have the skills that are needed, and I am willing to learn.


Project: Automated Configuration of Packaged Web Applications

https://wiki.debian.org/SummerOfCode2015/Projects/AutoConfigWebApps


Project Details

The following will be done with this project:

  1. A tool for allowing 'userops' on a Debian system:

    • Web interface for the tool that allows installation of web applications by users less able to get it set up by themselves and manage upgrades and security.
    • The front-end of the tool will use Plinth for the UI
  2. Recipes for configuration:

    • Initially, the tool will support 3 popular web applications. Support will be included for ?OwnCloud (PHP), ?MediaGoblin (Python), and a popular Ruby web application.

    • Configuration of the installed packages will be managed through Chef
  3. Documentation:

    • Documentation will be provided to allow others to test and use the tool
    • Documentation for non-technical users so that they can also understand the tool and how to use it
    • Show how to setup an instance of the tool for development purposes and usage
    • Detailed documentation on how the tool functions through the use of code comments and written documentation.
  4. Communicate with the UserOps initiative announced by ?MediaGoblin

  5. Communicate with the maintainers of the packages that will be initially supported by the tool


  • Synopsis: A tool will be created that will simplify and automate self-hosting of web applications on Debian systems.

  • Benefits to Debian: It will allow Debian users to be able to self host web applications that require knowledge of system administration and web servers. This tool will simplify hosting these applications on Debian.

  • Deliverables: A tool that automates the installation, automated configuration, and upgrading of web applications through a web interface presented to the user; code documentation.


Project Schedule

[Note:] Code documentation will be done throughout the coding period.

BEFORE CODING PERIOD

  • Community Bonding:

    • Get more familiar with Chef, Plinth, and other technologies needed for this project
    • Communicate with the mentor, the Debian community, and others (MediaGoblin 'userops' list)

CODING PERIOD 1

CODING PERIOD 2

  • Final evaluations


  • Exams and other commitments: I do not have any exams during the coding period.

  • Other summer plans: I have no other summer plans.

  • Why Debian?: Debian was one of the first Linux distributions that got me interested in Linux and free and open source software. It is one of my distributions of choice due to the stability and quality of releases. I want to give back to Debian for the value it has provided to me.

  • Are you applying for other projects in SoC? I am not applying for any other projects.