我在 AWS Web 控制台中创建了 Glacier 保险库,然后使用 Fog gem 以编程方式创建了一些测试档案。
我想删除保管库,但 Web 控制台不允许我删除,因为它说保管库不是空的。它告诉我保险库包含两个档案,并将最后一个库存日期显示为“2016 年 2 月 5 日 07:01:28 PM UTC-8”。
当我使用 Fog 访问保险库时,它显示相同的最后库存日期,但 Fog 返回的“保险库”对象不包含档案。“vault.archives”是一个空集合。
我想我只需要提交一份库存工作,所以我做到了。作业完成后,输出如下:
{"VaultARN"=>"EDITED",
"InventoryDate"=>"2016-02-06T01:01:28Z",
"ArchiveList"=>
[{"ArchiveId"=>
"EDITED: ARCHIVE ID",
"ArchiveDescription"=>"test",
"CreationDate"=>"2016-02-05T21:16:52Z",
"Size"=>4,
"SHA256TreeHash"=>
"9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"},
{"ArchiveId"=>
"EDITED: ARCHIVE ID",
"ArchiveDescription"=>"test",
"CreationDate"=>"2016-02-05T21:23:08Z",
"Size"=>4,
"SHA256TreeHash"=>
"9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"}]}
它显示保管库包含两个档案。但是,当我尝试使用 Fog 销毁其中任何一个时,我得到以下响应:
#<Excon::Response:0x007ffe12ce5cd0
@body="",
@data=
{:body=>"",
:headers=>
{"x-amzn-RequestId"=>"wupVQJALcVeGOC-hp4MsUgApY5CyhW8TdBoILGM3xBYH1aI",
"Date"=>"Tue, 09 Feb 2016 16:30:13 GMT"},
:status=>204,
:status_line=>"HTTP/1.1 204 No Content\r\n",
:reason_phrase=>"No Content",
:remote_ip=>"EDITED",
:local_port=>51722,
:local_address=>"EDITED"},
@headers=
{"x-amzn-RequestId"=>"wupVQJALcVeGOC-hp4MsUgApY5CyhW8TdBoILGM3xBYH1aI",
"Date"=>"Tue, 09 Feb 2016 16:30:13 GMT"},
@local_address="EDITED",
@local_port=51722,
@remote_ip="EDITED",
@status=204>
如果我传递了错误的存档 ID,这就是我期望得到的响应。但我很肯定,我传递的存档 ID 与我的库存作业中返回的存档 ID 相同。
是什么赋予了?我要做的就是删除这两个档案,这样我就可以删除保险库了。