1. mouad
  2. PYPI Testing Infrastructure :PyTI

Commits

mouad  committed 521c111

- Rewrite of the package readme and specification of new milestone to work in
for pyti, i'm back ... .

  • Participants
  • Parent commits 42ebe64
  • Branches default

Comments (0)

Files changed (2)

File HOW TO INSTALL

-How to install PyTI ?
-=====================
-
-- first of all clone the repository in your local machine with the commands :
-     hg clone https://mouad@bitbucket.org/mouad/pypi-testing-infrastructure-pyti
-     
-- we will install first pony-build
-   - cd pony-build/
-   - python setup.py install   
-
-- now we will install first the GUI package
-   - cd GUI/
-   - python setup.py install
-   - python manage.py syncdb (create also the super user)
-   
-- after installing the two package we will run the server
-    cd GUI/; python run.py --port <port>  -i 0.0.0.0  
-
-- now you can access to the web interface from your browser but first go to /admin
-  example :
-    http://lyorn.idyll.org:8084/admin/
-  
-- add the name of the site in the table Sites
-  example :
-     http://lyorn.idyll.org:8084/ in domanine and displayed name 
-
-- next add the hub and topic in the table Subscriptions
-  example: 
-     hub = https://pubsubhubbub.appspot.com/
-     topic = http://pypi.python.org/pypi?:action=lasthour
-     verify token = subscribe_pyti (must start with "subscribe")
-     
-- now go to the hub and subscribe your self given the callback url and the topic
-  example:
-     callback = http://lyorn.idyll.org:8084/push/
-     topic = http://pypi.python.org/pypi?:action=lasthour
-     Verify type = Asynchronous
-     Mode = subscribe
-     verify token = subscribe_pyti (must start with "subscribe")
-   
-- for finishing you have to personalize the build client in pony-build/client/build-pypi-package.py
-  if you want to use the same client first of all you have to change arguments of EC2Context by 
-  specifing a new EC2 machine and a new username and a new private key, and an other thing if
-  you want to use the command 'tox' you have to upload into your EC2 machine an tox.ini file and to put
-  it in the home directory of the username given to EC2Context
-  
-  example : (tox.ini) 
-    [tox]
-    envlist = py26
-    [testenv]
-    commands=py.test
-  
-             
-
-       

File README

View file
 PYPI Testing Infrastructure (PyTI) :
 ====================================
 
-this project have been done during the GSoC of 2010, this aim of the project was to create
-an infrastructure for testing all uploaded package in pypi. in the end of the GSoC this infrastrucuture was 
-composed from 3 entities : 
+This project have been done during the GSoC of 2010, the aim of the project was
+to create an infrastructure for testing all uploaded package in pypi. in the
+end of the GSoC this infrastrucuture was composed from 3 entities : 
 
-- an EC2 machine where tests are run
-- the continuous integration system pony-build that build packages following 3 rules:
-    - download package
-    - install package using tox
-    - run package test uning py.test
-    - calculate cheesecake kwality factors of the package
-- a web interface with a PuSH subscriber that get notification from pypi 
+- An EC2 machine where tests are run.
+- The continuous integration system pony-build that build packages following 4
+  rules:
+    - Download package from pypi.
+    - Install package using tox.
+    - Run package test uning py.test.
+    - Calculate cheesecake kwality factors of the package.
+- A web interface with a PuSH subscriber that get notification from pypi
+  and display testing result.
 
+How to install PyTI ?
+=====================
+
+First of all clone the repository in your local machine with the commands ::
+
+  hg clone https://mouad@bitbucket.org/mouad/pypi-testing-infrastructure-pyti
+     
+- Start by installing pony-build
+   $ cd pony-build/
+   $ python setup.py install   
+
+- Install than the GUI package
+   $ cd GUI/
+   $ python setup.py install
+   $ python manage.py syncdb
+  
+  N.B: Create also the super user of the project when you are asked for.
+   
+- Run the devlopment server:
+    cd GUI/; python run.py --port <port>  -i 0.0.0.0  
+
+Now you can access to the web interface from your browser but first go to
+admin interface and add the name of the site in the table Sites Next add the
+hub and the topic in the table Subscriptions eg.
+     
+   hub = https://pubsubhubbub.appspot.com/
+   topic = http://pypi.python.org/pypi?:action=lasthour
+   verify token = subscribe_pyti (must start with "subscribe")
+     
+Now go to the hub and subscribe your self given the callback url and the topic
+eg.
+     callback = http://lyorn.idyll.org:8084/push/
+     topic = http://pypi.python.org/pypi?:action=lasthour
+     Verify type = Asynchronous
+     Mode = subscribe
+     verify token = subscribe_pyti (must start with "subscribe")
+   
+For finishing you have to personalize the build client in
+``pony-build/client/build-pypi-package.py`` if you want to use the same client
+first of all you have to change arguments of EC2Context by  specifing a new EC2
+machine and a new username and a new private key, and an other thing if you
+want to use the command 'tox' you have to upload into your EC2 machine an
+tox.ini file and to put it in the home directory of the username given to
+EC2Context eg.
+
+ ~/tox.ini
+    [tox]
+    envlist = py26
+    [testenv]
+    commands=py.test
+  
+             
 Project structure:
 ==================
 
