Class: Secret
Overview
Table name: secrets
id :bigint not null, primary key
version :integer
secret :text(65535)
name :string(255)
created_at :datetime not null
updated_at :datetime not null
Class Method Summary
collapse
_magically_defined_time_objects
Class Method Details
.get_current_secret(name:) ⇒ Object
25
26
27
|
# File 'app/models/secret.rb', line 25
def get_current_secret(name:)
get_secrets(name: name).last
end
|
.get_secret_range(name:, range: [-2..-1]) ⇒ Object
29
30
31
|
# File 'app/models/secret.rb', line 29
def get_secret_range(name:, range: [-2..-1])
where(name: name)[*range]
end
|
.get_secrets(name:) ⇒ Object
33
34
35
|
# File 'app/models/secret.rb', line 33
def get_secrets(name:)
where(name: name)
end
|
.update(name:, secret:) ⇒ Object
15
16
17
18
19
20
21
22
23
|
# File 'app/models/secret.rb', line 15
def update(name:, secret:)
next_version = get_secrets(name: name).select(:version).last&.version || 0
next_version += 1
instance = new(version: next_version, name: name, secret: secret)
instance.save!
instance
end
|