code: def tar(self, appname, appversion):
          
          name_tmpl = '%(app)s-%(version)s-%(time)s.tar.bz2'
          time = utc.now()
          name = name_tmpl % {'app': appname,
                              'version': appversion,
                              'time': time.strftime('%Y-%m-%dT%H-%M')}
  
          if not os.path.exists(TARBALL_HOME):
              os.mkdir(TARBALL_HOME)
          tarball = os.path.join(TARBALL_HOME, name)
          tar_params = {'filename': tarball, 'folder': self.folder}
          tar_result = run('tar -C %(folder)s -cjf %(filename)s .' % tar_params)
          tar_result.raise_for_status()
          return Build(appname, appversion, time, tarball)
docs: Given an app name and version to be used in the tarball name,
          create a tar.bz2 file with all of this folder's contents inside.
  
          Return a Build object with attributes for appname, appversion,
          time, and path.