-this project will contain 2 main sub project .
+This project will contain 2 main sub project .
 
 
-pony-build : this is a clone of the continuous integration system pony-build in which 
-            i added some feature like :  EC2Context ...
+pony-build : This is a clone of the continuous integration system pony-build in which i added some feature like EC2Context.
                 
-GUI : this is the web interface it's based on Django and jquery, this sub project contain 
-      an app that work as a pubsubhubbub subscriber to get package from pypi so that they can be tested
+GUI : This is the web interface it's based on Django and jquery, this sub
+project contain an app that work as a pubsubhubbub subscriber to get package
+from pypi so that they can be tested.
 
 
 What Next ?
 ===========
 
-- the client script "pony-build/client/build-pypi-package.py" that run builds commands can be 
-  ameliorate to allow build to be run in more than one EC2 machine like that we can have a EC2 machine 
-  for windows and another for linux ..
+- The client script "pony-build/client/build-pypi-package.py" that run builds
+  commands can be ameliorate to allow build to be run in more than one EC2
+  machine like that we can have a EC2 machine for windows and another for linux.
   
-- the EC2Context in "pony-build/client/pony_client.py" is a first version of a context that enable pony-build
-  to run build commands in an EC2 machine , its need more tests and work (i did have in the periode of working only 
-  one machine (big thanks to Jesse Noller.)) 
+- The EC2Context in "pony-build/client/pony_client.py" is a first version of a
+  context that enable pony-build to run build commands in an EC2 machine, its
+  need more tests and work (i did have in the periode of working only one
+  machine (big thanks to Jesse Noller.)) 
  
-- to trigger the package build, PyTI use PuSH notification from pypi but it's not all, to extend the system 
-  maybe we can add other PuSH source to the system an example of the use of this feature :
-  someone can create a script that every time he commit his work in his personnal repositery he notify also PyTI
-  using PuSH, he just have to add the hub and PuSH url to PyTI, like that PyTI can be use not only as a third-party
-  for pypi but also as a testing infrastructure to every one
+- To trigger the package build, PyTI use PuSH notification from pypi but it's
+  not all, to extend the system maybe we can add other PuSH source to the
+  system an example of the use of this feature will be that a devloper can 
+  create a post commit that he notify PyTI (using PuSH for example), and by
+  adding the hub and PuSH url to PyTI, PyTI can run his package tests for him.
    
-- the idea of implementing an AOuth in pypi was discussed in one of the irc reunion to enable third-party application like 
-  PyTI to use the same authentication system as pypi, this is very helpful in a way that every pypi user can have also his account
-  in PyTI and he can use it to build his packages to run some schedule builds ...   
+- The idea of implementing an AOuth in pypi was discussed in one of the irc
+  reunion to enable third-party application like PyTI to use the same
+  authentication as pypi, this is very helpful in a way that every pypi
+  user can have also his account in PyTI and he can use it to build his
+  packages to run some schedule builds ...   
     
     
-Thanks:
+Big Thanks:
 =======
 
-I want to thanks first my mentor Jesse Noller for being there all the periode of the project
-and for all his remarks and advices, also i want to thanks Titus Brown for his help and for pony-build 
-and i want to thanks all the packagers student and their mentors for all their help .
+I want to thanks first my mentor Jesse Noller for being there all the periode
+of the project and for all his remarks and advices, also i want to thanks Titus
+Brown for his help and for pony-build  and i want to thanks all the packagers
+student and their mentors for all their help and suggestion.
 
   
-
- 
+