Filebeat setup is not idempotent

According to Filebeat documentation : "the setup command loads the recommended index template for writing to Elasticsearch and deploys the sample dashboards (if available) for visualizing the data in Kibana. This is a one-time setup step."

From a Devops perspective, it looks like the command 'filebeat setup' is not idempotent i.e. the whole setup is rerun each time.

Is there a way to check if index and dashboard are already setup in order to decide to run filebeat setup or not ?

Thanks for your support.
Best Regards.

As a a workaround, I do now load the dashboard by enabling the setup.dashboards section of the metricbeat.yml config file.
This way, the loading is idempotent unlike the CLI setup command.