Commit Graph

106 Commits

Author SHA1 Message Date
Takashi Kajinami fb29ff5f38 Deprecate support for VMWare Datastore store driver
... because the driver was deprecated during this cycle.

Depends-on: https://review.opendev.org/c/openstack/glance_store/+/893696
Change-Id: If99070067380a1711fb2cef4bcb090540c1ee456
2024-03-08 14:52:02 +00:00
Takashi Kajinami 47690b57c2 rbd: Update description of rados_connect_timeout
Glance treats rados_connect_timeout=-1 differently now. Let's remove
the description about its old behavior and avoid documenting details
in the module parameter descriptions to reduce our future maintenance
effort.

Depends-on: https://review.opendev.org/894514
Change-Id: If4c711ca7b8c9a5167ee48e902811e8353a1fba0
2024-01-20 00:02:50 +09:00
Takashi Kajinami 30b188b1b9 Add support for store weight option
This introduces the support for the weight option in each store which
is used to sort locations.

Depends-on: https://review.opendev.org/886811
Change-Id: Ia08ab9b396a9f7ba3ee1f41a81cb666e9a80ccde
2023-09-12 10:44:03 +09:00
Takashi Kajinami 10d7bbdeef Add all store options to glance-cache.conf
The glance-cache.conf is used by the glance-cache-prefetcher command
which requires access to backend store. Thus all store options should
be added to the glance-cache.conf file so that backend store can be
loaded properly.

Closes-Bug: #2034893
Change-Id: I8f0b2be8b138d267364f20ff81876902b225d29e
2023-09-08 18:56:20 +09:00
Takashi Kajinami f4848f57cd Revert "Deprecate unused options of reserved store"
This reverts commit 51f4256e79.

Reason for revert:
Glance does call the add api of the filesystem store which uses these
options.

examples:
https://github.com/openstack/glance/blob/93e14113a/glance/api/v2/image_data.py#L372
https://github.com/openstack/glance/blob/93e14113a/glance/async_/flows/base_import.py#L159

Change-Id: I41387f67b647db7a96f975224b33112f3fa83ddd
2023-08-22 12:21:29 +09:00
Takashi Kajinami 945280277f replace validate_legacy with proper data types
the validate_legacy function is marked for deprecation in
v9.0.0 from puppetlabs-stdlib.

Note that this change removes the pattern validation about [DEFAULT]
pipeline. The existing pattern check is incomplete, because of
the following two reasons.
 - the pattern does not guarantee that the requested pipeline is
   really supported or not
 - the pattern accepts a+b+c but the existing pipelines in glance
   does not have any entries with this pattern

Change-Id: I156d9a3a30ba6c523a0b16a14bf8a1839b61fb78
2023-06-19 18:33:38 +09:00
Zuul 951936517b Merge "Deprecate unused options of reserved store" 2023-03-17 09:19:05 +00:00
Takashi Kajinami 2cdc2b2176 Add strict validation about boolean parameters
This ensures the parameters used by if-else logic accept only boolean
values because non-boolean can result in unexpected behavior.

Change-Id: Ie3fce5786d44be38fad176442a0a0f9b24faab77
2023-03-17 02:23:27 +00:00
Takashi Kajinami 51f4256e79 Deprecate unused options of reserved store
When I implemented support for reserved store options[1], I somehow
overlooked the fact that some of the registered options are not really
used. This is mainly because glance does not use 'add' API of
the filesystem store but just write data directly into the store
directory.

This deprecates the ineffective options so that we can remove these
in a future release.

[1] d82df7aedd

Change-Id: Ifde7f70f4cf6a04e22e092a819e0c598079682ee
2023-03-15 11:59:06 +09:00
Takashi Kajinami 9cb7a5ae66 cinder store: Support cinder_do_extend_attached
This introduces support for the new cinder_do_extend_attached option
which was added in the 2023.1 release. See the dependent change to find
more details.

