list

in files/gitlab-cookbooks/package/libraries/deprecations.rb [9:358]


      def list(existing_config = nil)
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        deprecations = [
          {
            config_keys: %w(gitlab postgresql data_dir),
            deprecation: '11.6',
            removal: '14.0', 
            note: "Please see https://docs.gitlab.com/omnibus/settings/database.html#store-postgresql-data-in-a-different-directory for how to use postgresql['dir']"
          },
          {
            config_keys: %w(gitlab sidekiq cluster),
            deprecation: '13.0',
            removal: '14.0', 
            note: "Running sidekiq directly is deprecated. Please see https://docs.gitlab.com/ee/administration/operations/extra_sidekiq_processes.html for how to use sidekiq-cluster."
          },
          {
            config_keys: %w(roles redis-slave enable),
            deprecation: '13.0',
            removal: '14.0', 
            note: 'Use redis_replica_role instead.'
          },
          {
            config_keys: %w(redis client_output_buffer_limit_slave),
            deprecation: '13.0',
            removal: '14.0', 
            note: 'Use client_output_buffer_limit_replica instead'
          },
          {
            config_keys: %w(gitlab gitlab_pages http_proxy),
            deprecation: '13.1',
            removal: '14.0', 
            note: "Set gitlab_pages['env']['http_proxy'] instead. See https://docs.gitlab.com/omnibus/settings/environment-variables.html"
          },
          {
            config_keys: %w(praefect failover_read_only_after_failover),
            deprecation: '13.3',
            removal: '14.0', 
            note: "Read-only mode is repository specific and always enabled after suspected data loss. See https://docs.gitlab.com/ee/administration/gitaly/praefect.html#read-only-mode"
          },
          {
            config_keys: %w(gitlab geo_secondary db_fdw),
            deprecation: '13.3',
            removal: '14.0', 
            note: "Geo does not require Foreign Data Wrapper (FDW) to be configured to replicate data."
          },
          {
            config_keys: %w(gitlab geo_postgresql fdw_external_user),
            deprecation: '13.3',
            removal: '14.0', 
            note: "Geo does not require Foreign Data Wrapper (FDW) to be configured to replicate data."
          },
          {
            config_keys: %w(gitlab geo_postgresql fdw_external_password),
            deprecation: '13.3',
            removal: '14.0', 
            note: "Geo does not require Foreign Data Wrapper (FDW) to be configured to replicate data."
          },
          {
            config_keys: %w(gitlab gitlab_rails extra_piwik_site_id),
            deprecation: '13.7',
            removal: '14.0', 
            note: "Piwik config keys have been renamed to reflect the rebranding to Matomo. Please update gitlab_rails['extra_piwik_site_id'] to gitlab_rails['extra_matomo_site_id']."
          },
          {
            config_keys: %w(gitlab gitlab_rails extra_piwik_url),
            deprecation: '13.7',
            removal: '14.0', 
            note: "Piwik config keys have been renamed to reflect the rebranding to Matomo. Please update gitlab_rails['extra_piwik_url'] to gitlab_rails['extra_matomo_url']."
          },
          {
            config_keys: %w(gitlab sidekiq-cluster experimental_queue_selector),
            deprecation: '13.6',
            removal: '14.0', 
            note: 'The experimental_queue_selector option is now called queue_selector.'
          },
          {
            config_keys: %w(gitlab sidekiq experimental_queue_selector),
            deprecation: '13.6',
            removal: '14.0', 
            note: 'The experimental_queue_selector option is now called queue_selector.'
          },
          {
            config_keys: %w(gitlab gitlab_rails analytics_instance_statistics_count_job_trigger_worker_cron),
            deprecation: '13.10',
            removal: '14.0', 
            note: 'The config have been renamed, use analytics_usage_trends_count_job_trigger_worker_cron option.'
          },
          {
            config_keys: %w(gitlab_pages domain_config_source),
            deprecation: '13.9',
            removal: '14.0', 
            note: "Starting with GitLab 14.0, GitLab Pages only supports API-based configuration. Check https://docs.gitlab.com/ee/administration/pages/#deprecated-domain_config_source for details."
          },
          {
            config_keys: %w(gitlab nginx gzip),
            deprecation: '13.12',
            removal: '14.0', 
            note: "The config has been deprecated. Value for this directive in NGINX configuration will be controlled by `nginx['gzip_enabled']` setting in `/etc/gitlab/gitlab.rb`."
          },
          {
            config_keys: %w(gitlab_pages use_legacy_storage),
            deprecation: '14.0',
            removal: '14.3', 
            note: "This parameter was introduced as a temporary solution in case of unforseen problems with new storage format. It will be removed in 14.3. If you use this parameter, please comment on https://gitlab.com/gitlab-org/gitlab/-/issues/331699"
          },
          {
            config_keys: %w(gitlab_pages daemon-inplace-chroot),
            deprecation: '14.4',
            removal: '15.0',
            note: "Starting with GitLab 14.3, chroot has been removed along with disk-based configuration source. Because of this, the flag is a no-op and can be removed."
          },
          {
            config_keys: %w(praefect database_host_no_proxy),
            deprecation: '14.0',
            removal: '15.0', 
            note: "Use `praefect['database_direct_host']` instead."
          },
          {
            config_keys: %w(praefect database_port_no_proxy),
            deprecation: '14.0',
            removal: '15.0', 
            note: "Use `praefect['database_direct_port']` instead."
          },
          {
            config_keys: %w(gitlab gitlab_shell custom_hooks_dir),
            deprecation: '14.3',
            removal: '15.0', 
            note: "Use `gitaly['custom_hooks_dir']` instead."
          },
          {
            config_keys: %w(gitlab actioncable enable),
            deprecation: '14.5',
            removal: '15.0',
            note: "Starting with GitLab 14.5, Action Cable is enabled all the time. Because of this, the flag is a no-op and can be removed."
          },
          {
            config_keys: %w(gitaly internal_socket_dir),
            deprecation: '14.10',
            removal: '15.0', 
            note: "Use `gitaly['runtime_dir']` instead."
          },
          {
            config_keys: %w(gitlab gitlab_rails object_store connection openstack_username),
            deprecation: '14.9',
            removal: '15.0',
            note: "Update object storage configuration to use S3 API instead of SWIFT."
          },
          {
            config_keys: %w(gitlab gitlab_rails object_store connection rackspace_username),
            deprecation: '14.9',
            removal: '15.0',
            note: "Migrate object storage to another provider other than Rackspace."
          },
          {
            config_keys: %w(gitlab gitlab_rails pseudonymizer_manifest),
            deprecation: '14.7',
            removal: '15.0',
            note: "Starting with GitLab 14.7, Pseudonymizer has been deprecated and will be removed."
          },
          {
            config_keys: %w(gitlab gitlab_rails pseudonymizer_upload_remote_directory),
            deprecation: '14.7',
            removal: '15.0',
            note: "Starting with GitLab 14.7, Pseudonymizer has been deprecated and will be removed."
          },
          {
            config_keys: %w(gitlab gitlab_rails pseudonymizer_upload_connection),
            deprecation: '14.7',
            removal: '15.0',
            note: "Starting with GitLab 14.7, Pseudonymizer has been deprecated and will be removed."
          },
          {
            config_keys: %w(gitlab gitlab_rails pseudonymizer_worker_cron),
            deprecation: '14.7',
            removal: '15.0',
            note: "Starting with GitLab 14.7, Pseudonymizer has been deprecated and will be removed."
          },
          {
            config_keys: %w(gitlab gitlab_shell http_settings self_signed_cert),
            deprecation: '14.8',
            removal: '15.0', 
            note: "Starting with GitLab 14.8, SelfSignedCert has been deprecated and will be removed. Install self-signed certificates into `/etc/gitlab/trusted-certs` instead."
          },
          {
            config_keys: %w(gitlab gitlab_rails artifacts_object_store_direct_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails artifacts_object_store_background_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails external_diffs_object_store_direct_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails external_diffs_object_store_background_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails lfs_object_store_direct_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails lfs_object_store_background_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails uploads_object_store_direct_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails uploads_object_store_background_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails packages_object_store_direct_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails packages_object_store_background_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails dependency_proxy_object_store_direct_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitlab gitlab_rails dependency_proxy_object_store_background_upload),
            deprecation: '14.9',
            removal: '15.0',
            note: "Starting with GitLab 15.0, only direct uploads will be permitted deprecating this configuration key."
          },
          {
            config_keys: %w(gitaly cgroups_count),
            deprecation: '15.1',
            removal: '16.0', 
            note: "Use `gitaly['cgroups_repositories_count']` instead."
          },
          {
            config_keys: %w(gitaly cgroups_memory_enabled),
            deprecation: '15.1',
            removal: '16.0', 
            note: "Use `gitaly['cgroups_memory_bytes'] or gitaly['cgroups_repositories_memory_bytes'] instead."
          },
          {
            config_keys: %w(gitaly cgroups_memory_limit),
            deprecation: '15.1',
            removal: '16.0', 
            note: "Use `gitaly['cgroups_memory_bytes'] or gitaly['cgroups_repositories_memory_bytes'] instead."
          },
          {
            config_keys: %w(gitaly cgroups_cpu_enabled),
            deprecation: '15.1',
            removal: '16.0', 
            note: "Use `gitaly['cgroups_cpu_shares'] or gitaly['cgroups_repositories_cpu_shares'] instead."
          },
          {
            config_keys: %w(gitaly ruby_rugged_git_config_search_path),
            deprecation: '15.1',
            removal: '15.1',
            note: "Starting with GitLab 15.1, Rugged does not read the Git configuration anymore. Instead, Gitaly knows to configure Rugged as required."
          },
          {
            config_keys: %w(praefect separate_database_metrics),
            deprecation: '15.5',
            removal: '16.0', 
            note: "Starting with GitLab 16.0, Praefect DB metrics will no longer be available on `/metrics` and must be scraped from `/db_metrics`."
          },
          {
            config_keys: %w(gitlab gitlab_rails enable_jemalloc),
            deprecation: '15.5',
            removal: '15.5',
            note: "Starting with GitLab 15.5, jemalloc is compiled in with the Ruby interpreter and can no longer be disabled."
          },
          {
            config_keys: %w(gitlab omnibus_gitconfig),
            deprecation: '16.10',
            removal: '17.0',
            note: "`omnibus_gitconfig` will be removed in GitLab 17.0. For details and migration instructions, please see: https://docs.gitlab.com/ee/update/versions/gitlab_16_changes.html#gitlabomnibus_gitconfig-deprecation"
          },
          {
            config_keys: %w(registry default_notifications_threshold),
            deprecation: '17.1',
            removal: '18.0',
            note: "`registry['default_notifications_threshold'] will be removed in 18.0. Please use `default_notifications_maxretries` instead https://gitlab.com/gitlab-org/container-registry/-/issues/1243."
          },
          {
            config_keys: %w(gitlab gitlab_shell migration),
            deprecation: '17.4',
            removal: '18.0',
            note: "`gitlab_shell['migration'] will be ignored from 17.3 and removed in 18.0. See https://gitlab.com/groups/gitlab-org/-/epics/14845."
          },
        ]

        deprecations += praefect_legacy_configuration_deprecations
        deprecations += gitaly_legacy_configuration_deprecations
        deprecations += gitaly_ruby_deprecations

        deprecations += identify_deprecated_config(existing_config, ['gitlab', 'unicorn'], ['enable', 'svlogd_prefix'], "13.10", "14.0", "Starting with GitLab 14.0, Unicorn is no longer supported and users must switch to Puma, following https://docs.gitlab.com/ee/administration/operations/puma.html.")
        deprecations += identify_deprecated_config(existing_config, ['repmgr'], ['enable'], "13.3", "14.0", "Starting with GitLab 14.0, Repmgr is no longer supported and users must switch to Patroni, following https://docs.gitlab.com/ee/administration/postgresql/replication_and_failover.html#switching-from-repmgr-to-patroni.")
        deprecations += identify_deprecated_config(existing_config, ['repmgrd'], ['enable'], "13.3", "14.0", "Starting with GitLab 14.0, Repmgr is no longer supported and users must switch to Patroni, following https://docs.gitlab.com/ee/administration/postgresql/replication_and_failover.html#switching-from-repmgr-to-patroni.")

        deprecations
      end