Sha256: 57254d78001bfcf7f8170e2ec8d3b8ea5281262743d91a1e2470654fe477c612

Contents?: true

Size: 1.28 KB

Versions: 61

Compression:

Stored size: 1.28 KB

Contents

module Mutations
  module AnsibleVariableOverrides
    class Delete < ::Mutations::DeleteMutation
      graphql_name 'DeleteAnsibleVariableOverride'
      description 'Deletes Ansible Variable Override'

      resource_class LookupValue

      argument :host_id, Int, required: true
      argument :variable_id, Int, required: true

      field :overriden_ansible_variable, ::Types::OverridenAnsibleVariable, :null => true

      def resolve(id:, host_id:, variable_id:)
        host = Host.find_by :id => host_id
        variable = AnsibleVariable.find_by :id => variable_id
        return resource_not_found(_('Host not found by id: %s'), host_id) unless host
        return resource_not_found(_('Ansible Variable not found by id: %s'), variable_id) unless variable
        authorize!(host, :view)
        authorize!(variable, :edit)

        result = super id: id
        resolver = ::ForemanAnsible::OverrideResolver.new(host, [variable.id])
        result.merge :overriden_ansible_variable => ::Presenters::OverridenAnsibleVariablePresenter.new(variable, resolver)
      end

      def resource_not_found(message)
        {
          :overriden_ansible_variable => nil,
          :errros => [{
            :path => ['base'],
            :message => message
          }]
        }
      end
    end
  end
end

Version data entries

61 entries across 61 versions & 1 rubygems

Version Path
foreman_ansible-15.0.5 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-15.0.4 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-15.0.3 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-15.0.2 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-15.0.1 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-15.0.0 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-14.2.2 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-14.2.1 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.7 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-14.2.0 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-14.1.1 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-14.1.0 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.5 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-14.0.0 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.4 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.3 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.2 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.1 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-13.0.0 app/graphql/mutations/ansible_variable_overrides/delete.rb
foreman_ansible-12.0.7 app/graphql/mutations/ansible_variable_overrides/delete.rb