Jenkins: how to run task every 30 days
In short, it's not practically possible. This S/O answer is quite detailed.

Jenkins used a cron
expression, and
the different fields are:
MINUTES Minutes in one hour (0-59)
HOURS Hours in one day (0-23)
DAYMONTH Day in a month (1-31)
MONTH Month in a year (1-12)
DAYWEEK Day of the week (0-7) where 0 and 7 are sunday


cron syntax simply does not support every n days.
An impractical option wuld be to have a daily job with a Conditional BuildStep to calculate if this day is n × 30 days from a given fixed day and abort if not..
But every 30 days doesn't really align w/calendar anyways, so is that really the intent?