chef-ruby-lvm-attrib 0.2.8 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.expeditor/config.yml +50 -0
- data/.expeditor/run_linux_tests.sh +44 -0
- data/.expeditor/update_version.sh +12 -0
- data/.expeditor/verify.pipeline.yml +10 -0
- data/.rubocop.yml +4 -0
- data/CHANGELOG.md +20 -1
- data/Gemfile +1 -0
- data/README.md +3 -1
- data/Rakefile +10 -5
- data/VERSION +1 -0
- data/bin/generate_field_data +37 -37
- data/lib/lvm/attributes.rb +1 -1
- data/lib/lvm/attributes/2.02.186(2)/lvs.yaml +328 -0
- data/lib/lvm/attributes/2.02.186(2)/lvsseg.yaml +138 -0
- data/lib/lvm/attributes/2.02.186(2)/pvs.yaml +113 -0
- data/lib/lvm/attributes/2.02.186(2)/pvsseg.yaml +16 -0
- data/lib/lvm/attributes/2.02.186(2)/vgs.yaml +140 -0
- data/lib/lvm/attributes/2.03.05(2)/lvs.yaml +328 -0
- data/lib/lvm/attributes/2.03.05(2)/lvsseg.yaml +138 -0
- data/lib/lvm/attributes/2.03.05(2)/pvs.yaml +113 -0
- data/lib/lvm/attributes/2.03.05(2)/pvsseg.yaml +16 -0
- data/lib/lvm/attributes/2.03.05(2)/vgs.yaml +140 -0
- metadata +18 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2950a875f1028a2dd7b384592984534a76002bc9150c2f0d44bf69ba73b3e1ca
|
4
|
+
data.tar.gz: 9d75105a6e28b9dab08096a49da9ff65d6d3c34fdda0930c3061b84f952d8be9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0c7c2c1d289603f8808611fdbb667b1689d2374cf74a054d5869e9a0ce44806b0765f35365726f1896d035b3b29c8713f32601f378ca684818b3159ccb0be659
|
7
|
+
data.tar.gz: 6f3381c92dcbe90c5e677a8e7e3fab5ae67c2f98c5a05796591330902676666938e1fde671410fc50b6537c88680537e1fe5c4717b16b62025149e2d170833dd
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# Documentation available at https://expeditor.chef.io/docs/getting-started/
|
2
|
+
---
|
3
|
+
|
4
|
+
# Slack channel in Chef Software slack to send notifications about build failures, etc
|
5
|
+
slack:
|
6
|
+
notify_channel: chef-infra-notify
|
7
|
+
|
8
|
+
# This publish is triggered by the `built_in:publish_rubygems` artifact_action.
|
9
|
+
rubygems:
|
10
|
+
- chef-ruby-lvm-attrib
|
11
|
+
|
12
|
+
github:
|
13
|
+
# This deletes the GitHub PR branch after successfully merged into the release branch
|
14
|
+
delete_branch_on_merge: true
|
15
|
+
# The tag format to use (e.g. v1.0.0)
|
16
|
+
version_tag_format: "v{{version}}"
|
17
|
+
# allow bumping the minor release via label
|
18
|
+
minor_bump_labels:
|
19
|
+
- "Expeditor: Bump Version Minor"
|
20
|
+
# allow bumping the major release via label
|
21
|
+
major_bump_labels:
|
22
|
+
- "Expeditor: Bump Version Major"
|
23
|
+
|
24
|
+
changelog:
|
25
|
+
rollup_header: Changes not yet released to rubygems.org
|
26
|
+
|
27
|
+
# These actions are taken, in order they are specified, anytime a Pull Request is merged.
|
28
|
+
merge_actions:
|
29
|
+
- built_in:bump_version:
|
30
|
+
ignore_labels:
|
31
|
+
- "Expeditor: Skip Version Bump"
|
32
|
+
- "Expeditor: Skip All"
|
33
|
+
- bash:.expeditor/update_version.sh:
|
34
|
+
only_if: built_in:bump_version
|
35
|
+
- built_in:update_changelog:
|
36
|
+
ignore_labels:
|
37
|
+
- "Expeditor: Skip Changelog"
|
38
|
+
- "Expeditor: Skip All"
|
39
|
+
- built_in:build_gem:
|
40
|
+
only_if: built_in:bump_version
|
41
|
+
|
42
|
+
pipelines:
|
43
|
+
- verify:
|
44
|
+
description: Pull Request validation tests
|
45
|
+
public: true
|
46
|
+
|
47
|
+
promote:
|
48
|
+
actions:
|
49
|
+
- built_in:rollover_changelog
|
50
|
+
- built_in:publish_rubygems
|
@@ -0,0 +1,44 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
#
|
3
|
+
# This script runs a passed in command, but first setups up the bundler caching on the repo
|
4
|
+
|
5
|
+
set -e
|
6
|
+
|
7
|
+
export USER="root"
|
8
|
+
|
9
|
+
# make sure we have the aws cli
|
10
|
+
apt-get update -y
|
11
|
+
apt-get install awscli -y
|
12
|
+
|
13
|
+
# grab the s3 bundler if it's there and use it for all operations in bundler
|
14
|
+
echo "Fetching bundle cache archive from s3://public-cd-buildkite-cache/${BUILDKITE_PIPELINE_SLUG}/${BUILDKITE_LABEL}/bundle.tar.gz"
|
15
|
+
aws s3 cp "s3://public-cd-buildkite-cache/${BUILDKITE_PIPELINE_SLUG}/${BUILDKITE_LABEL}/bundle.tar.gz" bundle.tar.gz || echo 'Could not pull the bundler archive from s3 for caching. Builds may be slower than usual as all gems will have to install.'
|
16
|
+
aws s3 cp "s3://public-cd-buildkite-cache/${BUILDKITE_PIPELINE_SLUG}/${BUILDKITE_LABEL}/bundle.sha256" bundle.sha256 || echo "Could not pull the sha256 hash of the vendor/bundle directory from s3. Without this we will compress and upload the bundler archive to S3 even if it hasn't changed"
|
17
|
+
|
18
|
+
echo "Restoring the bundle cache archive to vendor/bundle"
|
19
|
+
if [ -f bundle.tar.gz ]; then
|
20
|
+
tar -xzf bundle.tar.gz
|
21
|
+
fi
|
22
|
+
bundle config --local path vendor/bundle
|
23
|
+
|
24
|
+
bundle install --jobs=7 --retry=3
|
25
|
+
bundle exec $1
|
26
|
+
|
27
|
+
if [[ -f bundle.tar.gz && -f bundle.sha256 ]]; then # dont' check the sha if we're missing either file
|
28
|
+
if shasum --check bundle.sha256 --status; then # if the the sha matches we're done
|
29
|
+
echo "Bundled gems have not changed. Skipping upload to s3"
|
30
|
+
exit
|
31
|
+
fi
|
32
|
+
fi
|
33
|
+
|
34
|
+
echo "Generating sha256 hash file of the vendor/bundle directory to ship to s3"
|
35
|
+
shasum -a 256 vendor/bundle > bundle.sha256
|
36
|
+
|
37
|
+
echo "Creating the tar.gz to of the vendor/bundle directory to ship to s3"
|
38
|
+
tar -czf bundle.tar.gz vendor/
|
39
|
+
|
40
|
+
echo "Uploading the tar.gz of the vendor/bundle directory to s3"
|
41
|
+
aws s3 cp bundle.tar.gz "s3://public-cd-buildkite-cache/${BUILDKITE_PIPELINE_SLUG}/${BUILDKITE_LABEL}/bundle.tar.gz" || echo 'Could not push the bundler directory to s3 for caching. Future builds may be slower if this continues.'
|
42
|
+
|
43
|
+
echo "Uploading the sha256 hash of the vendor/bundle directory to s3"
|
44
|
+
aws s3 cp bundle.sha256 "s3://public-cd-buildkite-cache/${BUILDKITE_PIPELINE_SLUG}/${BUILDKITE_LABEL}/bundle.sha256" || echo 'Could not push the bundler directory to s3 for caching. Future builds may be slower if this continues.'
|
@@ -0,0 +1,12 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
#
|
3
|
+
# After a PR merge, Chef Expeditor will bump the PATCH version in the VERSION file.
|
4
|
+
# It then executes this file to update any other files/components with that new version.
|
5
|
+
#
|
6
|
+
|
7
|
+
set -evx
|
8
|
+
|
9
|
+
sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"$(cat VERSION)\"/" lib/lvm/attributes.rb
|
10
|
+
|
11
|
+
# Once Expeditor finshes executing this script, it will commit the changes and push
|
12
|
+
# the commit as a new tag corresponding to the value in the VERSION file.
|
data/.rubocop.yml
ADDED
data/CHANGELOG.md
CHANGED
@@ -1,7 +1,26 @@
|
|
1
|
+
# chef-ruby-lvm-attrib Changelog
|
2
|
+
|
3
|
+
<!-- latest_release 0.3.0 -->
|
4
|
+
## [v0.3.0](https://github.com/chef/chef-ruby-lvm-attrib/tree/v0.3.0) (2019-10-18)
|
5
|
+
|
6
|
+
#### Merged Pull Requests
|
7
|
+
- Add the gem badge to the readme + resolve chefstyle warnings [#23](https://github.com/chef/chef-ruby-lvm-attrib/pull/23) ([tas50](https://github.com/tas50))
|
8
|
+
<!-- latest_release -->
|
9
|
+
<!-- release_rollup since=0.2.8 -->
|
10
|
+
### Changes not yet released to rubygems.org
|
11
|
+
|
12
|
+
#### Merged Pull Requests
|
13
|
+
- Add the gem badge to the readme + resolve chefstyle warnings [#23](https://github.com/chef/chef-ruby-lvm-attrib/pull/23) ([tas50](https://github.com/tas50)) <!-- 0.3.0 -->
|
14
|
+
- Added v2_02_186 attributes [#18](https://github.com/chef/chef-ruby-lvm-attrib/pull/18) ([b-dean](https://github.com/b-dean)) <!-- 0.2.10 -->
|
15
|
+
- Wire up Expeditor and Buildkite [#22](https://github.com/chef/chef-ruby-lvm-attrib/pull/22) ([tas50](https://github.com/tas50)) <!-- 0.2.9 -->
|
16
|
+
<!-- release_rollup -->
|
17
|
+
|
18
|
+
<!-- latest_stable_release -->
|
1
19
|
# 0.2.8 (2019-08-09)
|
2
20
|
|
3
21
|
- Added 2.02.185
|
4
22
|
- Added 2.03.02
|
23
|
+
<!-- latest_stable_release -->
|
5
24
|
|
6
25
|
# 0.2.7 (2019-01-04)
|
7
26
|
|
@@ -152,4 +171,4 @@
|
|
152
171
|
|
153
172
|
- Added LVM attributes for version 2.02.111
|
154
173
|
- Added MIT license to the Gemspec
|
155
|
-
- Gemspec now properly loads the version from the lib/attributes.rb file
|
174
|
+
- Gemspec now properly loads the version from the lib/attributes.rb file
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# chef-ruby-lvm-attrib
|
2
2
|
|
3
|
+
[![Gem Version](https://badge.fury.io/rb/chef-ruby-lvm-attrib.svg)](https://badge.fury.io/rb/chef-ruby-lvm-attrib)
|
4
|
+
|
3
5
|
This is a list of attributes for lvm objects. They are generated from the source code and broken down by version. See ADDING ATTRIBUTES below to contribute.
|
4
6
|
|
5
7
|
At their core these files exist to determine which arguments to pass lvs/vgs/pvs and the subsequent type conversions.
|
@@ -21,7 +23,7 @@ Currently this is split from the main ruby-lvm gem since these files require upd
|
|
21
23
|
## Installation
|
22
24
|
|
23
25
|
```bash
|
24
|
-
sudo gem install ruby-lvm-attrib
|
26
|
+
sudo gem install chef-ruby-lvm-attrib
|
25
27
|
```
|
26
28
|
|
27
29
|
## Updating for new LVM releases
|
data/Rakefile
CHANGED
@@ -1,9 +1,14 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
2
|
|
3
|
-
task :
|
3
|
+
task default: :style
|
4
4
|
|
5
|
-
|
6
|
-
require "
|
7
|
-
|
8
|
-
|
5
|
+
begin
|
6
|
+
require "chefstyle"
|
7
|
+
require "rubocop/rake_task"
|
8
|
+
desc "Run Chefstyle tests"
|
9
|
+
RuboCop::RakeTask.new(:style) do |task|
|
10
|
+
task.options += ["--display-cop-names", "--no-color"]
|
11
|
+
end
|
12
|
+
rescue LoadError
|
13
|
+
puts "chefstyle gem is not installed. bundle install first to make sure all dependencies are installed."
|
9
14
|
end
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.3.0
|
data/bin/generate_field_data
CHANGED
@@ -8,8 +8,8 @@
|
|
8
8
|
require "fileutils"
|
9
9
|
require "yaml"
|
10
10
|
|
11
|
-
VERSION_FILE = "/VERSION"
|
12
|
-
COLUMNS_FILE = "/lib/report/columns.h"
|
11
|
+
VERSION_FILE = "/VERSION".freeze
|
12
|
+
COLUMNS_FILE = "/lib/report/columns.h".freeze
|
13
13
|
|
14
14
|
debug = false
|
15
15
|
|
@@ -70,7 +70,6 @@ TYPE_CONVERSION_MAP = {
|
|
70
70
|
"raidminrecoveryrate" => "Integer",
|
71
71
|
"raidmaxrecoveryrate" => "Integer",
|
72
72
|
"segsizepe" => "Integer",
|
73
|
-
"thinid" => "Integer",
|
74
73
|
# New fields for caching
|
75
74
|
"cache_total_blocks" => "Integer",
|
76
75
|
"cache_used_blocks" => "Integer",
|
@@ -92,7 +91,7 @@ TYPE_CONVERSION_MAP = {
|
|
92
91
|
"seg_new_data_offset" => "Integer",
|
93
92
|
"seg_parity_chunks" => "Integer",
|
94
93
|
"cachemetadataformat" => "Integer",
|
95
|
-
}
|
94
|
+
}.freeze
|
96
95
|
|
97
96
|
lvm_source = ARGV[0]
|
98
97
|
|
@@ -105,9 +104,10 @@ pvssegs = []
|
|
105
104
|
vgs = []
|
106
105
|
File.readlines(lvm_source + COLUMNS_FILE).each do |line|
|
107
106
|
# eg: FIELD(LVS, lv, STR, "LV UUID", lvid.id[1], 38, uuid, "lv_uuid", "Unique identifier")
|
108
|
-
next unless line =~
|
107
|
+
next unless line =~ /^FIELD\((.*)\)$/
|
108
|
+
|
109
109
|
fields = $1.split(", ")
|
110
|
-
fields.each { |f| f.gsub!(
|
110
|
+
fields.each { |f| f.gsub!(/^"/, ""); f.gsub!(/"$/, "") }
|
111
111
|
p fields if debug
|
112
112
|
app = fields[0]
|
113
113
|
general_type = fields[2]
|
@@ -133,24 +133,24 @@ File.readlines(lvm_source + COLUMNS_FILE).each do |line|
|
|
133
133
|
# with issues (seg_start).
|
134
134
|
case app
|
135
135
|
when "LVS", "LVSINFOSTATUS", "LVSSTATUS"
|
136
|
-
method.sub!(
|
136
|
+
method.sub!(/^lv_/, "")
|
137
137
|
when "SEGS"
|
138
|
-
method.sub!(
|
138
|
+
method.sub!(/^seg_/, "")
|
139
139
|
when "LABEL"
|
140
|
-
method.sub!(
|
140
|
+
method.sub!(/^pv_/, "")
|
141
141
|
when "PVS"
|
142
|
-
method.sub!(
|
142
|
+
method.sub!(/^pv_/, "")
|
143
143
|
when "PVSEGS"
|
144
|
-
method.sub!(
|
144
|
+
method.sub!(/^pvseg_/, "")
|
145
145
|
when "VGS"
|
146
|
-
method.sub!(
|
146
|
+
method.sub!(/^vg_/, "")
|
147
147
|
end
|
148
148
|
|
149
149
|
attribute = {
|
150
|
-
:
|
151
|
-
:
|
152
|
-
:
|
153
|
-
:
|
150
|
+
method: method,
|
151
|
+
column: column,
|
152
|
+
type_hint: attribute_type,
|
153
|
+
description: description,
|
154
154
|
}
|
155
155
|
|
156
156
|
case app
|
@@ -170,27 +170,27 @@ File.readlines(lvm_source + COLUMNS_FILE).each do |line|
|
|
170
170
|
end
|
171
171
|
|
172
172
|
# we use vg_uuid as our crossover attribute that links vg->lv and vg->pv
|
173
|
-
attribute = { :
|
174
|
-
:
|
175
|
-
:
|
176
|
-
:
|
173
|
+
attribute = { method: "vg_uuid",
|
174
|
+
column: "vg_uuid",
|
175
|
+
type_hint: "String",
|
176
|
+
description: "For VolumeGroup to LogicalVolume relationship." }
|
177
177
|
lvs << attribute
|
178
|
-
attribute = { :
|
179
|
-
:
|
180
|
-
:
|
181
|
-
:
|
178
|
+
attribute = { method: "vg_uuid",
|
179
|
+
column: "vg_uuid",
|
180
|
+
type_hint: "String",
|
181
|
+
description: "For VolumeGroup to PhysicalVolume relationship." }
|
182
182
|
pvs << attribute
|
183
183
|
|
184
184
|
# and we link lv->lvsegment, pv->pvsegment
|
185
|
-
attribute = { :
|
186
|
-
:
|
187
|
-
:
|
188
|
-
:
|
185
|
+
attribute = { method: "lv_uuid",
|
186
|
+
column: "lv_uuid",
|
187
|
+
type_hint: "String",
|
188
|
+
description: "For LogicalVolume to LogicalVolumeSegment relationship." }
|
189
189
|
lvssegs << attribute
|
190
|
-
attribute = { :
|
191
|
-
:
|
192
|
-
:
|
193
|
-
:
|
190
|
+
attribute = { method: "pv_uuid",
|
191
|
+
column: "pv_uuid",
|
192
|
+
type_hint: "String",
|
193
|
+
description: "For PhysicalVolume to PhysicalVolumeSegment relationship." }
|
194
194
|
pvssegs << attribute
|
195
195
|
|
196
196
|
lvs.sort! { |x, y| x[:column] <=> y[:column] }
|
@@ -202,11 +202,11 @@ vgs.sort! { |x, y| x[:column] <=> y[:column] }
|
|
202
202
|
attributes_dir = "lib/lvm/attributes/#{version}"
|
203
203
|
FileUtils.mkdir(attributes_dir)
|
204
204
|
|
205
|
-
disclaimer =
|
206
|
-
# These are column to object attribute mappings
|
207
|
-
# generated by #{$0} based on
|
208
|
-
# #{lvm_source}/lib/report/columns.h
|
209
|
-
|
205
|
+
disclaimer = <<~GO
|
206
|
+
# These are column to object attribute mappings
|
207
|
+
# generated by #{$0} based on
|
208
|
+
# #{lvm_source}/lib/report/columns.h
|
209
|
+
GO
|
210
210
|
|
211
211
|
File.open("#{attributes_dir}/lvs.yaml", "w") { |f| f.write(disclaimer); f.write(lvs.to_yaml) }
|
212
212
|
File.open("#{attributes_dir}/lvsseg.yaml", "w") { |f| f.write(disclaimer); f.write(lvssegs.to_yaml) }
|
data/lib/lvm/attributes.rb
CHANGED
@@ -0,0 +1,328 @@
|
|
1
|
+
# These are column to object attribute mappings
|
2
|
+
# generated by ./bin/generate_field_data based on
|
3
|
+
# lvm2/lib/report/columns.h
|
4
|
+
---
|
5
|
+
- :method: cache_dirty_blocks
|
6
|
+
:column: cache_dirty_blocks
|
7
|
+
:type_hint: Integer
|
8
|
+
:description: Dirty cache blocks.
|
9
|
+
- :method: cache_read_hits
|
10
|
+
:column: cache_read_hits
|
11
|
+
:type_hint: Integer
|
12
|
+
:description: Cache read hits.
|
13
|
+
- :method: cache_read_misses
|
14
|
+
:column: cache_read_misses
|
15
|
+
:type_hint: Integer
|
16
|
+
:description: Cache read misses.
|
17
|
+
- :method: cache_total_blocks
|
18
|
+
:column: cache_total_blocks
|
19
|
+
:type_hint: Integer
|
20
|
+
:description: Total cache blocks.
|
21
|
+
- :method: cache_used_blocks
|
22
|
+
:column: cache_used_blocks
|
23
|
+
:type_hint: Integer
|
24
|
+
:description: Used cache blocks.
|
25
|
+
- :method: cache_write_hits
|
26
|
+
:column: cache_write_hits
|
27
|
+
:type_hint: Integer
|
28
|
+
:description: Cache write hits.
|
29
|
+
- :method: cache_write_misses
|
30
|
+
:column: cache_write_misses
|
31
|
+
:type_hint: Integer
|
32
|
+
:description: Cache write misses.
|
33
|
+
- :method: convert_lv
|
34
|
+
:column: convert_lv
|
35
|
+
:type_hint: String
|
36
|
+
:description: For lvconvert
|
37
|
+
- :method: convert_lv_uuid
|
38
|
+
:column: convert_lv_uuid
|
39
|
+
:type_hint: String
|
40
|
+
:description: For lvconvert
|
41
|
+
- :method: copy_percent
|
42
|
+
:column: copy_percent
|
43
|
+
:type_hint: String
|
44
|
+
:description: For Cache
|
45
|
+
- :method: data_lv
|
46
|
+
:column: data_lv
|
47
|
+
:type_hint: String
|
48
|
+
:description: For thin and cache pools
|
49
|
+
- :method: data_lv_uuid
|
50
|
+
:column: data_lv_uuid
|
51
|
+
:type_hint: String
|
52
|
+
:description: For thin and cache pools
|
53
|
+
- :method: data_percent
|
54
|
+
:column: data_percent
|
55
|
+
:type_hint: String
|
56
|
+
:description: For snapshot
|
57
|
+
- :method: kernel_cache_policy
|
58
|
+
:column: kernel_cache_policy
|
59
|
+
:type_hint: String
|
60
|
+
:description: Cache policy used in kernel.
|
61
|
+
- :method: kernel_cache_settings
|
62
|
+
:column: kernel_cache_settings
|
63
|
+
:type_hint: String
|
64
|
+
:description: Cache settings/parameters as set in kernel
|
65
|
+
- :method: kernel_discards
|
66
|
+
:column: kernel_discards
|
67
|
+
:type_hint: String
|
68
|
+
:description: For thin pools
|
69
|
+
- :method: kernel_metadata_format
|
70
|
+
:column: kernel_metadata_format
|
71
|
+
:type_hint: Integer
|
72
|
+
:description: Cache metadata format used in kernel.
|
73
|
+
- :method: active
|
74
|
+
:column: lv_active
|
75
|
+
:type_hint: String
|
76
|
+
:description: Active state of the LV.
|
77
|
+
- :method: active_exclusively
|
78
|
+
:column: lv_active_exclusively
|
79
|
+
:type_hint: String
|
80
|
+
:description: Set if the LV is active exclusively.
|
81
|
+
- :method: active_locally
|
82
|
+
:column: lv_active_locally
|
83
|
+
:type_hint: String
|
84
|
+
:description: Set if the LV is active locally.
|
85
|
+
- :method: active_remotely
|
86
|
+
:column: lv_active_remotely
|
87
|
+
:type_hint: String
|
88
|
+
:description: Set if the LV is active remotely.
|
89
|
+
- :method: allocation_locked
|
90
|
+
:column: lv_allocation_locked
|
91
|
+
:type_hint: String
|
92
|
+
:description: Set if LV is locked against allocation changes.
|
93
|
+
- :method: allocation_policy
|
94
|
+
:column: lv_allocation_policy
|
95
|
+
:type_hint: String
|
96
|
+
:description: LV allocation policy.
|
97
|
+
- :method: ancestors
|
98
|
+
:column: lv_ancestors
|
99
|
+
:type_hint: String
|
100
|
+
:description: LV ancestors ignoring any stored history of the ancestry chain.
|
101
|
+
- :method: attr
|
102
|
+
:column: lv_attr
|
103
|
+
:type_hint: String
|
104
|
+
:description: Various attributes - see man page.
|
105
|
+
- :method: check_needed
|
106
|
+
:column: lv_check_needed
|
107
|
+
:type_hint: String
|
108
|
+
:description: For thin pools and cache volumes
|
109
|
+
- :method: converting
|
110
|
+
:column: lv_converting
|
111
|
+
:type_hint: String
|
112
|
+
:description: Set if LV is being converted.
|
113
|
+
- :method: descendants
|
114
|
+
:column: lv_descendants
|
115
|
+
:type_hint: String
|
116
|
+
:description: LV descendants ignoring any stored history of the ancestry chain.
|
117
|
+
- :method: dm_path
|
118
|
+
:column: lv_dm_path
|
119
|
+
:type_hint: String
|
120
|
+
:description: Internal device-mapper pathname for LV (in /dev/mapper directory).
|
121
|
+
- :method: fixed_minor
|
122
|
+
:column: lv_fixed_minor
|
123
|
+
:type_hint: String
|
124
|
+
:description: Set if LV has fixed minor number assigned.
|
125
|
+
- :method: full_ancestors
|
126
|
+
:column: lv_full_ancestors
|
127
|
+
:type_hint: String
|
128
|
+
:description: LV ancestors including stored history of the ancestry chain.
|
129
|
+
- :method: full_descendants
|
130
|
+
:column: lv_full_descendants
|
131
|
+
:type_hint: String
|
132
|
+
:description: LV descendants including stored history of the ancestry chain.
|
133
|
+
- :method: full_name
|
134
|
+
:column: lv_full_name
|
135
|
+
:type_hint: String
|
136
|
+
:description: Full name of LV including its VG
|
137
|
+
- :method: health_status
|
138
|
+
:column: lv_health_status
|
139
|
+
:type_hint: String
|
140
|
+
:description: LV health status.
|
141
|
+
- :method: historical
|
142
|
+
:column: lv_historical
|
143
|
+
:type_hint: String
|
144
|
+
:description: Set if the LV is historical.
|
145
|
+
- :method: host
|
146
|
+
:column: lv_host
|
147
|
+
:type_hint: String
|
148
|
+
:description: Creation host of the LV
|
149
|
+
- :method: image_synced
|
150
|
+
:column: lv_image_synced
|
151
|
+
:type_hint: String
|
152
|
+
:description: Set if mirror/RAID image is synchronized.
|
153
|
+
- :method: initial_image_sync
|
154
|
+
:column: lv_initial_image_sync
|
155
|
+
:type_hint: String
|
156
|
+
:description: Set if mirror/RAID images underwent initial resynchronization.
|
157
|
+
- :method: layout
|
158
|
+
:column: lv_layout
|
159
|
+
:type_hint: String
|
160
|
+
:description: LV layout.
|
161
|
+
- :method: lockargs
|
162
|
+
:column: lv_lockargs
|
163
|
+
:type_hint: String
|
164
|
+
:description: Lock args of the LV used by lvmlockd.
|
165
|
+
- :method: major
|
166
|
+
:column: lv_major
|
167
|
+
:type_hint: String
|
168
|
+
:description: Persistent major number or -1 if not persistent.
|
169
|
+
- :method: merge_failed
|
170
|
+
:column: lv_merge_failed
|
171
|
+
:type_hint: String
|
172
|
+
:description: Set if snapshot merge failed.
|
173
|
+
- :method: merging
|
174
|
+
:column: lv_merging
|
175
|
+
:type_hint: String
|
176
|
+
:description: Set if snapshot LV is being merged to origin.
|
177
|
+
- :method: metadata_size
|
178
|
+
:column: lv_metadata_size
|
179
|
+
:type_hint: Integer
|
180
|
+
:description: For thin and cache pools
|
181
|
+
- :method: minor
|
182
|
+
:column: lv_minor
|
183
|
+
:type_hint: String
|
184
|
+
:description: Persistent minor number or -1 if not persistent.
|
185
|
+
- :method: modules
|
186
|
+
:column: lv_modules
|
187
|
+
:type_hint: String
|
188
|
+
:description: Kernel device-mapper modules required for this LV.
|
189
|
+
- :method: name
|
190
|
+
:column: lv_name
|
191
|
+
:type_hint: String
|
192
|
+
:description: Name. LVs created for internal use are enclosed in brackets.
|
193
|
+
- :method: parent
|
194
|
+
:column: lv_parent
|
195
|
+
:type_hint: String
|
196
|
+
:description: For LVs that are components of another LV
|
197
|
+
- :method: path
|
198
|
+
:column: lv_path
|
199
|
+
:type_hint: String
|
200
|
+
:description: Full pathname for LV. Blank for internal LVs.
|
201
|
+
- :method: profile
|
202
|
+
:column: lv_profile
|
203
|
+
:type_hint: String
|
204
|
+
:description: Configuration profile attached to this LV.
|
205
|
+
- :method: read_ahead
|
206
|
+
:column: lv_read_ahead
|
207
|
+
:type_hint: String
|
208
|
+
:description: Read ahead setting in current units.
|
209
|
+
- :method: role
|
210
|
+
:column: lv_role
|
211
|
+
:type_hint: String
|
212
|
+
:description: LV role.
|
213
|
+
- :method: size
|
214
|
+
:column: lv_size
|
215
|
+
:type_hint: Integer
|
216
|
+
:description: Size of LV in current units.
|
217
|
+
- :method: skip_activation
|
218
|
+
:column: lv_skip_activation
|
219
|
+
:type_hint: String
|
220
|
+
:description: Set if LV is skipped on activation.
|
221
|
+
- :method: snapshot_invalid
|
222
|
+
:column: lv_snapshot_invalid
|
223
|
+
:type_hint: String
|
224
|
+
:description: Set if snapshot LV is invalid.
|
225
|
+
- :method: tags
|
226
|
+
:column: lv_tags
|
227
|
+
:type_hint: String
|
228
|
+
:description: Tags
|
229
|
+
- :method: time
|
230
|
+
:column: lv_time
|
231
|
+
:type_hint: String
|
232
|
+
:description: Creation time of the LV
|
233
|
+
- :method: time_removed
|
234
|
+
:column: lv_time_removed
|
235
|
+
:type_hint: String
|
236
|
+
:description: Removal time of the LV
|
237
|
+
- :method: uuid
|
238
|
+
:column: lv_uuid
|
239
|
+
:type_hint: String
|
240
|
+
:description: Unique identifier.
|
241
|
+
- :method: when_full
|
242
|
+
:column: lv_when_full
|
243
|
+
:type_hint: String
|
244
|
+
:description: For thin pools
|
245
|
+
- :method: metadata_lv
|
246
|
+
:column: metadata_lv
|
247
|
+
:type_hint: String
|
248
|
+
:description: For thin and cache pools
|
249
|
+
- :method: metadata_lv_uuid
|
250
|
+
:column: metadata_lv_uuid
|
251
|
+
:type_hint: String
|
252
|
+
:description: For thin and cache pools
|
253
|
+
- :method: metadata_percent
|
254
|
+
:column: metadata_percent
|
255
|
+
:type_hint: String
|
256
|
+
:description: For cache and thin pools
|
257
|
+
- :method: mirror_log
|
258
|
+
:column: mirror_log
|
259
|
+
:type_hint: String
|
260
|
+
:description: For mirrors
|
261
|
+
- :method: mirror_log_uuid
|
262
|
+
:column: mirror_log_uuid
|
263
|
+
:type_hint: String
|
264
|
+
:description: For mirrors
|
265
|
+
- :method: move_pv
|
266
|
+
:column: move_pv
|
267
|
+
:type_hint: String
|
268
|
+
:description: For pvmove
|
269
|
+
- :method: move_pv_uuid
|
270
|
+
:column: move_pv_uuid
|
271
|
+
:type_hint: String
|
272
|
+
:description: For pvmove
|
273
|
+
- :method: origin
|
274
|
+
:column: origin
|
275
|
+
:type_hint: String
|
276
|
+
:description: For snapshots and thins
|
277
|
+
- :method: origin_size
|
278
|
+
:column: origin_size
|
279
|
+
:type_hint: Integer
|
280
|
+
:description: For snapshots
|
281
|
+
- :method: origin_uuid
|
282
|
+
:column: origin_uuid
|
283
|
+
:type_hint: String
|
284
|
+
:description: For snapshots and thins
|
285
|
+
- :method: pool_lv
|
286
|
+
:column: pool_lv
|
287
|
+
:type_hint: String
|
288
|
+
:description: For thin volumes
|
289
|
+
- :method: pool_lv_uuid
|
290
|
+
:column: pool_lv_uuid
|
291
|
+
:type_hint: String
|
292
|
+
:description: For thin volumes
|
293
|
+
- :method: raid_max_recovery_rate
|
294
|
+
:column: raid_max_recovery_rate
|
295
|
+
:type_hint: Integer
|
296
|
+
:description: For RAID1
|
297
|
+
- :method: raid_min_recovery_rate
|
298
|
+
:column: raid_min_recovery_rate
|
299
|
+
:type_hint: Integer
|
300
|
+
:description: For RAID1
|
301
|
+
- :method: raid_mismatch_count
|
302
|
+
:column: raid_mismatch_count
|
303
|
+
:type_hint: Integer
|
304
|
+
:description: For RAID
|
305
|
+
- :method: raid_sync_action
|
306
|
+
:column: raid_sync_action
|
307
|
+
:type_hint: String
|
308
|
+
:description: For RAID
|
309
|
+
- :method: raid_write_behind
|
310
|
+
:column: raid_write_behind
|
311
|
+
:type_hint: Integer
|
312
|
+
:description: For RAID1
|
313
|
+
- :method: seg_count
|
314
|
+
:column: seg_count
|
315
|
+
:type_hint: Integer
|
316
|
+
:description: Number of segments in LV.
|
317
|
+
- :method: snap_percent
|
318
|
+
:column: snap_percent
|
319
|
+
:type_hint: String
|
320
|
+
:description: For snapshots
|
321
|
+
- :method: sync_percent
|
322
|
+
:column: sync_percent
|
323
|
+
:type_hint: String
|
324
|
+
:description: For Cache
|
325
|
+
- :method: vg_uuid
|
326
|
+
:column: vg_uuid
|
327
|
+
:type_hint: String
|
328
|
+
:description: For VolumeGroup to LogicalVolume relationship.
|