### Description

The Helm Chart allows setting annotations for the pods created by the `CronJob` [but not the CronJob controller itself](https://github.com/apache/airflow/blob/helm-chart/1.8.0/chart/templates/cleanup/cleanup-cronjob.yaml).

The values file should offer an option to provide custom annotations for the `CronJob` controller, similarly to how the DB migrations job exposes `.Values.migrateDatabaseJob.jobAnnotations` 

In the same fashion, other `Deployment` templates expose custom annotations, but [statsd deployment doesn't](https://github.com/apache/airflow/blob/helm-chart/1.8.0/chart/templates/statsd/statsd-deployment.yaml).

### Use case/motivation

Other tools e.g. ArgoCD may require the use of annotations, for example:
* [ArgoCD Sync Options](https://argo-cd.readthedocs.io/en/stable/user-guide/sync-options)
* [ArgoCD Sync Phases and Waves](https://argo-cd.readthedocs.io/en/stable/user-guide/sync-waves/)

Example use case:
_Set the cleanup CronJob to be synced after the webserver and scheduler deployments have been synced with ArgoCD_

### Related issues

https://github.com/apache/airflow/issues/25446 originally mentioned the issue regarding the StatsD deployment, but the accepted fix was https://github.com/apache/airflow/pull/25732 which allows setting annotations for the pod template, not the `Deployment` itself

### 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)

docs = render_chart(
            show_only=["templates/statsd/statsd-deployment.yaml"],
        )
        assert jmespath.search("spec.template.spec.containers[0].resources", docs[0]) == {}
    def test_statsd_configmap_by_default(self):
        docs = render_chart(show_only=["templates/configmaps/statsd-configmap.yaml"])
        mappings_yml = jmespath.search('data."mappings.yml"', docs[0])
        mappings_yml_obj = yaml.safe_load(mappings_yml)
        assert "airflow_dagrun_dependency_check" == mappings_yml_obj["mappings"][0]["name"]
        assert "airflow_pool_starving_tasks" == mappings_yml_obj["mappings"][-1]["name"]
    def test_statsd_configmap_when_exist_extra_mappings(self):
        extra_mapping = {
            "match": "airflow.pool.queued_slots.*",
            "name": "airflow_pool_queued_slots",
            "labels": {"pool": "$1"},
        }
        docs = render_chart(
            values={"statsd": {"enabled": True, "extraMappings": [extra_mapping]}},
            show_only=["templates/configmaps/statsd-configmap.yaml"],
        )
        mappings_yml = jmespath.search('data."mappings.yml"', docs[0])
        mappings_yml_obj = yaml.safe_load(mappings_yml)
        assert "airflow_dagrun_dependency_check" == mappings_yml_obj["mappings"][0]["name"]
        assert "airflow_pool_queued_slots" == mappings_yml_obj["mappings"][-1]["name"]
    def test_statsd_configmap_when_exist_override_mappings(self):