69cf73c384
Writes to cfn/cloudformation-examples, which is in .gitignore Change-Id: I3f863d50218b6bea3d1bec17b2a5a42a2a4622eb
49 lines
1.1 KiB
Python
Executable File
49 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
import httplib
|
|
import os
|
|
import sys
|
|
import shutil
|
|
import xml.etree.ElementTree as xml
|
|
|
|
basepath = os.path.abspath(os.path.join(sys.argv[0],
|
|
os.path.pardir,
|
|
os.path.pardir,
|
|
'cfn',
|
|
'cloudformation-examples'))
|
|
|
|
bucket = 'cloudformation-templates-us-east-1'
|
|
|
|
def main():
|
|
conn = httplib.HTTPConnection('s3.amazonaws.com')
|
|
conn.request('GET', '/%s/' % bucket)
|
|
resp = conn.getresponse()
|
|
|
|
tree = xml.parse(resp)
|
|
rootElement = tree.getroot()
|
|
|
|
if os.path.exists(basepath):
|
|
print 'Deleting %s' % basepath
|
|
shutil.rmtree(basepath)
|
|
|
|
os.makedirs(basepath)
|
|
print 'Creating %s' % basepath
|
|
|
|
for entry in rootElement.iter('{http://s3.amazonaws.com/doc/2006-03-01/}Key'):
|
|
key = entry.text
|
|
if key.endswith('.html'):
|
|
continue
|
|
filename = os.path.join(basepath, key)
|
|
|
|
print 'Writing to %s' % filename
|
|
conn.request('GET', '/%s/%s' % (bucket, key))
|
|
resp = conn.getresponse()
|
|
contents = resp.read()
|
|
|
|
f = open(filename, 'w')
|
|
f.write(contents)
|
|
f.close()
|
|
|
|
if __name__ == '__main__':
|
|
main()
|