Example #1
0
def file_upload_bos(config, local_filename):
    try:
        bucket_name = config['bucket_name']
        bucket_name = str(bucket_name)

        #p = config['dir']
        AK = config['AK']
        SK = config['SK']
        HOST = config['HOST']

        #print('step 1')
        #print('file name:',local_filename)
        bos_config = BceClientConfiguration(credentials=BceCredentials(
            str(AK), str(SK)),
                                            endpoint=str(HOST))
        bos_client = BosClient(bos_config)

        #print('step 2')
        #print 'bucket_name:',bucket_name,type(bucket_name)
        if not bos_client.does_bucket_exist(bucket_name):
            bos_client.create_bucket(bucket_name)

        #print('step 3')
        key = str(local_filename.split('/')[-1])
        #print('key:',key)
        bos_client.put_object_from_file(bucket_name, str(key),
                                        str(local_filename))
        print(local_filename + ' has been uploaded to bucket:' + bucket_name)
        return 0
    except Exception as e:
        print('file_upload_bos exception:' + str(e))
        traceback.print_exc()
        return -1
Example #2
0
 def setUp(self):
     HOST = 'bmr.bce-api.baidu.com'
     AK = 'ak'
     SK = 'sk'
     config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                     endpoint=HOST)
     self.bmr_client = bmr.BmrClient(config)
Example #3
0
 def set_bos_config(self, bos_ak, bos_sk, bos_sts,
                    bos_host="bj.bcebos.com"):
     self.config = BceClientConfiguration(
         credentials=BceCredentials(bos_ak, bos_sk),
         endpoint=bos_host,
         security_token=bos_sts)
     self.bos_client = BosClient(self.config)
Example #4
0
 def setUp(self):
     """
     set up
     """
     config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                     endpoint=HOST)
     self.the_client = acl_client.AclClient(config)
Example #5
0
 def init_conf(self):
     if self.config is not None:
         return
     self.config = copy.deepcopy(bce_client_configuration.DEFAULT_CONFIG)
     new_config = BceClientConfiguration(credentials=BceCredentials(
         self.__api_key, self.__api_secret),
                                         endpoint=self.host)
     self.config = self._merge_config(new_config)
Example #6
0
 def setUp(self):
     HOST = 'host'
     AK = 'ak'
     SK = 'sk'
     config = BceClientConfiguration(
         credentials=BceCredentials(AK, SK),
         endpoint=HOST
     )
     self.infinite_client = infinite.InfiniteClient(config)
Example #7
0
 def setUp(self):
     """
     set up
     """
     HOST = 'dcc.api-sandbox.baidu.com'
     AK = '4f4b13eda66e42e29225bb02d9193a48'
     SK = '507b4a729f6a44feab398a6a5984304d'
     config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                     endpoint=HOST)
     self.the_client = dcc_client.DccClient(config)
Example #8
0
 def setUp(self):
     """
     set up
     """
     HOST = b'bcc.bj.baidubce.com'
     AK = b''
     SK = b''
     config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                     endpoint=HOST)
     self.the_client = vpc_client.VpcClient(config)
Example #9
0
 def setUp(self):
     """
     set up
     """
     HOST = b''
     AK = b''
     SK = b''
     config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                     endpoint=HOST)
     self.the_client = eip_client.EipClient(config)
Example #10
0
    def __init__(self,
                 access_key_id,
                 secret_access_key,
                 bucket_name='',
                 endpoint=''):
        """
        初始化
        """
        super(UBosClient, self).__init__()

        # 创建BceClientConfiguration
        config = BceClientConfiguration(credentials=BceCredentials(
            access_key_id, secret_access_key),
                                        endpoint=endpoint)
        # 设置请求超时时间
        config.connection_timeout_in_mills = 3000
        # 新建BosClient
        self.client = BosClient(config)
        self.bucket = bucket_name
Example #11
0
 def __init__(self,
              location=settings.MEDIA_URL,
              base_url=settings.MEDIA_URL):
     super(BOSStorage, self).__init__(location, base_url)
     config = BceClientConfiguration(credentials=BceCredentials(
         BCS_BUCKET['AK'], BCS_BUCKET['SK']),
                                     endpoint=BCS_BUCKET['END_POINT'])
     self.bos_client = BosClient(config)
     # check if bucket exists
     if not self.bos_client.does_bucket_exist(self.bucket_name):
         self.bos_client.create_bucket(self.bucket_name)
    def setUp(self):
        """
        set up
        """
        HOST = b''
        AK = b''
        SK = b''

        config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                        endpoint=HOST)
        self.client = peerconn_client.PeerConnClient(config)
