openstack-image-manager 0.20231212.0__tar.gz → 0.20231219.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {openstack-image-manager-0.20231212.0/openstack_image_manager.egg-info → openstack-image-manager-0.20231219.0}/PKG-INFO +2 -2
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/cirros.yml +4 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/flatcar.yml +5 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/gardenlinux.yml +6 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/kubernetes.yml +4 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/talos.yml +5 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager/manage.py +16 -1
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager/mirror.py +29 -23
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0/openstack_image_manager.egg-info}/PKG-INFO +2 -2
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager.egg-info/requires.txt +1 -1
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/requirements.txt +1 -1
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/LICENSE +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/MANIFEST.in +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/README.md +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/almalinux.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/centos.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/clearlinux.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/debian.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/fedora.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/opensuse.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/opnsense.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/rockylinux.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/ubuntu.yml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/schema.yaml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager/__init__.py +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager/table.py +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager/update.py +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager.egg-info/SOURCES.txt +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager.egg-info/dependency_links.txt +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager.egg-info/entry_points.txt +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/openstack_image_manager.egg-info/top_level.txt +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/pyproject.toml +0 -0
- {openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: openstack-image-manager
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.20231219.0
|
4
4
|
Summary: OpenStack image manager
|
5
5
|
Author-email: OSISM community <info@osism.tech>
|
6
6
|
License: Apache License
|
@@ -227,7 +227,7 @@ Requires-Dist: minio==7.2.0
|
|
227
227
|
Requires-Dist: munch==4.0.0
|
228
228
|
Requires-Dist: natsort==8.4.0
|
229
229
|
Requires-Dist: openstacksdk==2.0.0
|
230
|
-
Requires-Dist: paramiko==3.
|
230
|
+
Requires-Dist: paramiko==3.4.0
|
231
231
|
Requires-Dist: patool==1.15.0
|
232
232
|
Requires-Dist: requests==2.31.0
|
233
233
|
Requires-Dist: ruamel.yaml==0.18.5
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/cirros.yml
RENAMED
@@ -31,3 +31,7 @@ images:
|
|
31
31
|
url: https://github.com/cirros-dev/cirros/releases/download/0.6.1/cirros-0.6.1-x86_64-disk.img
|
32
32
|
checksum: "sha256:cc704ab14342c1c8a8d91b66a7fc611d921c8b8f1aaf4695f9d6463d913fa8d1"
|
33
33
|
build_date: 2022-11-22
|
34
|
+
- version: '0.6.2'
|
35
|
+
url: https://github.com/cirros-dev/cirros/releases/download/0.6.2/cirros-0.6.2-x86_64-disk.img
|
36
|
+
checksum: "sha256:07e44a73e54c94d988028515403c1ed762055e01b83a767edf3c2b387f78ce00"
|
37
|
+
build_date: 2023-05-30
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/flatcar.yml
RENAMED
@@ -28,3 +28,8 @@ images:
|
|
28
28
|
source: https://stable.release.flatcar-linux.net/amd64-usr/3227.2.4/flatcar_production_openstack_image.img.bz2
|
29
29
|
checksum: "sha256:774a4fd77da47a7c91714e6424891d6887ed7b9b72daadc40d56bb2f7527b4f5"
|
30
30
|
build_date: 2022-10-27
|
31
|
+
- version: '3602.2.3'
|
32
|
+
url: https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-images/flatcar/3602.2.3/flatcar_production_openstack_image.img
|
33
|
+
source: https://stable.release.flatcar-linux.net/amd64-usr/3602.2.3/flatcar_production_openstack_image.img
|
34
|
+
checksum: "sha256:23b2d10aa0adf53d58bca0d9664338bdd308bef9e56f8393d39cb5e22bff4409"
|
35
|
+
build_date: 2023-12-11
|
@@ -2,6 +2,7 @@
|
|
2
2
|
images:
|
3
3
|
- name: Garden Linux
|
4
4
|
enable: true
|
5
|
+
shortname: gardenlinux
|
5
6
|
format: qcow2
|
6
7
|
login: admin
|
7
8
|
min_disk: 10
|
@@ -37,3 +38,8 @@ images:
|
|
37
38
|
url: https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-image-gardenlinux/gardenlinux-amd64.934.11.qcow2
|
38
39
|
checksum: "sha256:616a217afe692ba8b6a9eca3a99291414b77a819c18430e6cba1b01a7ba6238b"
|
39
40
|
build_date: 2023-10-25
|
41
|
+
- version: '1312.1'
|
42
|
+
url: https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-images/gardenlinux/1312.1/openstack-gardener_prod-amd64-1312.1-c6ebc74e.qcow2
|
43
|
+
source: https://github.com/gardenlinux/gardenlinux/releases/download/1312.1/openstack-gardener_prod-amd64-1312.1-c6ebc74e.tar.xz
|
44
|
+
checksum: "sha256:12a67458959dabd8c4fa38f0224aa37f8e18629c218bbb716f411575a068663c"
|
45
|
+
build_date: 2023-11-22
|
@@ -34,3 +34,7 @@ images:
|
|
34
34
|
url: https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-k8s-capi-images/ubuntu-2204-kube-v1.28/ubuntu-2204-kube-v1.28.4.qcow2
|
35
35
|
checksum: "sha256:ad9cb2fd07c0b9bd25e5476cc8daf0e9037f1b9d0bfef95ce2346f18f03bf58c"
|
36
36
|
build_date: 2023-11-16
|
37
|
+
- version: '1.29.0'
|
38
|
+
url: https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-k8s-capi-images/ubuntu-2204-kube-v1.29/ubuntu-2204-kube-v1.29.0.qcow2
|
39
|
+
checksum: "sha256:d6576f6f920e84070f86a67ca9b6b6c7e48b2baff32fde70840e3f7df09b87c4"
|
40
|
+
build_date: 2023-12-18
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/talos.yml
RENAMED
@@ -33,3 +33,8 @@ images:
|
|
33
33
|
source: https://github.com/siderolabs/talos/releases/download/v1.4.5/openstack-amd64.tar.gz
|
34
34
|
checksum: "sha256:fc7dc71a6acece93196c8bace15139469b7bfbe4fa7d001336da0fdda9b437c9"
|
35
35
|
build_date: 2023-05-30
|
36
|
+
- version: '1.6.0'
|
37
|
+
url: https://swift.services.a.regiocloud.tech/swift/v1/AUTH_b182637428444b9aa302bb8d5a5a418c/openstack-images/talos/1.6.0/openstack-amd64.raw
|
38
|
+
source: https://github.com/siderolabs/talos/releases/download/v1.6.0/openstack-amd64.raw.xz
|
39
|
+
checksum: "sha256:e3754c2338b4ce831db5442cf62deab260d56b64227a07cfc26e4b73eef5abaf"
|
40
|
+
build_date: 2023-12-15
|
@@ -1097,7 +1097,11 @@ class ImageManager:
|
|
1097
1097
|
logger.info("Deactivating image '%s'" % image)
|
1098
1098
|
self.conn.image.deactivate_image(cloud_image.id)
|
1099
1099
|
|
1100
|
-
if
|
1100
|
+
if (
|
1101
|
+
self.CONF.hide
|
1102
|
+
and not self.CONF.dry_run
|
1103
|
+
and cloud_image.visibility != "community"
|
1104
|
+
):
|
1101
1105
|
logger.info(
|
1102
1106
|
"Setting visibility of '%s' to 'community'" % image
|
1103
1107
|
)
|
@@ -1107,6 +1111,17 @@ class ImageManager:
|
|
1107
1111
|
except Exception as e:
|
1108
1112
|
logger.error("An Exception occurred: \n%s" % e)
|
1109
1113
|
self.exit_with_error = True
|
1114
|
+
elif counter[image_name] <= last:
|
1115
|
+
logger.info(
|
1116
|
+
f"Image '{image}' will not be deleted, {counter[image_name]} <= {last}"
|
1117
|
+
)
|
1118
|
+
if (
|
1119
|
+
self.CONF.hide
|
1120
|
+
and not self.CONF.dry_run
|
1121
|
+
and cloud_image.visibility != "community"
|
1122
|
+
):
|
1123
|
+
logger.info("Setting visibility of '%s' to 'community'" % image)
|
1124
|
+
self.conn.image.update_image(cloud_image.id, visibility="community")
|
1110
1125
|
elif (
|
1111
1126
|
counter[image_name] < last and self.CONF.hide and not self.CONF.dry_run
|
1112
1127
|
):
|
@@ -51,6 +51,18 @@ def main(
|
|
51
51
|
logger.remove()
|
52
52
|
logger.add(sys.stderr, format=log_fmt, level=level, colorize=True)
|
53
53
|
|
54
|
+
client = Minio(
|
55
|
+
minio_server,
|
56
|
+
access_key=minio_access_key,
|
57
|
+
secret_key=minio_secret_key,
|
58
|
+
)
|
59
|
+
|
60
|
+
result = client.bucket_exists(minio_bucket)
|
61
|
+
if not result:
|
62
|
+
logger.error(f"Create bucket '{minio_bucket}' first")
|
63
|
+
if not dry_run:
|
64
|
+
sys.exit(1)
|
65
|
+
|
54
66
|
onlyfiles = []
|
55
67
|
for f in listdir(images):
|
56
68
|
if isfile(join(images, f)):
|
@@ -58,24 +70,17 @@ def main(
|
|
58
70
|
onlyfiles.append(f)
|
59
71
|
|
60
72
|
all_images = []
|
61
|
-
for file in onlyfiles:
|
73
|
+
for file in [x for x in onlyfiles if x.endswith(".yml")]:
|
74
|
+
logger.info(f"Processing file {file}")
|
62
75
|
with open(join(images, file)) as fp:
|
63
76
|
data = yaml.load(fp, Loader=yaml.SafeLoader)
|
64
77
|
for image in data.get("images"):
|
65
78
|
logger.debug(f"Adding {image['name']} to the list of images")
|
66
79
|
all_images.append(image)
|
67
80
|
|
68
|
-
client = Minio(
|
69
|
-
minio_server,
|
70
|
-
access_key=minio_access_key,
|
71
|
-
secret_key=minio_secret_key,
|
72
|
-
)
|
73
|
-
|
74
|
-
result = client.bucket_exists(minio_bucket)
|
75
|
-
if not result:
|
76
|
-
logger.error(f"Create bucket '{minio_bucket}' first")
|
77
|
-
|
78
81
|
for image in all_images:
|
82
|
+
logger.info(f"Processing image {image['name']}")
|
83
|
+
|
79
84
|
if "versions" not in image:
|
80
85
|
continue
|
81
86
|
|
@@ -105,31 +110,32 @@ def main(
|
|
105
110
|
|
106
111
|
try:
|
107
112
|
client.stat_object(minio_bucket, os.path.join(dirname, filename))
|
108
|
-
logger.info(f"
|
113
|
+
logger.info(f"File {filename} available in bucket {dirname}")
|
109
114
|
except S3Error:
|
110
|
-
logger.info(f"
|
115
|
+
logger.info(f"File {filename} not yet available in bucket {dirname}")
|
111
116
|
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
117
|
+
if not isfile(os.path.basename(path.path)):
|
118
|
+
logger.info(f"Downloading {version['source']}")
|
119
|
+
response = requests.get(
|
120
|
+
version["source"], stream=True, allow_redirects=True
|
121
|
+
)
|
122
|
+
with open(os.path.basename(path.path), "wb") as fp:
|
123
|
+
shutil.copyfileobj(response.raw, fp)
|
124
|
+
del response
|
119
125
|
|
120
126
|
if fileextension in [".bz2", ".zip", ".xz", ".gz"]:
|
121
|
-
logger.info(f"Decompressing
|
127
|
+
logger.info(f"Decompressing {os.path.basename(path.path)}")
|
122
128
|
patoolib.extract_archive(os.path.basename(path.path), outdir=".")
|
123
129
|
os.remove(os.path.basename(path.path))
|
124
130
|
|
125
131
|
if not dry_run:
|
126
|
-
logger.info(f"Uploading
|
132
|
+
logger.info(f"Uploading {filename} to bucket {dirname}")
|
127
133
|
client.fput_object(
|
128
134
|
minio_bucket, os.path.join(dirname, filename), filename
|
129
135
|
)
|
130
136
|
else:
|
131
137
|
logger.info(
|
132
|
-
f"Not uploading
|
138
|
+
f"Not uploading {filename} to bucket {dirname} (dry-run enabled)"
|
133
139
|
)
|
134
140
|
|
135
141
|
os.remove(filename)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: openstack-image-manager
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.20231219.0
|
4
4
|
Summary: OpenStack image manager
|
5
5
|
Author-email: OSISM community <info@osism.tech>
|
6
6
|
License: Apache License
|
@@ -227,7 +227,7 @@ Requires-Dist: minio==7.2.0
|
|
227
227
|
Requires-Dist: munch==4.0.0
|
228
228
|
Requires-Dist: natsort==8.4.0
|
229
229
|
Requires-Dist: openstacksdk==2.0.0
|
230
|
-
Requires-Dist: paramiko==3.
|
230
|
+
Requires-Dist: paramiko==3.4.0
|
231
231
|
Requires-Dist: patool==1.15.0
|
232
232
|
Requires-Dist: requests==2.31.0
|
233
233
|
Requires-Dist: ruamel.yaml==0.18.5
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/centos.yml
RENAMED
File without changes
|
File without changes
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/debian.yml
RENAMED
File without changes
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/fedora.yml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/images/ubuntu.yml
RENAMED
File without changes
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/etc/schema.yaml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{openstack-image-manager-0.20231212.0 → openstack-image-manager-0.20231219.0}/pyproject.toml
RENAMED
File without changes
|
File without changes
|