{OCI オブジェクト・ストレージ} バージョニング

https://docs.oracle.com/ja-jp/iaas/Content/Object/Tasks/usingversioning.htm

 

-- 1. バケット作成

 

oci os bucket list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 


oci os bucket create \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--name bucket123 \
--auto-tiering Disabled \
--object-events-enabled false \
--public-access-type NoPublicAccess \
--storage-tier Standard \
--versioning enabled

 

-- 2. 動作確認

 


: > file21.txt
echo 1 >> file21.txt


oci os object put \
--bucket-name bucket123 \
--file ./file21.txt \
--name file21.txt \
--content-type "text/plain"


oci os object list \
--bucket-name bucket123


oci os object list-object-versions \
--bucket-name bucket123 


ファイル更新

echo 2 >> file21.txt

oci os object put \
--bucket-name bucket123 \
--file ./file21.txt \
--name file21.txt \
--content-type "text/plain" \
--force

oci os object list \
--bucket-name bucket123


oci os object list-object-versions \
--bucket-name bucket123 

 

oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--file - 

 

oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 11111111-1111-1111-1111-111111111111 \
--file - 


oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 22222222-2222-2222-2222-222222222222 \
--file - 


ファイル削除

oci os object delete \
--bucket-name bucket123 \
--name file21.txt \
--force

oci os object list \
--bucket-name bucket123


oci os object list-object-versions \
--bucket-name bucket123 

削除後は過去バージョンも404エラーで参照できなくなる

oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 11111111-1111-1111-1111-111111111111 \
--file - 


oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 22222222-2222-2222-2222-222222222222 \
--file - 

oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 33333333-3333-3333-3333-333333333333 \
--file - 


削除マーカーの削除


oci os object delete \
--bucket-name bucket123 \
--name file21.txt \
--version-id 33333333-3333-3333-3333-333333333333 \
--force


oci os object list \
--bucket-name bucket123


oci os object list-object-versions \
--bucket-name bucket123 

oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 11111111-1111-1111-1111-111111111111 \
--file - 


oci os object get \
--bucket-name bucket123 \
--name file21.txt \
--version-id 22222222-2222-2222-2222-222222222222 \
--file - 


-- 3. クリーンアップ


oci os bucket list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 

oci os bucket delete \
--name bucket123 \
--empty \
--force