1425 Commits

Author SHA1 Message Date
Takashi Kajinami
e0d56b30f6 Fix wrong usage of validate_legacy
The current usage is causing the following error in puppet 8.

validate_legacy(validate_re) expects an Integer value, got String
at ["/.../modules/swift/manifests/ringbuilder/rebalance.pp", 23]:

Change-Id: I60fcea3c1a04456898816b844bf9e555a790d1d4
2023-06-06 14:14:40 +09:00
Takashi Kajinami
bc8353608b Drop unused parameter definition
default_params is not used in the spec file and is useless.

Change-Id: Ic7626d9352054662b137c25d1572336b37dfd41c
2023-06-06 10:50:29 +09:00
Zuul
ee41235713 Merge "Remove support for Puppet 6" 2023-05-22 14:31:52 +00:00
Takashi Kajinami
e4d8af83c9 Remove support for Puppet 6
... because Puppet 6 reached its EOL in February 2023.

Change-Id: Ib02751149c0ef18e99c717575cbced01e5b39649
2023-05-22 12:30:41 +09:00
Takashi Kajinami
9bd09b15bb Allow defining a section without settings
(account|container|object)-server.conf requires sections for each
services but these sections sometimes don't require settings when
service defaults are used.

This change allows defining only sections using *_config resources.

Depends-on: https://review.opendev.org/849235
Change-Id: I827c06cc994e13b900a9eeaeaec7849a243732e2
2023-05-11 13:53:32 +09:00
Zuul
1e32789cfd Merge "Bump upper version of puppetlabs-inifile" 2023-04-14 07:24:55 +00:00
Takashi Kajinami
0f30246447 Bump upper version of puppetlabs-inifile
... because now we use v6.0.0 in CI jobs.

Depends-on: https://review.opendev.org/880118
Change-Id: I2c96f428d54ed73f782cf595f582cbceac650545
2023-04-14 11:54:58 +09:00
Zuul
a6d7d1fb7d Merge "Refactor handling of tmpauth account line" 2023-04-11 16:24:57 +00:00
Takashi Kajinami
f819119a69 tempauth: Do not log account information
... to avoid leaking passwords.

Change-Id: Ie16a2950f0d7d6727354bd5d7313b83adcd547ff
2023-04-07 03:37:28 +00:00
Takashi Kajinami
b2d6820d5d Refactor handling of tmpauth account line
This replaces the existing implementation using inline_template by more
native functions, to help us maintain the logic more easily.

Change-Id: Ib775edfa6a3a62a6889c9de334b1563f3819146a
2023-04-07 11:51:06 +09:00
ed15de5bf3 Update master for stable/2023.1
Add file to the reno documentation build to show release notes for
stable/2023.1.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.1.

Sem-Ver: feature
Change-Id: Ic3d834bcaad2326ba79b0fb4b619150b6d7cc2a5
2023-04-05 15:36:18 +00:00
Takashi Kajinami
b47246352e Prepare 2023.1 release
Change-Id: I4581792be3ba83fceb4d4781d63348036708339d
22.0.0
2023-03-24 09:58:48 +00:00
Zuul
4aa75465d0 Merge "Ensure storage servers are listening" 2023-03-23 18:13:42 +00:00
Takashi Kajinami
4d23e9e9b7 Ensure storage servers are listening
This adds a few more assertions in acceptance tests to ensure storage
servers(account-server, container-server and object-server) are
listening on their tcp ports as expected.

Change-Id: Idbcb3d6df962d99402a06f895369fe5f812d49ab
2023-03-22 18:24:22 +09:00
Takashi Kajinami
d1cc6938da Do not define service resource when service management is disabled
Change-Id: Ic10cd3632e1b52945195cfefe904257e66958eba
2023-03-22 17:58:09 +09:00
Takashi Kajinami
9b05f2ecd7 Remove TripleO job
... because TripleO is being retired.

Change-Id: I94719d843e3adc89044087a5fc0a3c741d7f4141
2023-03-13 11:20:33 +09:00
Takashi Kajinami
109cd356de Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: I4c0a9357fcc4184df852024e1f6f36c0ed2e1440
2023-03-02 14:47:43 +09:00
Zuul
76d421cc07 Merge "Merge (more) common options" 2023-02-21 20:45:16 +00:00
Takashi Kajinami
d1c1c2a7fa Merge (more) common options
... instead of defining the same options repeatedly.