Depends-on: https://review.opendev.org/868742
Change-Id: I4fbb2d275cf261286390765d9cd98112ca8adf0c
2023-03-14 12:31:07 +09:00
Takashi Kajinami 43735fb127 Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: Iebdb33dd18a8f8d18840ff3e5f4608f021a78bfa
2023-03-02 10:54:36 +09:00
Takashi Kajinami b3327ff10e Install python-ceph/rbd before starting glance services
The python-ceph/rbd package is required so that glance services can
access to its ceph backend. This change ensures the package resource
is tagged with the glance-support-package tag so that the package is
always installed before starting glance services.

Change-Id: I0df179dccc95fd4d617eb1b39d921ecc4a6d7bee
2022-09-09 14:48:06 +09:00
Takashi Kajinami b91d905887 Remove deprecated glance::os_region_name
It was deprecated during Ussuri cycle by [1].

[1] 9e82f598ad

Change-Id: Iab8fe79beedbe8cae0a5e6f6bd7c8a0b2d1e74c0
2022-08-17 00:39:59 +09:00
Zuul b578c7ba4e Merge "Fix duplicate resources" 2022-06-22 21:05:12 +00:00
Zuul d0899bb956 Merge "Add support for reserved backend options" 2022-06-22 11:58:20 +00:00
Takashi Kajinami 0495848983 Fix duplicate resources
This change fixes the duplicate resources between glance::api and
glance::backend::file, which were caused by the new parameters added
to the glance::backend::multistore::file defined type in [1].

[1] aaa352a3af

Closes-Bug #1979232
Change-Id: Ib2f89a46d483f70c91e5fc444a84e968b79dae8e
2022-06-22 14:08:08 +09:00
Takashi Kajinami d82df7aedd Add support for reserved backend options
This change introduces support for the following two reserved backends,
which were added by [1].

[1] 6dba83ba3a7c047df282f2edb7217548f43d6251

Change-Id: I9e809f5ba25516b0974015ea5259d1ab7f5bb1ca
2022-06-21 01:50:16 +09:00
Rajesh Tailor 499a898468 Fix typos in parameter descriptions
Change-Id: Iacebc227e074da592aa0ca8ff6f8226f3e850a66
2022-06-17 16:17:30 +00:00
Takashi Kajinami aaa352a3af Support more file backend parameters
This change improves coverage of the file backend parameters. Because
the filesystem_store_datadirs parameter is MultiStrOpt, support for
MultiStrOpt is also introduced to the glance_cache_config resource
type.

Change-Id: I5785605bf4224c0f189fd7700d5a9b05def058e8
2022-02-13 01:28:44 +09:00
Zuul 733df71e86 Merge "Use Anchor instead of specific service resource" 2022-01-28 02:53:45 +00:00
Takashi Kajinami 5a95c9a5f2 Swift: Add support for swift_store_retry_get_count
Change-Id: I7bc7cd481a1e2b8d0497e294e47e2637b1dd4d80
2022-01-27 21:33:18 +09:00
Takashi Kajinami b2584fc781 Use Anchor instead of specific service resource
Change-Id: I7b127a72a910c9654a9da90b7c213337f99a8ff4
2022-01-27 09:07:59 +09:00
Zuul 137ab3c0b6 Merge "Use anchor to require swift services" 2022-01-25 03:07:39 +00:00
Takashi Kajinami 4b4d7d9a5a Use anchor to require swift services
Change-Id: I92e296428236dce45e1ed73a4806c24003c1be7a
2022-01-24 09:47:41 +09:00
Takashi Kajinami 3162065b1d Add missing 'openstack' tag to python3-ceph package
Packages managed by Puppet OpenStack modules should have 'openstack'
tag. This change fixes one package resource without that tag.

Also, this change replaces ensure_resource by ensure_packages, so that
more specific function for package resource is used.

Change-Id: I281c7f4504f7205e7f23458364288179da89d445
2022-01-17 18:46:32 +09:00
Takashi Kajinami 40315729bc Re-add support for S3 backend
Support for S3 backend was removed from glance_store during Newton
release[1] but it was restored during Ussuri release[2].

This change re-introduces support for S3 backend.

[1] 4432e60af2a2bdbfc456d8d99d93d1157fc86dcd
[2] 261bad3e433860742ecdaf93a9ff5609dcbfa432

