### Body

The CLI:

`airflow variables set [-h] [-j] [-v] key VALUE`

https://airflow.apache.org/docs/apache-airflow/stable/cli-and-env-variables-ref.html#set_repeat1

Doesn't support adding description though column exists and we support it from Rest API:
https://airflow.apache.org/docs/apache-airflow/stable/stable-rest-api-ref.html#operation/post_variables

**The Task:**

Allow to set description from cli command

### Committer

- [X] I acknowledge that I am a maintainer/committer of the Apache Airflow project.
assert {"foo": "oops"} == Variable.get("dict", deserialize_json=True)
        assert ["oops"] == Variable.get("list", deserialize_json=True)
        assert "hello string" == Variable.get("str")  
        assert 42 == Variable.get("int", deserialize_json=True)
        assert 42.0 == Variable.get("float", deserialize_json=True)
        assert Variable.get("true", deserialize_json=True) is True
        assert Variable.get("false", deserialize_json=True) is False
        assert Variable.get("null", deserialize_json=True) is None
        
        
        variable_command.variables_set(self.parser.parse_args(["variables", "set", "list", '["airflow"]']))
        variable_command.variables_import(
            self.parser.parse_args(
                ["variables", "import", "variables_types.json", "--action-on-existing-key", "skip"]
            )
        )
        assert ["airflow"] == Variable.get("list", deserialize_json=True)  
        
        with pytest.raises(SystemExit):
            variable_command.variables_import(
                self.parser.parse_args(
                    ["variables", "import", "variables_types.json", "--action-on-existing-key", "fail"]
                )
            )
        os.remove("variables_types.json")
    def test_variables_list(self):
        """Test variable_list command"""
        
        variable_command.variables_list(self.parser.parse_args(["variables", "list"]))
    def test_variables_delete(self):