Change-Id: I464fecf25f5bd36048d5d98c92530427393798cc
2023-02-13 18:44:35 +09:00
Takashi Kajinami
b6544ca2a0 Compact multi-line warning message into a single line
... so that the message is more machine-friendly.

Change-Id: Ic94c645735ee34a2d15b279937f512833c2dbe8a
2023-02-13 17:43:56 +09:00
Takashi Kajinami
feea648419 Replace mocha by rspec-mocks
puppetlabs_spec_helper recommends rspec-mocks instead of mocha[1] and
it uses rspec-mocks by default instead of mocha since v 5.0.0[2]

This is the prep work to adapt to that migration.

[1] https://github.com/puppetlabs/puppetlabs_spec_helper/#mock_with
[2] 493f0cbc1c

Closes-Bug: #2004135
Change-Id: I47b660d1713b394a2dd72a24a87b614d551fe802
2023-01-30 13:27:43 +09:00
Takashi Kajinami
d72f4b7535 ceilometer: Remove deprecated group parameter
This parameter was deprecated during the previous cycle[1] and has had
no effect since then.

[1] 152587fd2a1d0c0bc7ad67585fe2ecdd6abde995

Change-Id: I968efcf3e25199f78559d1e1154a19f8772884c7
2023-01-17 14:38:37 +09:00
Takashi Kajinami
4418d8a0c1 Switch to Ubuntu Jammy (22.04)
... because Focal no longer supports the recent releases such as Zed.

Change-Id: Ibe67a9516078e09e1c30727eb024de2a6e284ebf
2023-01-15 22:32:10 +09:00
Takashi Kajinami
fd38b9cbfa Add support for swift-drive-audit cron job
This change introduces the new class to configure cron job to run
the swift-drive-audit CLI tool periodically. The CLI tool checks
the log files to detect any device failure and umount faulty disks.

Change-Id: I8aded9b59939e5a2eab04424277d9082cbda0a3a
2022-12-19 11:40:25 +09:00
Zuul
928a0e467b Merge "Support customizing fallocate options" 2022-12-12 00:11:10 +00:00
Zuul
43680097c0 Merge "Add support for backend ratelimit middleware options" 2022-12-11 23:58:11 +00:00
Zuul
ada055a0b5 Merge "Drop redundant pick" 2022-12-11 23:58:09 +00:00
Takashi Kajinami
442e1156d0 Fix wrong description of log_address
The log_address parameter has never been deprecated and it has been
actually configured in the config files. This fixes the wrong parameter
description.

Change-Id: I5ec835ce2febdd46e9706d7f927d39a24fdd576c
2022-12-09 15:20:50 +09:00
Takashi Kajinami
ec1b49609b Drop redundant pick
The auditor_disk_chunk_size parameter defaults to $::os_service_default
now so passing undef to the parameter is resolved to that default
value by Puppet.

Change-Id: Ie6026ba2fb1bf657d6b1b981027bc5a8590d0640
2022-12-09 14:50:09 +09:00
Takashi Kajinami
c940ab0ab5 Add support for backend ratelimit middleware options
This introduces a new defined resource type to manage the backend
ratelimit middleware options.

The middleware was added recently so that users can ratelimit internal
requests. Details can be found in the dependent change.

Depends-on: https://review.opendev.org/836046
Change-Id: Ie7c33d0a7e75238be9638551779413d93206cc41
2022-12-08 15:12:50 +09:00
Takashi Kajinami
7a05cf5840 Support customizing fallocate options
This change introduces the new parameters for the following options so
that users can customize fallocate calls in storage server processes.

 - [DEFAULT] disable_fallocate
 - [DEFAULT] fallocate_reserve
 - [app:<type>-server] fallocate_reserve

Change-Id: I37164a2fda28e63604545db46fc925ecf04f9204
2022-12-08 15:02:55 +09:00
Zuul
c17989e647 Merge "Remove logic for old swift-ring-builder" 2022-11-29 18:52:11 +00:00
Zuul
9808684b5a Merge "Remove logic for CentOS < 9" 2022-11-25 15:59:01 +00:00
Zuul
c743d3ee26 Merge "Ubuntu: Disable acceptance tests with swiftinit service provider" 2022-11-25 15:58:59 +00:00
Zuul
f80eddfb4f Merge "Ensure consistent IPv6 address format" 2022-11-25 15:58:57 +00:00
Takashi Kajinami
8ac0db4928 Remove logic for old swift-ring-builder
swift 2.10.0 was released in 2016. We no longer need to support even
older versions. The output format depends on the version currently
installed, thus the latest logic should work as long as the same
release (or even a bit older release) is installed.