Change-Id: I82cd7f006f9c85513ee8781e6e1a526816188844
2021-12-27 02:52:19 +00:00
Takashi Kajinami 9284589fbe Add missing parameter descriptions
Change-Id: If495f7b6823970585d6ea2ee71933e3afb184a45
2021-11-12 21:36:50 +09:00
Zuul 16d60d2f12 Merge "Swift backend: the key parameter should be secret" 2021-10-21 21:06:09 +00:00
Takashi Kajinami 4a48192988 Swift backend: the key parameter should be secret
The key parameter of swift backend is used to define a credentail to
access Swift so should be hidden in logs.

In Glance the user parameter(swift_store_user) is also defined as
a secret parameter. However it defines user name or id and user name
or id is not currently treated as secret in puppet, so this change
doesn't cover the user parameter.

Change-Id: Iac580df4de14ffdb19436417b2830a834efd087d
2021-10-20 16:20:21 +09:00
Takashi Kajinami 8a70cf5dea Swift backend: Use Keystone v3 API by default
... because v2 API was removed a long ago and is no longer available.

Closes-Bug: #1947816
Change-Id: I1402f72fa58f617ccb1e92caa774ca15a6133c58
2021-10-20 12:16:10 +09:00
Zuul 5ad476e20a Merge "Remove ineffective create_resources with an empty definition" 2021-09-14 04:29:02 +00:00
Takashi Kajinami e57bb37768 Cinder store: Add support for domain_name parameters
Depends-on: https://review.opendev.org/793826
Change-Id: I330378856fa8a488b85373bb4e0236f8c10d8526
2021-09-05 00:42:11 +09:00
Takashi Kajinami a915d3b3d5 Remove ineffective create_resources with an empty definition
These definitions are never used, because of empty resources passed.

Change-Id: Ie0d765d4eafe84e0cd9aa2727a43bc6b883ce6d5
2021-09-03 22:27:51 +09:00
Takashi Kajinami 0dcab2950d Swift backend: Add the swift_store_service_type parameter
Change-Id: I22a63e40b5981ec79f93922bed0b9f62f83b916d
2021-05-11 08:25:30 +09:00
Takashi Kajinami 5773bc77ea Add support for http backend
This patch introduces support to eanble http backend when glance
mulistore is used.

Change-Id: I547a65424e73d89eae2f6302ffaeeaba398cc006
2021-02-23 07:15:12 +00:00
PranaliD 46e9319d8e Add config parameter for cinder mounting needs
This patch is introducing cinder_mount_point_base parameter into
glance::backend::multistore::cinder class, so that operators can
provide the cinder mount point for NFS volumes.

Change-Id: Ib724f6e895716847827be48ed08b01a7a312338f
2021-02-15 10:37:22 +00:00
Zuul 9a1acfc99b Merge "cinder backend: password should be secret" 2021-01-04 17:29:08 +00:00
Zuul ceaf8017f3 Merge "Add cinder volume type for multiple cinder stores" 2021-01-04 17:22:02 +00:00
Takashi Kajinami 7f1729e9ae Deprecate the swift_store_config_file parameter
Because we hardcoded the path in the glance_swift_config resource, We
don't expect the swift_store_config_file parameter is set to various
values, but set to the hardcode path, '/etc/glance/glance-swift.conf'
in almost all cases.
The parameter is deprecated by this change, and will be removed and
hardcoded in a future release.

Change-Id: Ie4a8b933200e25c69fc1ac4985acab486d8a62c8
2020-12-22 10:39:49 +09:00
Takashi Kajinami 26e26d115d Use glance-swift.conf by default
This patch changes default of the swift_store_config_file parameter,
so that the configuration file generated by puppet-glance is used by
default, instead of requiring users to set the parameter explicitly.

Closes-Bug: #1908917
Change-Id: I4ac04a561746c227b245d11890d02c14a21965d0
2020-12-22 01:20:27 +09:00
Takashi Kajinami 3a9ae92204 cinder backend: password should be secret
This change ensures that password information for cinder backend is
properly hidden.