Example #13
0
def get_bos_file_bytes_io(path):
    logger = logging.getLogger("baidubce.http.bce_http_client")
    logger.setLevel(logging.DEBUG)
    logging.info('Getting file from Baidu BOS...')

    bos_config = BceClientConfiguration(credentials=BceCredentials(
        access_key_id, secret_access_key),
                                        endpoint=bos_host)
    bos_client = BosClient(bos_config)
    content = bos_client.get_object_as_string(bucket_name=bucket_name,
                                              key=path)
    audio = io.BytesIO(content)  # this would auto seek(0)
    return audio
Example #14
0
 def up_image(self,file):
     config = BceClientConfiguration(credentials=BceCredentials(self.access_key_id,self.secret_access_key),endpoint=self.bos_host)
     client = BosClient(config)
     self.key_name = '1234.jpg'
     try:
         res = client.put_object_from_string(bucket=self.back_name, key=self.key_name, data=file)
     except Exception as e:
         raise e
     else:
         result = res.__dict__
         if result['metadata']:
             url = 'https://' + self.back_name + '.bj.bcebos.com/'+ self.key_name
             print('图片上传成功')
             return url
Example #15
0
    def _bce_init_connection_sts(self):
        try:
            bce_config = BceClientConfiguration(credentials=BceCredentials(
                access_key_id=self.bce_access_key_id,
                secret_access_key=self.bce_secret_access_key),
                                                endpoint=self.bce_sts_host)
            sts_client = StsClient(bce_config)
            access_dict = {}
            duration_seconds = 3600
            access_dict["service"] = "bce:bos"
            access_dict["region"] = "bj"
            access_dict["effect"] = "Allow"
            resource = ["*"]
            access_dict["resource"] = resource
            permission = ["*"]
            access_dict["permission"] = permission

            access_control_dict = {"accessControlList": [access_dict]}
            response = sts_client.get_session_token(
                acl=access_control_dict, duration_seconds=duration_seconds)

            config = BceClientConfiguration(
                credentials=BceCredentials(str(response.access_key_id),
                                           str(response.secret_access_key)),
                endpoint=self.bce_bos_host,
                security_token=response.session_token)
            bos_client = BosClient(config)
            return bos_client

        except BceError as e:
            self.logger.error('使用BCE当前连接令牌,在连接时发生错误 {}'.format(e))
            return []

        except Exception as e:
            self.logger.exception('使用BCE当前连接令牌,在连接时发生异常错误 {}'.format(e))
            return []
    def up_image(self, key_name, file):
        config = BceClientConfiguration(credentials=BceCredentials(
            self.access_key_id, self.secret_access_key),
                                        endpoint=self.bos_host)
        client = BosClient(config)

        key_name = key_name
        try:
            res = client.put_object_from_string(bucket=self.back_name,
                                                key=key_name,
                                                data=file)
        except Exception as e:
            return None
        else:
            print('put success!')
Example #17
0
 def get_bos_config(self):
     bos_host = os.getenv("BOS_HOST")
     if not bos_host:
         raise KeyError('${BOS_HOST} is not found.')
     access_key_id = os.getenv("BOS_AK")
     if not access_key_id:
         raise KeyError('${BOS_AK} is not found.')
     secret_access_key = os.getenv("BOS_SK")
     if not secret_access_key:
         raise KeyError('${BOS_SK} is not found.')
     self.max_contents_count = int(os.getenv('BOS_CACHE_COUNT', 1))
     self.max_contents_time = int(os.getenv('BOS_CACHE_TIME', 1))
     bos_sts = os.getenv("BOS_STS")
     self.config = BceClientConfiguration(
         credentials=BceCredentials(access_key_id, secret_access_key),
         endpoint=bos_host, security_token=bos_sts)
Example #18
0
    def _bce_init_connection(self):
        try:
            bce_config = BceClientConfiguration(credentials=BceCredentials(
                access_key_id=self.bce_access_key_id,
                secret_access_key=self.bce_secret_access_key),
                                                endpoint=self.bce_bos_host)
            bos_client = BosClient(bce_config)
            return bos_client

        except BceError as e:
            self.logger.error('使用BCE当前凭证,在连接时发生错误 {}'.format(e))
            return []

        except Exception as e:
            self.logger.exception('使用BCE当前凭证,在连接时发生异常错误 {}'.format(e))
            return []
