# frozen_string_literal: true

class AnsibleTowerClient::Api::V2::Project < AnsibleTowerClient::BaseModel
  schema do
    attribute :id, :integer
    attribute :type, :choice
    attribute :url, :string
    attribute :related, :object
    attribute :summary_fields, :object
    attribute :created, :datetime
    attribute :modified, :datetime
    attribute :name, :string
    attribute :description, :string
    attribute :local_path, :string
    attribute :scm_type, :choice
    attribute :scm_url, :string
    attribute :scm_branch, :string
    attribute :scm_clean, :boolean
    attribute :scm_delete_on_update, :boolean
    attribute :credential, :integer
    attribute :timeout, :integer
    attribute :last_job_run, :datetime
    attribute :last_job_failed, :boolean
    attribute :next_job_run, :datetime
    attribute :status, :choice
    attribute :organization, :field
    attribute :scm_update_on_launch, :boolean
    attribute :scm_update_cache_timeout, :integer
    attribute :scm_revision, :string
    attribute :custom_virtualenv, :string
    attribute :last_update_failed, :boolean
    attribute :last_updated, :datetime
    attribute :username, :string
    attribute :first_name, :string
    attribute :last_name, :string
    attribute :email, :string
    attribute :is_superuser, :boolean
    attribute :is_system_auditor, :boolean
    attribute :ldap_dn, :string
    attribute :external_account, :field
    attribute :timestamp, :datetime
    attribute :operation, :choice
    attribute :changes, :field
    attribute :object1, :string
    attribute :object2, :string
    attribute :object_association, :field
    attribute :notification_type, :choice
    attribute :notification_configuration, :field
    attribute :unified_job_template, :field
    attribute :launch_type, :choice
    attribute :failed, :boolean
    attribute :started, :datetime
    attribute :finished, :datetime
    attribute :elapsed, :decimal
    attribute :job_explanation, :string
    attribute :execution_node, :string
    attribute :project, :field
    attribute :job_type, :choice
    attribute :rrule, :string
    attribute :extra_data, :field
    attribute :inventory, :field
    attribute :job_tags, :string
    attribute :skip_tags, :string
    attribute :limit, :string
    attribute :diff_mode, :boolean
    attribute :verbosity, :choice
    attribute :enabled, :boolean
    attribute :dtstart, :datetime
    attribute :dtend, :datetime
    attribute :next_run, :datetime
    attribute :timezone, :field
    attribute :until, :field
    attribute :source, :choice
    attribute :source_path, :string
    attribute :source_script, :field
    attribute :source_vars, :string
    attribute :source_regions, :string
    attribute :instance_filters, :string
    attribute :group_by, :string
    attribute :overwrite, :boolean
    attribute :overwrite_vars, :boolean
    attribute :update_on_launch, :boolean
    attribute :update_cache_timeout, :integer
    attribute :source_project, :field
    attribute :update_on_project_update, :boolean
    attribute :group, :field
  end
end
