当前位置: 首页>>代码示例>>Python>>正文


Python Minio.presigned_put_object方法代码示例

本文整理汇总了Python中minio.Minio.presigned_put_object方法的典型用法代码示例。如果您正苦于以下问题:Python Minio.presigned_put_object方法的具体用法?Python Minio.presigned_put_object怎么用?Python Minio.presigned_put_object使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在minio.Minio的用法示例。


在下文中一共展示了Minio.presigned_put_object方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: get_presigned_put_url

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
def get_presigned_put_url(filename, config, secrets):
    """Generate a presigned put URL using the Minio S3 client.

    Args:
        filename: Name of file to use in S3
        config: Pyglidein cluster config dictionary
        secrets: Pyglidein cluster secrets dictionary

    Returns:
        string: Presigned Put URL

    """
    from minio import Minio
    from minio.error import ResponseError

    config_startd_logging = config['StartdLogging']
    secrets_startd_logging = secrets['StartdLogging']

    client = Minio(config_startd_logging['url'],
                   access_key=secrets_startd_logging['access_key'],
                   secret_key=secrets_startd_logging['secret_key'],
                   secure=True
                   )

    try:
        return client.presigned_put_object(config_startd_logging['bucket'],
                                           filename,
                                           datetime.timedelta(days=1))
    except ResponseError as err:
        print(err)
开发者ID:IIHE,项目名称:pyglidein,代码行数:32,代码来源:client_util.py

示例2: Minio

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
#
#     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.

# Note: YOUR-ACCESSKEYID, YOUR-SECRETACCESSKEY, my-bucketname and my-objectname
#  are dummy values, please replace them with original values.

import datetime

from minio import Minio
from minio.error import ResponseError

client = Minio('s3.amazonaws.com',
               access_key='YOUR-ACCESSKEYID',
               secret_key='YOUR-SECRETACCESSKEY')

# presigned Put object URL for an object name, expires in 3 days.
try:
    print(client.presigned_put_object('my-bucketname',
                                      'my-objectname',
                                      datetime.timedelta(days=3)))
# Response error is still possible since internally presigned does get
# bucket location.
except ResponseError as err:
    print(err)
开发者ID:balamurugana,项目名称:minio-py,代码行数:32,代码来源:presigned_put_object.py

示例3: main

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
def main():
    """
    Functional testing of minio python library.
    """
    fake = Factory.create()
    client = Minio('s3.amazonaws.com',
                   os.getenv('ACCESS_KEY'),
                   os.getenv('SECRET_KEY'))

    _http = urllib3.PoolManager(
        cert_reqs='CERT_REQUIRED',
        ca_certs=certifi.where()
    )

    # Get unique bucket_name, object_name.
    bucket_name = uuid.uuid4().__str__()
    object_name = uuid.uuid4().__str__()

    # Enable trace
    # client.trace_on(sys.stderr)

    # Make a new bucket.
    bucket_name = 'minio-pytest'

    print(client.make_bucket(bucket_name))
    print(client.make_bucket(bucket_name+'.unique',
                             location='us-west-1'))

    ## Check if return codes a valid from server.
    try:
        client.make_bucket(bucket_name+'.unique',
                           location='us-west-1')
    except ResponseError as err:
        if str(err.code) in ['BucketAlreadyOwnedByYou', 'BucketAlreadyExists']:
            pass
        else:
            raise

    # Check if bucket was created properly.
    print(client.bucket_exists(bucket_name))
    print(client.bucket_exists(bucket_name+'.unique'))

    # List all buckets.
    buckets = client.list_buckets()
    for bucket in buckets:
        print(bucket.name, bucket.creation_date)

    with open('testfile', 'wb') as file_data:
        file_data.write(fake.text().encode('utf-8'))
    file_data.close()

    # Put a file
    file_stat = os.stat('testfile')
    with open('testfile', 'rb') as file_data:
        client.put_object(bucket_name, object_name, file_data, file_stat.st_size)
    file_data.close()

    # Fput a file
    print(client.fput_object(bucket_name, object_name+'-f', 'testfile'))

    # Fetch stats on your object.
    print(client.stat_object(bucket_name, object_name))

    # Get a full object
    object_data = client.get_object(bucket_name, object_name)
    with open('newfile', 'wb') as file_data:
        for data in object_data:
            file_data.write(data)
    file_data.close()

    # Get a full object locally.
    print(client.fget_object(bucket_name, object_name, 'newfile-f'))

    # List all object paths in bucket.
    objects = client.list_objects(bucket_name, recursive=True)
    for obj in objects:
        print(obj.bucket_name, obj.object_name, obj.last_modified, \
            obj.etag, obj.size, obj.content_type)

    presigned_get_object_url = client.presigned_get_object(bucket_name, object_name)
    response = _http.urlopen('GET', presigned_get_object_url)
    if response.status != 200:
        response_error = ResponseError(response)
        raise response_error.get(bucket_name, object_name)

    presigned_put_object_url = client.presigned_put_object(bucket_name, object_name)
    value = fake.text().encode('utf-8')
    data = io.BytesIO(value).getvalue()
    response = _http.urlopen('PUT', presigned_put_object_url, body=data)
    if response.status != 200:
        response_error = ResponseError(response)
        raise response_error.put(bucket_name, object_name)

    object_data = client.get_object(bucket_name, object_name)
    if object_data.read() != value:
        raise ValueError('Bytes not equal')

    # Post policy.
    policy = PostPolicy()
    policy.set_bucket_name(bucket_name)