This also updates the logic to skip the header lines. The new logic
is considered to be more robust, because it works even when additional
lines are added.

Change-Id: I694ca4c046f490e4ffecf2101f3f147a69045162
2022-11-24 04:23:03 +09:00
Takashi Kajinami
a8ef5f6906 Format IPv6 address for ring device
The IPv6 addresses in ring_*_device resource names should be surrounded
by []. This ensures the address is properly formatted when the resource
is define in swift::storage::node.

Closes-Bug: #1997295
Change-Id: I390f3c7bbfbbbc7217f81e8a0312e5db201ef409
2022-11-22 14:52:42 +09:00
Takashi Kajinami
249f466f94 Ensure consistent IPv6 address format
This change ensures the shortened address representations are always
used for ring devices to avoid broken idempotency caused by different
representations (shortened[1] vs canonical[2]).

[1] ::1
[2] 0000:0000:0000:0000:0000:0000:0000:0001

Closes-Bug: #1997313
Change-Id: I762f0780ba25536aa616482a49d59c7db69924d6
2022-11-22 14:44:48 +09:00
Takashi Kajinami
de018ad7d4 Ubuntu: Disable acceptance tests with swiftinit service provider
Currently acceptance tests are consistently failing in Ubuntu, because
of broken idempotency with swiftinit service provider.

This change disables the test cases as a temporal workaround.

Change-Id: I03265d899ad04f2aa6e39fcb4b79352ac7fa56cd
2022-11-21 17:42:43 +09:00
Takashi Kajinami
be26baa863 Remove logic for CentOS < 9
... because RDO supports CentOS Stream 9 (aka CentOS 9) only since Zed.

Change-Id: I9f1faaaf8481da40992e5ccf3cc0c7a66f4811ea
2022-11-21 05:06:44 +00:00
Zuul
0dcd3afa09 Merge "Restrict access to the mount base directory" 2022-11-08 12:07:23 +00:00
Zuul
6021ccdc39 Merge "Prohibit write to the mount directory" 2022-11-04 12:30:32 +00:00
2161ec46e9 Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.

Sem-Ver: feature
Change-Id: I69a3680164ec1bfc3182e463322edc5aaa93ff9f
2022-10-20 11:12:19 +00:00
Takashi Kajinami
911919e5a5 Restrict access to the mount base directory
The swift processes does not require write access to the mount base
directory (which is usually /srv/node), thus the directory can be owned
by root. This is more consistent with the current installation guide
of Swift.

Change-Id: I6da122c569e7a66a1933b7483fb8cf68a40dd94f
2022-10-20 04:09:02 +00:00
Takashi Kajinami
41ca173193 Prohibit write to the mount directory
This change makes the root user, instead of the swift user, own
the mount path where the data disk is mounted. This allows us to
prevent the swift processes from writing files.

This follows the current installation doc(eg. [1]) which suggests
chown AFTER mounting the disk device.

[1] https://docs.openstack.org/swift/latest/install/storage-install-rdo.html

Change-Id: I1a612fcf658da8ed0cb1dc51fa5e534dc0341241
2022-10-20 11:33:57 +09:00
Takashi Kajinami
b39a938a62 Prepare Zed RC1
Change-Id: I731847354eec0db313ae72dc70fec0b518ecaa16
21.0.0
2022-10-05 18:33:38 +09:00
Takashi Kajinami
7e821025b2 authtoken: Remove deprecated auth_plugin
The parameter was deprecated during Victoria cycle[1] in favor of
the auth_type parameter.

[1] 5722f7149c678fcb79cf792a9eda53537e080cb8

Change-Id: Ibc261c2e2ba9fa9ba547ad5d0f736c1b7230c579
2022-09-29 09:10:27 +09:00
Zuul
febcd8fa44 Merge "Manage internal-client.conf in acceptance tests" 2022-09-07 19:57:43 +00:00
Zuul
5f0df7edbf Merge "CentOS: Use consistent host parameters instead of hard-codes" 2022-09-07 19:57:41 +00:00
Zuul
b22daabdc2 Merge "authtoken: Accept array for service_token_roles" 2022-09-07 19:57:39 +00:00