def create(*args)
      arguments(args, required: [:user, :repo, :sha]) do
        permit VALID_STATUS_PARAM_NAMES, recursive: false
        assert_required REQUIRED_PARAMS
      end

      post_request("/repos/#{arguments.user}/#{arguments.repo}/statuses/#{arguments.sha}", arguments.params)
    end
def create(*args)
      arguments(args, required: [:user, :repo, :sha]) do
        permit VALID_STATUS_PARAM_NAMES, recursive: false
        assert_required REQUIRED_PARAMS
      end

      post_request("/repos/#{arguments.user}/#{arguments.repo}/statuses/#{arguments.sha}", arguments.params)
    end
Create a status

 @param [Hash] params
 @input params [String] :state
   Required. The state of the status. Can be one of pending,
   success, error, or failure.
 @input params [String] :target_url
   The target URL to associate with this status. This URL will
   be linked from the GitHub UI to allow users to easily see
   the ‘source’ of the Status.

   For example, if your Continuous Integration system is posting
   build status, you would want to provide the deep link for
   the build output for this specific SHA:
   http://ci.example.com/user/repo/build/sha.
 @input params [String] :description
   A short description of the status
 @input params [String] :context
   A string label to differentiate this status from the
   status of other systems. Default: "default"

 @example
   github = Github.new
   github.repos.statuses.create 'user-name', 'repo-name', 'sha',
     state:  "success",
     target_url: "http://ci.example.com/johndoe/my-repo/builds/sha",
     description: "Successful build #3 from origin/master"

 @api public