Change-Id: Ib188ef46d53ea2ac2adc5deaf0d249f8bdb8f1aa
2020-12-21 21:04:54 +09:00
PranaliD 28fafd2f0c Add cinder volume type for multiple cinder stores
Adding 'cinder_volume_type' configuration parameter to allow
cinder stores to specify a volume type for each cinder store.

Partially Implements: blueprint multiple-cinder-backend-support

Change-Id: If0e3e0bd01f976e5a32aa9355ac5dd99425722a3
2020-12-21 11:59:26 +00:00
PranaliD da9e1a7f4e Add sparse image upload configuration parameters
Addng configuration option ``rbd_thin_provisioning`` and
``filesystem_thin_provisioning`` to rbd and filesystem
backends, to enable or not sparse upload.

A sparse file means that we do not actually write null byte
sequences but only the data itself at a given offset, the
"holes" which can appear will automatically be interpreted by
the storage backend as null bytes, and do not really consume
your storage.

Partially Implements: blueprint handle-sparse-image

Change-Id: Ic95fa45af0f1db92d8425862c6267f466764fbbe
2020-09-25 23:33:48 +00:00
Sam Morrison 9d340581b1 Add swift buffer-on-upload options for swift multibackend
Adds ability to set swift_buffer_on_upload and swift_upload_buffer_dir
for swift multi backend

Change-Id: Ic29448860f5c7a8b743abd6f343985e65d8c5693
2020-06-16 10:17:04 +10:00
Takashi Kajinami 9e82f598ad Add cinder_os_region_name parameters for cinder backend
This patch introduces cinder_os_region_name parameters for cinder
backend, because global os_region_name parameter was replaced by this
cinder specific parameters[1].

[1] 410747822c9433c83fd4aec547d3e4c288502f90

Change-Id: I4a7c9ac97ff2f1c04b651ecbc89b3cb1c583f2f9
2020-04-13 08:07:25 +09:00
Takashi Kajinami 5d2acead72 Add parameters for multipath connection in cinder backend
This patch introduced the following 2 parameters into
glance::backend::multistore::cinder class, so that operators can define
multipath usage in volume connection by puppet parameter.

 - cinder_enforce_multipath
 - cinder_use_multipath

Change-Id: I17af43fe8cdf437c90453d316b66c3ea9d4f2745
2020-04-09 08:23:38 +09:00
Takashi Kajinami dfe861fe40 Cleanup os_region_name in cinder backend
The os_region_name parameter in glance::backend::cinder was deprecated
in Kilo release[1], so we can remove it now.
Also, glance::backend::multistore::cinder doesn't have os_region_name,
so it should be removed from its description.

[1] I075224acb9da2bb547d437b08cf6fccfed655d5c
Change-Id: I32a88f9d82dd24ed3592f8647cbb43e9e3c380dd
2020-04-08 21:03:50 +09:00
Tobias Urdin ed9298e996 Convert all class usage to relative names
Change-Id: I9ff8d888e367a46ab89e3668bf4ba76c4c7c127c
2019-12-08 23:06:03 +01:00
Alan Bishop fd02761c6e Update the method of configuring glance backends
This patch updates the method of configuring glance backends to use the
modern syntax associated with glance's Multi Store feature. Glance's
glance_store/stores and glance_store/default_store parameters were
deprecated in Rocky, and are scheduled for removal in Ussuri.

Backends are now specified using new glance::api::enabled_backends and
glance::api::default_backend parameters. A series of
glance::backend::multistore::* defined resources support configuring
multiple instances of each backend.

The legacy glance::api::stores and glance::api::default_store parameters,
as well as the glance::backend::* class resources, are deprecated, but
continue to function for backward compatibility.

The glance::backend::s3 class is completely deprecated. Glance removed
support for the s3 backend in Newton.

Closes-Bug: #1846808
Change-Id: I4f3ec9ee7c4147a4e62de961a9532bdc45526f6b
2019-10-16 14:46:39 -07:00
Tobias Urdin 97c5ff3874 Change keystone v2.0 url to v3
Change-Id: Ic90c6394acad605b4a2172b4993bf32cab3e7c20
2019-02-24 13:01:33 +01:00