Exemplo n.º 1
0
def doAfterBuild(build_config, install_path):
    file_name = os.path.basename(install_path)
    subject = u"自动打包 %s (%s)" % (file_name, os.environ["BUILD_TARGET"])

    file_name = file_name + ".zip"
    Utils.cleanFile(file_name)
    Utils.makeZipFile(file_name, install_path)

    msg = u"这是一封自动发送的邮件,请不回复"
    mail_config = config['mail']

    if "use_send_firefox" in config.keys() and config["use_send_firefox"]:
        from ffsend import upload
        url, owner = upload("https://send.firefox.com/", file_name)
        file_name = None
        msg = u"这是一封自动发送的邮件,请不回复!\n您的打包结果下载地址:%s" % (url, )

    try_time = mail_config['try_time']
    while (try_time > 0):
        try:
            try_time = try_time - 1
            print "try sendmail @ time:" + str(mail_config['try_time'] -
                                               try_time)
            sendmail(mail_config['smtp_server'], mail_config['smtp_username'],
                     mail_config['smtp_passwd'], mail_config['to_mail'],
                     subject, msg, file_name)
            break
        except:
            pass
Exemplo n.º 2
0
    def test_bad_delete(self):
        with open('delete.bin', 'wb') as f:
            f.write(self.data_tiny)

        url, token = ffsend.upload(self.service, 'delete.bin')
        self.assertTrue(url is not None)
        os.unlink('delete.bin')

        service, fid, secret = ffsend.parse_url(url)
        ffsend.download(service, fid, secret, '.')

        with self.assertRaises(FFSendError):
            ffsend.delete(service, fid, token)
Exemplo n.º 3
0
    def test_delete_pw(self):
        with open('delete.bin', 'wb') as f:
            f.write(self.data_tiny)

        url, token = ffsend.upload('delete.bin', password='******')
        self.assertTrue(url is not None)
        os.unlink('delete.bin')

        fid, secret = ffsend.parse_url(url)
        ffsend.delete(fid, token)

        with self.assertRaises(FFSendError):
            ffsend.download(fid, secret, '.', 'password', url)
Exemplo n.º 4
0
    def do_test(self, service, filename, data, password=None):
        with open(filename, 'wb') as f:
            f.write(data)

        url, token = ffsend.upload(service, filename, password=password)
        self.assertTrue(url is not None)
        os.unlink(filename)

        service, fid, secret = ffsend.parse_url(url)
        self.assertTrue(service is not None)
        self.assertTrue(secret is not None)

        metadata = ffsend.get_metadata(service, fid, secret, password, url)
        self.assertEqual(metadata['metadata']['name'], filename)
        self.assertEqual(metadata['metadata']['size'], len(data))

        ffsend.download(service, fid, secret, '.', password, url)
        with open(filename, 'rb') as f:
            self.assertEqual(data, f.read())
Exemplo n.º 5
0
    def test_set_dlimit(self):
        filename = 'dlimit.bin'
        with open(filename, 'wb') as f:
            f.write(self.data_tiny)

        url, token = ffsend.upload(self.service, filename)
        self.assertTrue(url is not None)
        os.unlink(filename)

        service, fid, secret = ffsend.parse_url(url)

        ffsend.set_params(service, fid, token, dlimit=2)

        for i in range(2):
            ffsend.download(service, fid, secret, '.')
            with open(filename, 'rb') as f:
                self.assertEqual(self.data_tiny, f.read())
            os.unlink(filename)

        with self.assertRaises(FFSendError):
            ffsend.download(service, fid, secret, '.')