Disable maintenance mode - fix broken Ruby command
What does this MR do?
The current Ruby command to disable maintenance mode does not work:
irb(main):013:0> ::Gitlab::CurrentSettings.update_attributes!(maintenance_mode: false)
Traceback (most recent call last):
2: from (irb):13
1: from lib/gitlab/current_settings.rb:32:in `method_missing'
NoMethodError (undefined method `update_attributes!' for #<ApplicationSetting:0x00007fbcc6e99938>)
Did you mean? update_attribute
I tried various combinations:
irb(main):014:0> ::Gitlab::CurrentSettings.update_attribute!(maintenance_mode: false)
Traceback (most recent call last):
3: from (irb):13
2: from (irb):14:in `rescue in irb_binding'
1: from lib/gitlab/current_settings.rb:32:in `method_missing'
NoMethodError (undefined method `update_attribute!' for #<ApplicationSetting:0x00007fbcc5286fe8>)
Did you mean? update_attribute
irb(main):015:0> ::Gitlab::CurrentSettings.update_attribute(maintenance_mode: false)
Traceback (most recent call last):
3: from (irb):14
2: from (irb):15:in `rescue in irb_binding'
1: from lib/gitlab/current_settings.rb:32:in `method_missing'
ArgumentError (wrong number of arguments (given 1, expected 2))
irb(main):016:0> ::Gitlab::CurrentSettings.update_attribute('maintenance_mode', false)
=> true
While ::Gitlab::CurrentSettings.update_attribute('maintenance_mode', false)
works - I think it makes more sense to use
::Gitlab::CurrentSettings.update!(maintenance_mode: false)
instead, since the Ruby command is similar to how you would enable maintenance mode.
This of course works:
irb(main):012:0> ::Gitlab::CurrentSettings.update!(maintenance_mode: false)
=> true
Related issues
Author's checklist
-
Follow the: -
Ensure that the product tier badge is added to topic's h1
. -
Request a review based on the: - The documentation page's metadata.
- The associated Technical Writer.
If you are only adding documentation, do not add any of the following labels:
~"feature"
~"frontend"
~"backend"
~"bug"
~"database"
These labels cause the MR to be added to code verification QA issues.
Review checklist
Documentation-related MRs should be reviewed by a Technical Writer for a non-blocking review, based on Documentation Guidelines and the Style Guide.
-
If the content requires it, ensure the information is reviewed by a subject matter expert. - Technical writer review items:
-
Ensure docs metadata is present and up-to-date. -
Ensure the appropriate labels are added to this MR. - If relevant to this MR, ensure content topic type principles are in use, including:
-
The headings should be something you'd do a Google search for. Instead of Default behavior
, say something likeDefault behavior when you close an issue
. -
The headings (other than the page title) should be active. Instead of Configuring GDK
, say something likeConfigure GDK
. -
Any task steps should be written as a numbered list. - If the content still needs to be edited for topic types, you can create a follow-up issue with the docs-technical-debt label.
-
-
-
Review by assigned maintainer, who can always request/require the above reviews. Maintainer's review can occur before or after a technical writer review. -
Ensure a release milestone is set.
Edited by Anton Smith