### Description

Make resources in KubernetesPodOperator as templated. We need to modify this during several runs and it needs code change for each run.

### Use case/motivation

For running CPU and memory intensive workloads, we want to continuously optimise the "limt_cpu" and "limit_memory" parameters. Hence, we want to provide these parameters as a part of the pipeline definition.

### Related issues

_No response_

### Are you willing to submit a PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

dag = DAG(dag_id="this_is_a_dag_name", start_date=pendulum.now())
        k = KubernetesPodOperator(
            task_id="a_very_reasonable_task_name",
            dag=dag,
        )
        pod = k.build_pod_request_obj({})
        assert re.match(r"a-very-reasonable-task-name-[a-z0-9-]+", pod.metadata.name) is not None
def test__suppress(caplog):
    with _suppress(ValueError):
        raise ValueError("failure")
    assert "ValueError: failure" in caplog.text
@pytest.mark.parametrize(
    "val, expected",
    [
        ("task-id", "task-id"),  
        ("task_id", "task-id"),  
        ("task.id", "task.id"),  
        (".task.id", "0.task.id"),  
        ("-90Abc*&", "0-90abc--0"),  
        ("90AçLbˆˆç˙ßß˜˜˙c*a", "90a-lb---------c-a"),  # weird unicode
    ],
)
def test_task_id_to_pod_name(val, expected):
    assert _task_id_to_pod_name(val) == expected
def test_task_id_to_pod_name_long():
    with pytest.raises(ValueError, match="longer than 253"):
        _task_id_to_pod_name("0" * 254)