403Webshell
Server IP : 188.151.22.197  /  Your IP : 216.73.217.74
Web Server : Apache/2.4.62 (Rocky Linux) OpenSSL/3.5.5
System : Linux wsten.se 5.14.0-687.30.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Jul 27 13:09:21 UTC 2026 x86_64
User : apache ( 48)
PHP Version : 8.1.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /opt/gitlab/embedded/service/gitlab-rails/scripts/database/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/gitlab/embedded/service/gitlab-rails/scripts/database/schema_validator.rb
# frozen_string_literal: true

require_relative '../migration_schema_validator'

class SchemaValidator < MigrationSchemaValidator
  ALLOW_SCHEMA_CHANGES = 'ALLOW_SCHEMA_CHANGES'
  COMMIT_MESSAGE_SKIP_TAG = 'skip-db-structure-check'

  def validate!
    return if should_skip?

    return if schema_changes.empty?

    die "#{FILENAME} was changed, and no migrations were added:\n#{schema_changes}" if committed_migrations.empty?
  end

  private

  def schema_changes
    @schema_changes ||= run("git diff #{diff_target} HEAD -- #{FILENAME}")
  end

  def should_skip?
    skip_env_present? || skip_commit_present?
  end

  def skip_env_present?
    !ENV[ALLOW_SCHEMA_CHANGES].to_s.empty?
  end

  def skip_commit_present?
    run("git show -s --format=%B -n 1").to_s.include?(COMMIT_MESSAGE_SKIP_TAG)
  end
end

Youez - 2016 - github.com/yon3zu
LinuXploit