]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
examples: add python source for append & get_usage_stats 33063/head
authorAbhishek Lekshmanan <abhishek@suse.com>
Tue, 25 Feb 2020 18:43:46 +0000 (19:43 +0100)
committerAbhishek Lekshmanan <abhishek@suse.com>
Wed, 26 Feb 2020 09:27:10 +0000 (10:27 +0100)
Add some pythonic examples that can be reused

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
examples/boto3/append_object.py [new file with mode: 0755]
examples/boto3/get_usage_stats.py [new file with mode: 0755]

diff --git a/examples/boto3/append_object.py b/examples/boto3/append_object.py
new file mode 100755 (executable)
index 0000000..0e13252
--- /dev/null
@@ -0,0 +1,42 @@
+#!/usr/bin/python
+from __future__ import print_function
+
+import boto3
+import sys
+import json
+
+def js_print(arg):
+    print(json.dumps(arg, indent=2))
+
+if len(sys.argv) != 3:
+    print('Usage: ' + sys.argv[0] + ' <bucket> <key>')
+    sys.exit(1)
+
+# bucket name as first argument
+bucketname = sys.argv[1]
+keyname = sys.argv[2]
+# endpoint and keys from vstart
+endpoint = 'http://127.0.0.1:8000'
+access_key='0555b35654ad1656d804'
+secret_key='h7GhxuBLTrlhVUyxSPUKUV8r/2EI4ngqJxD7iBdBYLhwluN30JaT3Q=='
+
+client = boto3.client('s3',
+        endpoint_url=endpoint,
+        aws_access_key_id=access_key,
+        aws_secret_access_key=secret_key)
+
+print('deleting object first')
+js_print(client.delete_object(Bucket=bucketname, Key=keyname))
+print('appending at position 0')
+resp = client.put_object(Bucket=bucketname, Key=keyname,
+                         Append=True,
+                         AppendPosition=0,
+                         Body='8letters')
+
+js_print(resp)
+append_pos = resp['AppendPosition']
+print('appending at position %d' % append_pos)
+js_print(client.put_object(Bucket=bucketname, Key=keyname,
+                           Append=True,
+                           AppendPosition=append_pos,
+                           Body='8letters'))
diff --git a/examples/boto3/get_usage_stats.py b/examples/boto3/get_usage_stats.py
new file mode 100755 (executable)
index 0000000..0b7880d
--- /dev/null
@@ -0,0 +1,17 @@
+#!/usr/bin/python
+from __future__ import print_function
+
+import boto3
+import json
+
+# endpoint and keys from vstart
+endpoint = 'http://127.0.0.1:8000'
+access_key='0555b35654ad1656d804'
+secret_key='h7GhxuBLTrlhVUyxSPUKUV8r/2EI4ngqJxD7iBdBYLhwluN30JaT3Q=='
+
+client = boto3.client('s3',
+        endpoint_url=endpoint,
+        aws_access_key_id=access_key,
+        aws_secret_access_key=secret_key)
+
+print(json.dumps(client.get_usage_stats(), indent=2))