From 88a1c327fd22e82623e51521de180537612e3b27 Mon Sep 17 00:00:00 2001 From: James Fargher <proglottis@gmail.com> Date: Tue, 8 Jun 2021 14:03:45 +0000 Subject: [PATCH] Enable Style/GlobalStdStream --- .rubocop_todo.yml | 5 ---- doc/administration/file_hooks.md | 2 +- doc/administration/troubleshooting/debug.md | 2 +- .../gitlab_rails_cheat_sheet.md | 4 +-- .../navigating_gitlab_via_rails_console.md | 2 +- doc/development/profiling.md | 2 +- ee/lib/tasks/gitlab/elastic.rake | 2 +- file_hooks/examples/save_to_file.rb | 2 +- lib/gitlab/profiler.rb | 2 +- lib/gitlab/sidekiq_cluster/cli.rb | 2 +- lib/gitlab/task_helpers.rb | 8 +++--- lib/gitlab/utils/measuring.rb | 4 +-- lib/tasks/gitlab/artifacts/migrate.rake | 4 +-- lib/tasks/gitlab/cleanup.rake | 2 +- lib/tasks/gitlab/db.rake | 2 +- lib/tasks/gitlab/docs/redirect.rake | 4 +-- lib/tasks/gitlab/doctor/secrets.rake | 2 +- lib/tasks/gitlab/ldap.rake | 2 +- lib/tasks/gitlab/lfs/migrate.rake | 4 +-- lib/tasks/gitlab/packages/composer.rake | 2 +- lib/tasks/gitlab/packages/events.rake | 4 +-- lib/tasks/gitlab/packages/migrate.rake | 2 +- lib/tasks/gitlab/pages.rake | 6 ++-- lib/tasks/gitlab/terraform/migrate.rake | 2 +- lib/tasks/gitlab/uploads/migrate.rake | 4 +-- lib/tasks/gitlab/uploads/sanitize.rake | 2 +- lib/tasks/gitlab/x509/update.rake | 2 +- lib/tasks/import.rake | 4 +-- lib/tasks/tokens.rake | 2 +- qa/qa/tools/delete_projects.rb | 8 +++--- qa/qa/tools/delete_subgroups.rb | 8 +++--- qa/qa/tools/delete_test_ssh_keys.rb | 8 +++--- qa/qa/tools/generate_perf_testdata.rb | 28 +++++++++---------- .../revoke_all_personal_access_tokens.rb | 4 +-- scripts/trigger-build | 2 +- spec/lib/gitlab/file_hook_spec.rb | 2 +- spec/lib/gitlab/profiler_spec.rb | 8 ++++-- spec/lib/gitlab/utils/measuring_spec.rb | 2 +- spec/support/helpers/gitaly_setup.rb | 4 +-- spec/tasks/gitlab/ldap_rake_spec.rb | 4 +-- .../gitlab/terraform/migrate_rake_spec.rb | 2 +- 41 files changed, 83 insertions(+), 84 deletions(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 39b1518558d48..ad1f7afa451b1 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -742,11 +742,6 @@ Style/ExplicitBlockArgument: Style/FormatString: Enabled: false -# Offense count: 67 -# Cop supports --auto-correct. -Style/GlobalStdStream: - Enabled: false - # Offense count: 897 # Configuration parameters: MinBodyLength. Style/GuardClause: diff --git a/doc/administration/file_hooks.md b/doc/administration/file_hooks.md index c60f00404968b..f6bbd2338be2a 100644 --- a/doc/administration/file_hooks.md +++ b/doc/administration/file_hooks.md @@ -79,7 +79,7 @@ require 'json' require 'mail' # The incoming variables are in JSON format so we need to parse it first. -ARGS = JSON.parse(STDIN.read) +ARGS = JSON.parse($stdin.read) # We only want to trigger this file hook on the event project_create return unless ARGS['event_name'] == 'project_create' diff --git a/doc/administration/troubleshooting/debug.md b/doc/administration/troubleshooting/debug.md index 7be51cae84787..c1e51001961c0 100644 --- a/doc/administration/troubleshooting/debug.md +++ b/doc/administration/troubleshooting/debug.md @@ -26,7 +26,7 @@ You can enable output of Active Record debug logging in the Rails console session by running: ```ruby -ActiveRecord::Base.logger = Logger.new(STDOUT) +ActiveRecord::Base.logger = Logger.new($stdout) ``` This will show information about database queries triggered by any Ruby code diff --git a/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md b/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md index dd1f368043537..c56b2a45c396e 100644 --- a/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md +++ b/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md @@ -100,7 +100,7 @@ Rails.cache.instance_variable_get(:@data).keys ```ruby # Before 11.6.0 -logger = Logger.new(STDOUT) +logger = Logger.new($stdout) admin_token = User.find_by_username('ADMIN_USERNAME').personal_access_tokens.first.token app.get("URL/?private_token=#{admin_token}") @@ -113,7 +113,7 @@ Gitlab::Profiler.with_user(admin) { app.get(url) } ## Using the GitLab profiler inside console (used as of 10.5) ```ruby -logger = Logger.new(STDOUT) +logger = Logger.new($stdout) admin = User.find_by_username('ADMIN_USERNAME') Gitlab::Profiler.profile('URL', logger: logger, user: admin) ``` diff --git a/doc/administration/troubleshooting/navigating_gitlab_via_rails_console.md b/doc/administration/troubleshooting/navigating_gitlab_via_rails_console.md index 7c0a1c1b39734..e55118d7309f9 100644 --- a/doc/administration/troubleshooting/navigating_gitlab_via_rails_console.md +++ b/doc/administration/troubleshooting/navigating_gitlab_via_rails_console.md @@ -46,7 +46,7 @@ Let's enable debug logging for Active Record so we can see the underlying database queries made: ```ruby -ActiveRecord::Base.logger = Logger.new(STDOUT) +ActiveRecord::Base.logger = Logger.new($stdout) ``` Now, let's try retrieving a user from the database: diff --git a/doc/development/profiling.md b/doc/development/profiling.md index 81881a4d490bd..781138a6ade61 100644 --- a/doc/development/profiling.md +++ b/doc/development/profiling.md @@ -49,7 +49,7 @@ ActiveRecord and ActionController log output to that logger. Further options are documented with the method source. ```ruby -Gitlab::Profiler.profile('/gitlab-org/gitlab-test', user: User.first, logger: Logger.new(STDOUT)) +Gitlab::Profiler.profile('/gitlab-org/gitlab-test', user: User.first, logger: Logger.new($stdout)) ``` There is also a RubyProf printer available: diff --git a/ee/lib/tasks/gitlab/elastic.rake b/ee/lib/tasks/gitlab/elastic.rake index 33431ef61dbec..ff6d9027c50de 100644 --- a/ee/lib/tasks/gitlab/elastic.rake +++ b/ee/lib/tasks/gitlab/elastic.rake @@ -51,7 +51,7 @@ namespace :gitlab do desc "GitLab | Elasticsearch | Index all snippets" task index_snippets: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info("Indexing snippets...") Snippet.es_import diff --git a/file_hooks/examples/save_to_file.rb b/file_hooks/examples/save_to_file.rb index 61b0df9bfd6e3..88e5986337b43 100755 --- a/file_hooks/examples/save_to_file.rb +++ b/file_hooks/examples/save_to_file.rb @@ -1,3 +1,3 @@ #!/usr/bin/env ruby -x = STDIN.read +x = $stdin.read File.write('/tmp/rb-data.txt', x) diff --git a/lib/gitlab/profiler.rb b/lib/gitlab/profiler.rb index 42f43f998c490..5c9b029a107d6 100644 --- a/lib/gitlab/profiler.rb +++ b/lib/gitlab/profiler.rb @@ -170,7 +170,7 @@ def self.log_load_times_by_model(logger) def self.print_by_total_time(result, options = {}) default_options = { sort_method: :total_time, filter_by: :total_time } - RubyProf::FlatPrinter.new(result).print(STDOUT, default_options.merge(options)) + RubyProf::FlatPrinter.new(result).print($stdout, default_options.merge(options)) end end end diff --git a/lib/gitlab/sidekiq_cluster/cli.rb b/lib/gitlab/sidekiq_cluster/cli.rb index 9490d543dd1b7..5d633620c7e52 100644 --- a/lib/gitlab/sidekiq_cluster/cli.rb +++ b/lib/gitlab/sidekiq_cluster/cli.rb @@ -22,7 +22,7 @@ class CLI CommandError = Class.new(StandardError) - def initialize(log_output = STDERR) + def initialize(log_output = $stderr) require_relative '../../../lib/gitlab/sidekiq_logging/json_formatter' # As recommended by https://github.com/mperham/sidekiq/wiki/Advanced-Options#concurrency diff --git a/lib/gitlab/task_helpers.rb b/lib/gitlab/task_helpers.rb index 1ceccc64ec0d7..227962fc0f776 100644 --- a/lib/gitlab/task_helpers.rb +++ b/lib/gitlab/task_helpers.rb @@ -61,7 +61,7 @@ def os_name def prompt(message, choices = nil) begin print(message) - answer = STDIN.gets.chomp + answer = $stdin.gets.chomp end while choices.present? && !choices.include?(answer) answer end @@ -70,12 +70,12 @@ def prompt(message, choices = nil) # # message - custom message to display before input def prompt_for_password(message = 'Enter password: ') - unless STDIN.tty? + unless $stdin.tty? print(message) - return STDIN.gets.chomp + return $stdin.gets.chomp end - STDIN.getpass(message) + $stdin.getpass(message) end # Runs the given command and matches the output against the given pattern diff --git a/lib/gitlab/utils/measuring.rb b/lib/gitlab/utils/measuring.rb index ffd12c1b51843..dc43d977a6217 100644 --- a/lib/gitlab/utils/measuring.rb +++ b/lib/gitlab/utils/measuring.rb @@ -9,7 +9,7 @@ class << self attr_writer :logger def logger - @logger ||= Logger.new(STDOUT) + @logger ||= Logger.new($stdout) end end @@ -67,7 +67,7 @@ def with_measure_time def log_info(details) details = base_log_data.merge(details) - details = details.to_yaml if ActiveSupport::Logger.logger_outputs_to?(Measuring.logger, STDOUT) + details = details.to_yaml if ActiveSupport::Logger.logger_outputs_to?(Measuring.logger, $stdout) Measuring.logger.info(details) end end diff --git a/lib/tasks/gitlab/artifacts/migrate.rake b/lib/tasks/gitlab/artifacts/migrate.rake index 4c312ea492b33..084e7c78906d5 100644 --- a/lib/tasks/gitlab/artifacts/migrate.rake +++ b/lib/tasks/gitlab/artifacts/migrate.rake @@ -7,7 +7,7 @@ desc 'GitLab | Artifacts | Migrate files for artifacts to comply with new storag namespace :gitlab do namespace :artifacts do task migrate: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) helper = Gitlab::LocalAndRemoteStorageMigration::ArtifactMigrater.new(logger) @@ -19,7 +19,7 @@ namespace :gitlab do end task migrate_to_local: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) helper = Gitlab::LocalAndRemoteStorageMigration::ArtifactMigrater.new(logger) diff --git a/lib/tasks/gitlab/cleanup.rake b/lib/tasks/gitlab/cleanup.rake index 733cf6c3a9779..0cd4ab354c908 100644 --- a/lib/tasks/gitlab/cleanup.rake +++ b/lib/tasks/gitlab/cleanup.rake @@ -178,7 +178,7 @@ namespace :gitlab do return @logger if defined?(@logger) @logger = if Rails.env.development? || Rails.env.production? - Logger.new(STDOUT).tap do |stdout_logger| + Logger.new($stdout).tap do |stdout_logger| stdout_logger.extend(ActiveSupport::Logger.broadcast(Rails.logger)) stdout_logger.level = debug? ? Logger::DEBUG : Logger::INFO end diff --git a/lib/tasks/gitlab/db.rake b/lib/tasks/gitlab/db.rake index 6145e0f3540b7..ee986f4c50306 100644 --- a/lib/tasks/gitlab/db.rake +++ b/lib/tasks/gitlab/db.rake @@ -209,7 +209,7 @@ namespace :gitlab do raise "Index not found or not supported: #{args[:index_name]}" if indexes.empty? end - ActiveRecord::Base.logger = Logger.new(STDOUT) if Gitlab::Utils.to_boolean(ENV['LOG_QUERIES_TO_CONSOLE'], default: false) + ActiveRecord::Base.logger = Logger.new($stdout) if Gitlab::Utils.to_boolean(ENV['LOG_QUERIES_TO_CONSOLE'], default: false) Gitlab::Database::Reindexing.perform(indexes) rescue StandardError => e diff --git a/lib/tasks/gitlab/docs/redirect.rake b/lib/tasks/gitlab/docs/redirect.rake index 71e0b6ab2c52a..990ff723eeb22 100644 --- a/lib/tasks/gitlab/docs/redirect.rake +++ b/lib/tasks/gitlab/docs/redirect.rake @@ -14,14 +14,14 @@ namespace :gitlab do old_path = args.old_path else puts '=> Enter the path of the OLD file:' - old_path = STDIN.gets.chomp + old_path = $stdin.gets.chomp end if args.new_path new_path = args.new_path else puts '=> Enter the path of the NEW file:' - new_path = STDIN.gets.chomp + new_path = $stdin.gets.chomp end # diff --git a/lib/tasks/gitlab/doctor/secrets.rake b/lib/tasks/gitlab/doctor/secrets.rake index 6e3f474312cf9..29f0f36c705d0 100644 --- a/lib/tasks/gitlab/doctor/secrets.rake +++ b/lib/tasks/gitlab/doctor/secrets.rake @@ -4,7 +4,7 @@ namespace :gitlab do namespace :doctor do desc "GitLab | Check if the database encrypted values can be decrypted using current secrets" task secrets: :gitlab_environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.level = Gitlab::Utils.to_boolean(ENV['VERBOSE']) ? Logger::DEBUG : Logger::INFO diff --git a/lib/tasks/gitlab/ldap.rake b/lib/tasks/gitlab/ldap.rake index 3b2834c000806..4da22e686ef22 100644 --- a/lib/tasks/gitlab/ldap.rake +++ b/lib/tasks/gitlab/ldap.rake @@ -42,7 +42,7 @@ namespace :gitlab do namespace :secret do desc 'GitLab | LDAP | Secret | Write LDAP secrets' task write: [:environment] do - content = STDIN.tty? ? STDIN.gets : STDIN.read + content = $stdin.tty? ? $stdin.gets : $stdin.read Gitlab::EncryptedLdapCommand.write(content) end diff --git a/lib/tasks/gitlab/lfs/migrate.rake b/lib/tasks/gitlab/lfs/migrate.rake index a173de7c5c709..47f9e1dfb3212 100644 --- a/lib/tasks/gitlab/lfs/migrate.rake +++ b/lib/tasks/gitlab/lfs/migrate.rake @@ -6,7 +6,7 @@ desc "GitLab | LFS | Migrate LFS objects to remote storage" namespace :gitlab do namespace :lfs do task migrate: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Starting transfer of LFS files to object storage') LfsObject.with_files_stored_locally @@ -20,7 +20,7 @@ namespace :gitlab do end task migrate_to_local: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Starting transfer of LFS files to local storage') LfsObject.with_files_stored_remotely diff --git a/lib/tasks/gitlab/packages/composer.rake b/lib/tasks/gitlab/packages/composer.rake index c9bccfe938475..97f1da0ff636c 100644 --- a/lib/tasks/gitlab/packages/composer.rake +++ b/lib/tasks/gitlab/packages/composer.rake @@ -6,7 +6,7 @@ desc "GitLab | Packages | Build composer cache" namespace :gitlab do namespace :packages do task build_composer_cache: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Starting to build composer cache files') ::Packages::Package.composer.find_in_batches do |packages| diff --git a/lib/tasks/gitlab/packages/events.rake b/lib/tasks/gitlab/packages/events.rake index d24535d85b623..a5b801ff62dc6 100644 --- a/lib/tasks/gitlab/packages/events.rake +++ b/lib/tasks/gitlab/packages/events.rake @@ -14,7 +14,7 @@ namespace :gitlab do end task generate_counts: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Building list of package events...') path = Gitlab::UsageDataCounters::PackageEventCounter::KNOWN_EVENTS_PATH @@ -26,7 +26,7 @@ namespace :gitlab do end task generate_unique: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Building list of package events...') path = File.join(File.dirname(Gitlab::UsageDataCounters::HLLRedisCounter::KNOWN_EVENTS_PATH), 'package_events.yml') diff --git a/lib/tasks/gitlab/packages/migrate.rake b/lib/tasks/gitlab/packages/migrate.rake index febc3e7fa2deb..1c28f4308a292 100644 --- a/lib/tasks/gitlab/packages/migrate.rake +++ b/lib/tasks/gitlab/packages/migrate.rake @@ -6,7 +6,7 @@ desc "GitLab | Packages | Migrate packages files to remote storage" namespace :gitlab do namespace :packages do task migrate: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Starting transfer of package files to object storage') unless ::Packages::PackageFileUploader.object_store_enabled? diff --git a/lib/tasks/gitlab/pages.rake b/lib/tasks/gitlab/pages.rake index 684d62d136793..c3828e7eba48e 100644 --- a/lib/tasks/gitlab/pages.rake +++ b/lib/tasks/gitlab/pages.rake @@ -35,7 +35,7 @@ namespace :gitlab do end def logger - @logger ||= Logger.new(STDOUT) + @logger ||= Logger.new($stdout) end def migration_threads @@ -60,7 +60,7 @@ namespace :gitlab do namespace :deployments do task migrate_to_object_storage: :gitlab_environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) helper = Gitlab::LocalAndRemoteStorageMigration::PagesDeploymentMigrater.new(logger) @@ -72,7 +72,7 @@ namespace :gitlab do end task migrate_to_local: :gitlab_environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) helper = Gitlab::LocalAndRemoteStorageMigration::PagesDeploymentMigrater.new(logger) diff --git a/lib/tasks/gitlab/terraform/migrate.rake b/lib/tasks/gitlab/terraform/migrate.rake index 2bf9ec9537aa5..99e33011cf5a4 100644 --- a/lib/tasks/gitlab/terraform/migrate.rake +++ b/lib/tasks/gitlab/terraform/migrate.rake @@ -6,7 +6,7 @@ desc "GitLab | Terraform | Migrate Terraform states to remote storage" namespace :gitlab do namespace :terraform_states do task migrate: :environment do - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) logger.info('Starting transfer of Terraform states to object storage') begin diff --git a/lib/tasks/gitlab/uploads/migrate.rake b/lib/tasks/gitlab/uploads/migrate.rake index 6052ff90341b1..80290f95e8e38 100644 --- a/lib/tasks/gitlab/uploads/migrate.rake +++ b/lib/tasks/gitlab/uploads/migrate.rake @@ -16,7 +16,7 @@ namespace :gitlab do # category to object storage desc 'GitLab | Uploads | Migrate the uploaded files of specified type to object storage' task :migrate, [:uploader_class, :model_class, :mounted_as] => :environment do |_t, args| - Gitlab::Uploads::MigrationHelper.new(args, Logger.new(STDOUT)).migrate_to_remote_storage + Gitlab::Uploads::MigrationHelper.new(args, Logger.new($stdout)).migrate_to_remote_storage end namespace :migrate_to_local do @@ -31,7 +31,7 @@ namespace :gitlab do desc 'GitLab | Uploads | Migrate the uploaded files of specified type to local storage' task :migrate_to_local, [:uploader_class, :model_class, :mounted_as] => :environment do |_t, args| - Gitlab::Uploads::MigrationHelper.new(args, Logger.new(STDOUT)).migrate_to_local_storage + Gitlab::Uploads::MigrationHelper.new(args, Logger.new($stdout)).migrate_to_local_storage end end end diff --git a/lib/tasks/gitlab/uploads/sanitize.rake b/lib/tasks/gitlab/uploads/sanitize.rake index eec423cbb8b51..40f6a7bb67d08 100644 --- a/lib/tasks/gitlab/uploads/sanitize.rake +++ b/lib/tasks/gitlab/uploads/sanitize.rake @@ -8,7 +8,7 @@ namespace :gitlab do args.with_defaults(dry_run: 'true') args.with_defaults(sleep_time: 0.3) - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) sanitizer = Gitlab::Sanitizers::Exif.new(logger: logger) sanitizer.batch_clean(start_id: args.start_id, stop_id: args.stop_id, diff --git a/lib/tasks/gitlab/x509/update.rake b/lib/tasks/gitlab/x509/update.rake index de878a3d093c1..d3c63fa851462 100644 --- a/lib/tasks/gitlab/x509/update.rake +++ b/lib/tasks/gitlab/x509/update.rake @@ -10,7 +10,7 @@ namespace :gitlab do end def update_certificates - logger = Logger.new(STDOUT) + logger = Logger.new($stdout) unless X509CommitSignature.exists? logger.info("Unable to find any x509 commit signatures. Exiting.") diff --git a/lib/tasks/import.rake b/lib/tasks/import.rake index 633beb132d860..b7a5cbe44b915 100644 --- a/lib/tasks/import.rake +++ b/lib/tasks/import.rake @@ -38,7 +38,7 @@ class GithubImport puts "This will import GitHub #{@repo.full_name.bright} into GitLab #{@project_path.bright} as #{@current_user.name}" puts "Permission checks are ignored. Press any key to continue.".color(:red) - STDIN.getch + $stdin.getch puts 'Starting the import (this could take a while)'.color(:green) end @@ -131,7 +131,7 @@ class GithubRepos end def repo_id - @repo_id ||= STDIN.gets.chomp.to_i + @repo_id ||= $stdin.gets.chomp.to_i end def repos diff --git a/lib/tasks/tokens.rake b/lib/tasks/tokens.rake index 74baa11c314ee..ff14ab51b4922 100644 --- a/lib/tasks/tokens.rake +++ b/lib/tasks/tokens.rake @@ -19,7 +19,7 @@ namespace :tokens do def reset_all_users_token(reset_token_method) TmpUser.find_in_batches do |batch| puts "Processing batch starting with user ID: #{batch.first.id}" - STDOUT.flush + $stdout.flush batch.each(&reset_token_method) end diff --git a/qa/qa/tools/delete_projects.rb b/qa/qa/tools/delete_projects.rb index bb73033e9d7a5..8a690373a376c 100644 --- a/qa/qa/tools/delete_projects.rb +++ b/qa/qa/tools/delete_projects.rb @@ -20,7 +20,7 @@ def initialize end def run - STDOUT.puts 'Running...' + $stdout.puts 'Running...' # Fetch group's id group_id = fetch_group_id @@ -30,16 +30,16 @@ def run # Do not delete projects that are less than 4 days old (for debugging purposes) project_ids = fetch_project_ids(group_id, total_project_pages) - STDOUT.puts "Number of projects to be deleted: #{project_ids.length}" + $stdout.puts "Number of projects to be deleted: #{project_ids.length}" delete_projects(project_ids) unless project_ids.empty? - STDOUT.puts "\nDone" + $stdout.puts "\nDone" end private def delete_projects(project_ids) - STDOUT.puts "Deleting #{project_ids.length} projects..." + $stdout.puts "Deleting #{project_ids.length} projects..." project_ids.each do |project_id| delete_response = delete Runtime::API::Request.new(@api_client, "/projects/#{project_id}").url dot_or_f = delete_response.code.between?(200, 300) ? "\e[32m.\e[0m" : "\e[31mF\e[0m" diff --git a/qa/qa/tools/delete_subgroups.rb b/qa/qa/tools/delete_subgroups.rb index 903f730a03050..b9e3ed6601321 100644 --- a/qa/qa/tools/delete_subgroups.rb +++ b/qa/qa/tools/delete_subgroups.rb @@ -20,7 +20,7 @@ def initialize end def run - STDOUT.puts 'Running...' + $stdout.puts 'Running...' # Fetch group's id group_id = fetch_group_id @@ -29,16 +29,16 @@ def run total_sub_group_pages = sub_groups_head_response.headers[:x_total_pages] sub_group_ids = fetch_subgroup_ids(group_id, total_sub_group_pages) - STDOUT.puts "Number of Sub Groups not already marked for deletion: #{sub_group_ids.length}" + $stdout.puts "Number of Sub Groups not already marked for deletion: #{sub_group_ids.length}" delete_subgroups(sub_group_ids) unless sub_group_ids.empty? - STDOUT.puts "\nDone" + $stdout.puts "\nDone" end private def delete_subgroups(sub_group_ids) - STDOUT.puts "Deleting #{sub_group_ids.length} subgroups..." + $stdout.puts "Deleting #{sub_group_ids.length} subgroups..." sub_group_ids.each do |subgroup_id| delete_response = delete Runtime::API::Request.new(@api_client, "/groups/#{subgroup_id}").url dot_or_f = delete_response.code == 202 ? "\e[32m.\e[0m" : "\e[31mF\e[0m" diff --git a/qa/qa/tools/delete_test_ssh_keys.rb b/qa/qa/tools/delete_test_ssh_keys.rb index 953e9fc63d1db..dea6930de1ea5 100644 --- a/qa/qa/tools/delete_test_ssh_keys.rb +++ b/qa/qa/tools/delete_test_ssh_keys.rb @@ -30,18 +30,18 @@ def initialize(title_portion: 'E2E test key:', delete_before: Date.today.to_s, d end def run - STDOUT.puts 'Running...' + $stdout.puts 'Running...' keys_head_response = head Runtime::API::Request.new(@api_client, "/user/keys", per_page: ITEMS_PER_PAGE).url total_pages = keys_head_response.headers[:x_total_pages] test_ssh_key_ids = fetch_test_ssh_key_ids(total_pages) - STDOUT.puts "Number of test ssh keys to be deleted: #{test_ssh_key_ids.length}" + $stdout.puts "Number of test ssh keys to be deleted: #{test_ssh_key_ids.length}" return if dry_run? delete_ssh_keys(test_ssh_key_ids) unless test_ssh_key_ids.empty? - STDOUT.puts "\nDone" + $stdout.puts "\nDone" end private @@ -50,7 +50,7 @@ def run alias_method :dry_run?, :dry_run def delete_ssh_keys(ssh_key_ids) - STDOUT.puts "Deleting #{ssh_key_ids.length} ssh keys..." + $stdout.puts "Deleting #{ssh_key_ids.length} ssh keys..." ssh_key_ids.each do |key_id| delete_response = delete Runtime::API::Request.new(@api_client, "/user/keys/#{key_id}").url dot_or_f = delete_response.code == 204 ? "\e[32m.\e[0m" : "\e[31mF\e[0m" diff --git a/qa/qa/tools/generate_perf_testdata.rb b/qa/qa/tools/generate_perf_testdata.rb index 546f7e7cdca1b..ec1aa20c3b8c8 100644 --- a/qa/qa/tools/generate_perf_testdata.rb +++ b/qa/qa/tools/generate_perf_testdata.rb @@ -26,7 +26,7 @@ def initialize end def all - STDOUT.puts 'Running...' + $stdout.puts 'Running...' group_id = create_group create_project(group_id) @@ -50,23 +50,23 @@ def all end threads_arr.each(&:join) - STDOUT.puts "\nURLs: #{@urls}" + $stdout.puts "\nURLs: #{@urls}" File.open("urls.yml", "w") { |file| file.puts @urls.stringify_keys.to_yaml } - STDOUT.puts "\nDone" + $stdout.puts "\nDone" end def create_group group_search_response = create_a_group_api_req(@group_name, @visibility) group = JSON.parse(group_search_response.body) @urls[:group_page] = group["web_url"] - STDOUT.puts "Created a group: #{@urls[:group_page]}" + $stdout.puts "Created a group: #{@urls[:group_page]}" group["id"] end def create_project(group_id) create_project_response = create_a_project_api_req(@project_name, group_id, @visibility) @urls[:project_page] = JSON.parse(create_project_response.body)["web_url"] - STDOUT.puts "Created a project: #{@urls[:project_page]}" + $stdout.puts "Created a project: #{@urls[:project_page]}" end def create_many_issues @@ -74,7 +74,7 @@ def create_many_issues create_an_issue_api_req("#{@group_name}%2F#{@project_name}", "issue#{i}", "desc#{i}") end @urls[:issues_list_page] = @urls[:project_page] + "/issues" - STDOUT.puts "Created many issues: #{@urls[:issues_list_page]}" + $stdout.puts "Created many issues: #{@urls[:issues_list_page]}" end def create_many_todos @@ -82,7 +82,7 @@ def create_many_todos create_a_todo_api_req("#{@group_name}%2F#{@project_name}", "#{i + 1}") end @urls[:todos_page] = ENV['GITLAB_ADDRESS'] + "/dashboard/todos" - STDOUT.puts "Created many todos: #{@urls[:todos_page]}" + $stdout.puts "Created many todos: #{@urls[:todos_page]}" end def create_many_labels @@ -90,7 +90,7 @@ def create_many_labels create_a_label_api_req("#{@group_name}%2F#{@project_name}", "label#{i}", "#{Faker::Color.hex_color}") end @urls[:labels_page] = @urls[:project_page] + "/labels" - STDOUT.puts "Created many labels: #{@urls[:labels_page]}" + $stdout.puts "Created many labels: #{@urls[:labels_page]}" end def create_many_merge_requests @@ -98,7 +98,7 @@ def create_many_merge_requests create_a_merge_request_api_req("#{@group_name}%2F#{@project_name}", "branch#{i}", Runtime::Env.default_branch, "MR#{i}") end @urls[:mr_list_page] = @urls[:project_page] + "/merge_requests" - STDOUT.puts "Created many MRs: #{@urls[:mr_list_page]}" + $stdout.puts "Created many MRs: #{@urls[:mr_list_page]}" end def create_many_new_files @@ -109,7 +109,7 @@ def create_many_new_files end @urls[:files_page] = @urls[:project_page] + "/tree/#{Runtime::Env.default_branch}" - STDOUT.puts "Added many new files: #{@urls[:files_page]}" + $stdout.puts "Added many new files: #{@urls[:files_page]}" end def create_many_branches @@ -117,7 +117,7 @@ def create_many_branches create_a_branch_api_req("branch#{i}", "#{@group_name}%2F#{@project_name}") end @urls[:branches_page] = @urls[:project_page] + "/-/branches" - STDOUT.puts "Created many branches: #{@urls[:branches_page]}" + $stdout.puts "Created many branches: #{@urls[:branches_page]}" end def create_an_issue_with_many_discussions @@ -130,7 +130,7 @@ def create_an_issue_with_many_discussions # Add description and labels update_an_issue_api_req("#{@group_name}%2F#{@project_name}", issue_id, "#{Faker::Lorem.sentences(500).join(" ")}", labels_list) @urls[:large_issue] = @urls[:project_page] + "/issues/#{issue_id}" - STDOUT.puts "Created an issue with many discussions: #{@urls[:large_issue]}" + $stdout.puts "Created an issue with many discussions: #{@urls[:large_issue]}" end def create_an_mr_with_large_files_and_many_mr_discussions @@ -178,7 +178,7 @@ def create_an_mr_with_large_files_and_many_mr_discussions create_a_discussion_on_mr_api_req("#{@group_name}%2F#{@project_name}", iid, "Let us discuss") end @urls[:large_mr] = JSON.parse(create_mr_response.body)["web_url"] - STDOUT.puts "Created an MR with many discussions and many very large Files: #{@urls[:large_mr]}" + $stdout.puts "Created an MR with many discussions and many very large Files: #{@urls[:large_mr]}" end def create_diff_note(iid, file_count, line_count, head_sha, start_sha, base_sha, line_type) @@ -205,7 +205,7 @@ def create_mr_with_many_commits 100.times do |i| update_file_api_req(file_name, branch_name, project_path, Faker::Lorem.sentences(5).join(" "), Faker::Lorem.sentences(500).join("\n")) end - STDOUT.puts "Using branch: #{branch_name}, created an MR with many commits: #{@urls[:mr_with_many_commits]}" + $stdout.puts "Using branch: #{branch_name}, created an MR with many commits: #{@urls[:mr_with_many_commits]}" end private diff --git a/qa/qa/tools/revoke_all_personal_access_tokens.rb b/qa/qa/tools/revoke_all_personal_access_tokens.rb index 63a7b0d2d8e51..c0a1697fa165d 100644 --- a/qa/qa/tools/revoke_all_personal_access_tokens.rb +++ b/qa/qa/tools/revoke_all_personal_access_tokens.rb @@ -12,7 +12,7 @@ class RevokeAllPersonalAccessTokens def run do_run rescue Net::ReadTimeout - STDOUT.puts 'Net::ReadTimeout during run. Trying again' + $stdout.puts 'Net::ReadTimeout during run. Trying again' run end @@ -23,7 +23,7 @@ def do_run raise ArgumentError, "Please provide GITLAB_PASSWORD" unless ENV['GITLAB_PASSWORD'] raise ArgumentError, "Please provide GITLAB_ADDRESS" unless ENV['GITLAB_ADDRESS'] - STDOUT.puts 'Running...' + $stdout.puts 'Running...' Runtime::Browser.visit(ENV['GITLAB_ADDRESS'], Page::Main::Login) Page::Main::Login.perform(&:sign_in_using_credentials) diff --git a/scripts/trigger-build b/scripts/trigger-build index 5758db88b7c38..23c9ebbe294b6 100755 --- a/scripts/trigger-build +++ b/scripts/trigger-build @@ -419,7 +419,7 @@ module Trigger raise "#{self.class.unscoped_class_name} did not succeed!" end - STDOUT.flush + $stdout.flush end raise "#{self.class.unscoped_class_name} timed out after waiting for #{duration} minutes!" diff --git a/spec/lib/gitlab/file_hook_spec.rb b/spec/lib/gitlab/file_hook_spec.rb index 7f40d9ae7720c..4fc55f7ad7e6e 100644 --- a/spec/lib/gitlab/file_hook_spec.rb +++ b/spec/lib/gitlab/file_hook_spec.rb @@ -9,7 +9,7 @@ let(:file_hook_source) do <<~EOS #!/usr/bin/env ruby - x = STDIN.read + x = $stdin.read File.write('#{tmp_file.path}', x) EOS end diff --git a/spec/lib/gitlab/profiler_spec.rb b/spec/lib/gitlab/profiler_spec.rb index 48e2a2e979435..5187c96b511cb 100644 --- a/spec/lib/gitlab/profiler_spec.rb +++ b/spec/lib/gitlab/profiler_spec.rb @@ -206,8 +206,12 @@ end end - before do - stub_const('STDOUT', stdout) + around do |example| + original_stdout = $stdout + + $stdout = stdout # rubocop: disable RSpec/ExpectOutput + example.run + $stdout = original_stdout # rubocop: disable RSpec/ExpectOutput end it 'prints a profile result sorted by total time' do diff --git a/spec/lib/gitlab/utils/measuring_spec.rb b/spec/lib/gitlab/utils/measuring_spec.rb index 4931ebf26f04e..5dad79b1c5fea 100644 --- a/spec/lib/gitlab/utils/measuring_spec.rb +++ b/spec/lib/gitlab/utils/measuring_spec.rb @@ -8,7 +8,7 @@ let(:result) { "result" } before do - allow(ActiveSupport::Logger).to receive(:logger_outputs_to?).with(Gitlab::Utils::Measuring.logger, STDOUT).and_return(false) + allow(ActiveSupport::Logger).to receive(:logger_outputs_to?).with(Gitlab::Utils::Measuring.logger, $stdout).and_return(false) end let(:measurement) { described_class.new(base_log_data) } diff --git a/spec/support/helpers/gitaly_setup.rb b/spec/support/helpers/gitaly_setup.rb index 2ce4bcfa94314..5cfd03ecea8e1 100644 --- a/spec/support/helpers/gitaly_setup.rb +++ b/spec/support/helpers/gitaly_setup.rb @@ -15,7 +15,7 @@ module GitalySetup default_name = ENV['CI'] ? 'DEBUG' : 'WARN' level_name = ENV['GITLAB_TESTING_LOG_LEVEL']&.upcase level = Logger.const_get(level_name || default_name, true) # rubocop: disable Gitlab/ConstGetInheritFalse - Logger.new(STDOUT, level: level, formatter: ->(_, _, _, msg) { msg }) + Logger.new($stdout, level: level, formatter: ->(_, _, _, msg) { msg }) end def tmp_tests_gitaly_dir @@ -153,7 +153,7 @@ def check_gitaly_config! end LOGGER.debug "Checking gitaly-ruby bundle...\n" - out = ENV['CI'] ? STDOUT : '/dev/null' + out = ENV['CI'] ? $stdout : '/dev/null' abort 'bundle check failed' unless system(env, 'bundle', 'check', out: out, chdir: File.dirname(gemfile)) end diff --git a/spec/tasks/gitlab/ldap_rake_spec.rb b/spec/tasks/gitlab/ldap_rake_spec.rb index 5286cd98944f0..bc623119639a4 100644 --- a/spec/tasks/gitlab/ldap_rake_spec.rb +++ b/spec/tasks/gitlab/ldap_rake_spec.rb @@ -93,8 +93,8 @@ describe 'write' do before do - allow(STDIN).to receive(:tty?).and_return(false) - allow(STDIN).to receive(:read).and_return('testvalue') + allow($stdin).to receive(:tty?).and_return(false) + allow($stdin).to receive(:read).and_return('testvalue') end it 'creates encrypted file from stdin' do diff --git a/spec/tasks/gitlab/terraform/migrate_rake_spec.rb b/spec/tasks/gitlab/terraform/migrate_rake_spec.rb index 4188521df8e3e..e4447a3e4a394 100644 --- a/spec/tasks/gitlab/terraform/migrate_rake_spec.rb +++ b/spec/tasks/gitlab/terraform/migrate_rake_spec.rb @@ -13,7 +13,7 @@ end before do - allow(Logger).to receive(:new).with(STDOUT).and_return(logger) + allow(Logger).to receive(:new).with($stdout).and_return(logger) end describe 'gitlab:terraform_states:migrate' do -- GitLab