Example #19
0
    def test_init(self):
        """
        test init
        """
        file_name = "endpoints.test"
        fp = open(file_name, "w")
        fp.write('192.168.0.1:8080\n')
        fp.write('192.168.0.2:8080')
        fp.close()
        """test BceClientConfiguration"""
        conf = BceClientConfiguration(1, file_name, 3, 4, 5, 6, 7)
        self.assertEqual(conf.credentials, 1)
        self.assertEqual(conf.region, 3)
        self.assertEqual(conf.service_name, 4)
        self.assertEqual(conf.connection_timeout_in_mills, 5)
        self.assertEqual(conf.send_buf_size, 6)
        self.assertEqual(conf.recv_buf_size, 7)

        os.remove(file_name)
Example #20
0
def _getSTSToken():
    """
    Get the token to upload the file

    :return:
    """

    if not Define.hubToken:
        raise Error.ParamError("please provide a valid token")

    config = invokeBackend("circuit/genSTS", {"token": Define.hubToken})

    bosClient = BosClient(
        BceClientConfiguration(
            credentials=BceCredentials(
                str(
                    config['accessKeyId']),
                str(
                    config['secretAccessKey'])),
            endpoint='http://bd.bcebos.com',
            security_token=str(
                config['sessionToken'])))

    return [Define.hubToken, bosClient, config['dest']]
Example #21
0
#coding=utf-8

#导入Python标准日志模块
import logging

#从Python SDK导入BOS配置管理模块以及安全认证模块
from baidubce.bce_client_configuration import BceClientConfiguration
from baidubce.auth.bce_credentials import BceCredentials

#设置BosClient的Host,Access Key ID和Secret Access Key
bos_host = "BOS_HOST"
access_key_id = "AK"
secret_access_key = "SK"

#设置日志文件的句柄和日志级别
logger = logging.getLogger('baidubce.services.bos.bosclient')
fh = logging.FileHandler("sample.log")
fh.setLevel(logging.DEBUG)

#设置日志文件输出的顺序、结构和内容
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s -
%(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.DEBUG)
logger.addHandler(fh)

#创建BceClientConfiguration
config = BceClientConfiguration(credentials=BceCredentials(access_key_id,secret_access_key),endpoint = bos_host)
                                                           secret_access_key),
                                endpoint = bos_host)''""''""""""
Example #22
0
def main():
    """
    main函数
    :return: 
    """
    if len(sys.argv) != 3:
        print "参数个数不正确,请执行 sh test.sh 文件路径 Token"
        exit(0)
    path = sys.argv[1]
    token = sys.argv[2]
    if not os.path.exists(path):
        print "文件:" + path + " 不存在,请确认文件路径参数是否正确"
        exit(0)
    code, acl = bos_acl()
    if code != 200:
        print "服务异常,请稍候再试"
        exit(0)
    acl = json.loads(acl)
    if acl['errorCode'] != 0:
        print "服务异常,请稍候再试"
        exit(0)
    ak = unicode2str(acl['result']['accessKeyId'])
    sk = unicode2str(acl['result']['secretAccessKey'])
    bos_token = unicode2str(acl['result']['sessionToken'])
    config = BceClientConfiguration(
        credentials=BceCredentials(ak, sk),
        endpoint=unicode2str("http://bj.bcebos.com"),
        security_token=bos_token)
    bos_client = BosClient(config)
    bucket_name = unicode2str(acl['result']['bucketName'])
    object_key = unicode2str(acl['result']['fileKey'])
    token_status_code, token_data = check_token(token)
    if token_status_code != 200:
        print "服务异常,请稍候再试"
        exit(0)
    token_data = json.loads(token_data)
    if token_data['errorCode'] != 0:
        print token_data['errorMsg']
        exit(0)
    print "开始提交"
    upload_id = bos_client.initiate_multipart_upload(bucket_name,
                                                     object_key).upload_id
    left_size = os.path.getsize(path)
    # left_size用于设置分块开始位置
    # 设置分块的开始偏移位置
    offset = 0
    part_number = 1
    part_list = []
    total_size = left_size
    while left_size > 0:
        # 设置每块为5MB
        part_size = 10 * 1024 * 1024
        if left_size < part_size:
            part_size = left_size
        print total_size - left_size, "/", total_size
        response = bos_client.upload_part_from_file(bucket_name, object_key,
                                                    upload_id, part_number,
                                                    part_size, path, offset)

        left_size -= part_size
        offset += part_size
        part_list.append({
            "partNumber": part_number,
            "eTag": response.metadata.etag
        })
        part_number += 1
    print total_size, "/", total_size
    bos_client.complete_multipart_upload(bucket_name, object_key, upload_id,
                                         part_list)
    file_name = os.path.basename(path)
    status_code, data = submit(object_key, token, file_name)
    if status_code != 200:
        print "服务异常,请稍候再试"
    data = json.loads(data)
    if data['errorCode'] == 0:
        print data['result']
    else:
        print data['errorMsg']
