code: def deb(options):
      
      key = options.get('key', None)
      ppa = options.get('ppa', None)
  
      version, simple_version = versions()
  
      info('Creating package for GeoNode version %s' % version)
  
      with pushd('package'):
          # Get rid of any uncommitted changes to debian/changelog
          info('Getting rid of any uncommitted changes in debian/changelog')
          sh('git checkout debian/changelog')
  
          # Workaround for git-dch bug
          # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=594580
          path('.git').makedirs()
  
          # Install requirements
          #sh('sudo apt-get -y install debhelper devscripts git-buildpackage')
  
          sh(('git-dch --spawn-editor=snapshot --git-author --new-version=%s'
              ' --id-length=6 --ignore-branch --release' % (
              simple_version)))
  
          deb_changelog = path('debian') / 'changelog'
          for line in fileinput.input([deb_changelog], inplace = True):
              print line.replace("urgency=low", "urgency=high"),
  
          ## Revert workaround for git-dhc bug
          path('.git').rmtree()
  
          if key is None and ppa is None:
              # A local installable package
              sh('debuild -uc -us -A')
          elif key is None and ppa is not None:
                  # A sources package, signed by daemon
                  sh('debuild -S')
          elif key is not None and ppa is None:
                  # A signed installable package
                  sh('debuild -k%s -A' % key)
          elif key is not None and ppa is not None:
                  # A signed, source package
                  sh('debuild -k%s -S' % key)
  
      if ppa is not None:
          sh('dput ppa:%s geonode_%s_source.changes' % (ppa, simple_version))
docs: Creates debian packages.
  
      Example uses:
          paver deb
          paver deb -k 12345
          paver deb -k 12345 -p geonode/testing