#.........这里部分代码省略.........
开发者ID:ds-forks,项目名称:minio-py,代码行数:103,代码来源:tests.py

示例4: test_expiry_limit

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
 def test_expiry_limit(self):
     client = Minio('localhost:9000')
     client.presigned_put_object('hello', 'key', expires=timedelta(days=8))
开发者ID:minio,项目名称:minio-py,代码行数:5,代码来源:presigned_put_object_test.py

示例5: test_object_is_not_empty_string

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
 def test_object_is_not_empty_string(self):
     client = Minio('localhost:9000')
     client.presigned_put_object('hello', ' \t \n ')
开发者ID:minio,项目名称:minio-py,代码行数:5,代码来源:presigned_put_object_test.py

示例6: test_object_is_string

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
 def test_object_is_string(self):
     client = Minio('localhost:9000')
     client.presigned_put_object('hello', 1234)
开发者ID:minio,项目名称:minio-py,代码行数:5,代码来源:presigned_put_object_test.py

示例7: main

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
def main():
    """
    Functional testing of minio python library.
    """
    fake = Factory.create()
    client = Minio('https://play.minio.io:9002',
                   'Q3AM3UQ867SPQQA43P2F',
                   'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG')

    # Get unique bucket_name, object_name.
    bucket_name = uuid.uuid4().__str__()
    object_name = uuid.uuid4().__str__()

    # Make a new bucket.
    print(client.make_bucket(bucket_name))

    # Check if bucket was created properly.
    print(client.bucket_exists(bucket_name))

    # Set bucket name to private.
    print(client.set_bucket_acl(bucket_name, Acl.private()))

    # Print current bucket acl.
    print(client.get_bucket_acl(bucket_name))

    # List all buckets.
    buckets = client.list_buckets()
    for bucket in buckets:
        print(bucket.name, bucket.creation_date)

    with open('testfile', 'wb') as file_data:
        file_data.write(fake.text().encode('utf-8'))
    file_data.close()

    # Put a file
    file_stat = os.stat('testfile')
    with open('testfile', 'rb') as file_data:
        client.put_object(bucket_name, object_name, file_data, file_stat.st_size)
    file_data.close()

    # Fetch stats on your object.
    print(client.stat_object(bucket_name, object_name))

    # Get a full object
    data = client.get_object(bucket_name, object_name)
    with open('newfile', 'wb') as file_data:
        for d in data:
            file_data.write(d)
    file_data.close()

    # List all object paths in bucket that begin with hello.
    objects = client.list_objects(bucket_name)
    for obj in objects:
        print(obj.bucket_name, obj.object_name, obj.last_modified, \
            obj.etag, obj.size, obj.content_type)

    uploads = client.list_incomplete_uploads(bucket_name,
                                             prefix='',
                                             recursive=True)
    for obj in uploads:
        print(obj.bucket_name, obj.object_name, obj.upload_id)

    print(client.presigned_get_object(bucket_name, object_name))
    print(client.presigned_put_object(bucket_name, object_name))

    # Remove an object.
    print(client.remove_object(bucket_name, object_name))

    # Remove a bucket.
    # This operation will only work if your bucket is empty.
    print(client.remove_bucket(bucket_name))

    # Remove temporary files.
    os.remove('testfile')
    os.remove('newfile')
开发者ID:koolhead17,项目名称:minio-py,代码行数:77,代码来源:tests.py

示例8: Minio

# 需要导入模块: from minio import Minio [as 别名]
# 或者: from minio.Minio import presigned_put_object [as 别名]
# -*- coding: utf-8 -*-
# Minio Python Library for Amazon S3 Compatible Cloud Storage, (C) 2015 Minio, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     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.

import datetime

from minio import Minio

client = Minio("https://s3.amazonaws.com", access_key="YOUR-ACCESSKEYID", secret_key="YOUR-SECRETACCESSKEY")

# presigned Put object URL for an object name, expires in 3 days.
print(client.presigned_put_object("bucketName", "objectName", datetime.timedelta(days=3)))
开发者ID:koolhead17,项目名称:minio-py,代码行数:25,代码来源:presigned_put_object.py


注:本文中的minio.Minio.presigned_put_object方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。