# BOS example
bos_host = "bj.bcebos.com"

logger = logging.getLogger("baidubce.http.bce_http_client")
fh = logging.FileHandler("sample.log")
fh.setLevel(logging.DEBUG)

formatter = logging.Formatter(
    '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.DEBUG)
logger.addHandler(fh)

bos_config = BceClientConfiguration(credentials=BceCredentials(
    access_key_id, secret_access_key),
                                    endpoint=bos_host)
bos_client = BosClient(bos_config)

response = bos_client.list_buckets()
for bucket in response.buckets:
    print(bucket.name)

# TSDB example
tsdb_host = "xxx.tsdb-xxx.tsdb.iot.gz.baidubce.com"

protocol = baidubce.protocol.HTTP
connection_timeout_in_mills = None  #连接超时时间
send_buf_size = None  #发送缓冲区大小
recv_buf_size = None  #接收缓冲区大小
retry_policy = None  #重试策略
Example #24
0
def push_messenger(message_body):
    global worker_config
    try:
        from baidubce.services.sms import sms_client as sms
        from baidubce import exception as ex
        from baidubce.bce_client_configuration import BceClientConfiguration
        from baidubce.auth.bce_credentials import BceCredentials
    except ImportError:
        print "Path error!!"
        print sys.path
        sys.exit()

    if worker_config is not None:
        app_path = get_app_path()
        worker_config = get_worker_config("SMSWorker", app_path['conf'])

    HOST = worker_config['app']['HOST']
    AK = worker_config['app']['AK']
    SK = worker_config['app']['SK']

    logger = logging.getLogger('baidubce.services.sms.smsclient')
    fh = logging.FileHandler('sms_sample.log')
    fh.setLevel(logging.DEBUG)

    formatter = logging.Formatter(
        '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
    fh.setFormatter(formatter)
    logger.setLevel(logging.DEBUG)
    logger.addHandler(fh)

    bce_config = BceClientConfiguration(credentials=BceCredentials(AK, SK),
                                        endpoint=HOST)
    logging.basicConfig(level=logging.DEBUG,
                        filename='./sms.log',
                        filemode='w')
    LOG = logging.getLogger(__name__)

    sms_client = sms.SmsClient(bce_config)
    try:
        """
        # query template list
        LOG.debug('Query template list')
        response = sms_client.get_template_list()
        valid_template_id = None
        valid_template_content = None
        for temp in response.template_list:
            print temp.template_id, temp.name, temp.content, \
                    temp.status, temp.create_time, temp.update_time
            if temp.status == u'VALID':
                valid_template_id = temp.template_id
                valid_template_content = temp.content
        """

        LOG.debug('Send Message')
        response = sms_client.send_message(
            'smsTpl:8504139f-2b8e-49f3-adc4-957b8b3bfa67', [message_body],
            {'username': "******"})
        message_id = response.message_id
        return message_id
        """
        #query message
        LOG.debug('query Message')
        response = sms_client.query_message_detail(message_id)

        print response.message_id, response.receiver, response.content, response.send_time
        """

    except ex.BceHttpClientError as e:
        if isinstance(e.last_error, ex.BceServerError):
            LOG.error('send request failed. Response %s, code: %s, msg: %s' %
                      (e.last_error.status_code, e.last_error.code,
                       e.last_error.message))
        else:
            LOG.error('send request failed. Unknown exception: %s' % e)
Example #25
0
# -*- coding:UTF-8 -*-
from baidubce.bce_client_configuration import BceClientConfiguration
from baidubce.auth.bce_credentials import BceCredentials
from baidubce.protocol import HTTP

host = 'sms.bj.baidubce.com'
access_key_id = '331691219c464317ac1567d516ec6075'
secret_access_key = b'1f5c53505515416d91cdc275541d7403'
invoke_id = 'OCWGzUKl-y5gn-VgG3'
template_id = 'smsTpl:a054f946-87d6-4a10-ba7f-8953d17b961f'

config = BceClientConfiguration(credentials=BceCredentials(
    access_key_id, secret_access_key),
                                protocol=HTTP,
                                endpoint=host)
Example #26
0
#!/usr/bin/env python
#coding=utf8

import logging
from baidubce.bce_client_configuration import BceClientConfiguration
from baidubce.auth.bce_credentials import BceCredentials

SMS_HOST = b'HOST:PORT'
SMS_AK = b'ak'
SMS_SK = b'sk'

logger = logging.getLogger('baidubce.services.sms.smsclient')
fh = logging.FileHandler('sms_sample.log')
fh.setLevel(logging.DEBUG)

formatter = logging.Formatter(
    '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.DEBUG)
logger.addHandler(fh)

config = BceClientConfiguration(credentials=BceCredentials(SMS_AK, SMS_SK),
                                endpoint=SMS_HOST)
Example #27
0
import logging
from baidubce.auth.bce_credentials import BceCredentials
from baidubce.bce_client_configuration import BceClientConfiguration

vcr_host = "vcr.bj.baidubce.com"
access_key_id = "AK"
secret_access_key = "SK"

logger = logging.getLogger('baidubce.http.bce_http_client')
fh = logging.FileHandler("sample.log")
fh.setLevel(logging.DEBUG)

formatter = logging.Formatter(
    '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.DEBUG)
logger.addHandler(fh)

config = BceClientConfiguration(credentials=BceCredentials(
    access_key_id, secret_access_key),
                                endpoint='vcr.bj.baidubce.com')
Example #28
0
HOST = '<database_name>.tsdb.iot.<region>.baidubce.com'
AK = '<your ak>'
SK = '<your sk>'

###########optional config#############
protocol = baidubce.protocol.HTTP
# protcol= baidubce.protocol.HTTPS
connection_timeout_in_mills = None
send_buf_size = None
recv_buf_size = None
retry_policy = None
#######################################

logger = logging.getLogger('baidubce.services.tsdb.tsdbclient')
fh = logging.FileHandler('sample.log')
fh.setLevel(logging.INFO)

formatter = logging.Formatter(
    '%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.INFO)
logger.addHandler(fh)

config = BceClientConfiguration(
    credentials=BceCredentials(AK, SK),
    endpoint=HOST,
    protocol=protocol,
    connection_timeout_in_mills=connection_timeout_in_mills,
    send_buf_size=send_buf_size,
    recv_buf_size=recv_buf_size,
    retry_policy=retry_policy)
Example #29
0
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
# an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
# specific language governing permissions and limitations under the License.
"""
Configuration for sms samples.
"""

#!/usr/bin/env python
#coding=utf-8

import logging
from baidubce.bce_client_configuration import BceClientConfiguration
from baidubce.auth.bce_credentials import BceCredentials

HOST = 'sms.bj.baidubce.com'
AK = 'Your AK'
SK = 'Your SK'

logger = logging.getLogger('baidubce.services.sms.smsclient')
fh = logging.FileHandler('sms_sample.log')
fh.setLevel(logging.DEBUG)

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
logger.setLevel(logging.DEBUG)
logger.addHandler(fh)

config = BceClientConfiguration(credentials=BceCredentials(AK, SK), endpoint=HOST)
Example #30
0
"""
The configuration for tsdb test.
"""
import logging
import baidubce
from baidubce.auth import bce_credentials
from baidubce.bce_client_configuration import BceClientConfiguration
from baidubce.retry.retry_policy import NoRetryPolicy

HOST = '<database_name>.tsdb.iot.<region>.baidubce.com'
ACCESS_KEY = '<your ak>'
SECRET_KEY = '<your sk>'

logger = logging.getLogger("baidubce.services.tsdb")
fh = logging.FileHandler("tsdb_test_client.log")
fh.setLevel(logging.DEBUG)

formatter = logging.Formatter(
    fmt=
    "%(levelname)s: %(asctime)s: %(filename)s:%(lineno)d * %(thread)d %(message)s",
    datefmt="%m-%d %H:%M:%S")
fh.setFormatter(formatter)
logger.addHandler(fh)
logger.setLevel(logging.DEBUG)

config = BceClientConfiguration(bce_credentials.BceCredentials(
    ACCESS_KEY, SECRET_KEY),
                                HOST,
                                baidubce.protocol.HTTP,
                                retry_policy=NoRetryPolicy())