ADD: Cron job arg creation
This commit is contained in:
parent
f4b2d86389
commit
b28dfbc12e
1 changed files with 17 additions and 0 deletions
|
@ -84,6 +84,23 @@ def create_config_file(dest: Path):
|
||||||
# Write configuration file
|
# Write configuration file
|
||||||
TOMLFile(dest).write(conf)
|
TOMLFile(dest).write(conf)
|
||||||
|
|
||||||
|
def create_cron_job(cron_job: str, config_file: Path):
|
||||||
|
# Check if the script exists and its executable
|
||||||
|
if not shutil.which(__package__):
|
||||||
|
print(
|
||||||
|
f"No executable found, please add this to your crontab manually: '/path/to/adgroupsync --conf {config_file} >/dev/null 2>&1'"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Checking if the string is valid
|
||||||
|
if not CronSlices.is_valid(cron_job):
|
||||||
|
raise Exception(f"Cron job '{cron_job}' is not valid.")
|
||||||
|
|
||||||
|
# Creating the cron job
|
||||||
|
cron = CronTab(user=True)
|
||||||
|
job = cron.new(command=f"adgroupsync --conf {config_file} >/dev/null 2>&1")
|
||||||
|
job.setall(cron_job)
|
||||||
|
cron.write()
|
||||||
|
|
||||||
# Assign environment variables or configuration file values
|
# Assign environment variables or configuration file values
|
||||||
AD_DOMAIN = os.getenv("AD_DOMAIN")
|
AD_DOMAIN = os.getenv("AD_DOMAIN")
|
||||||
AD_USER_NAME = os.getenv("AD_USER")
|
AD_USER_NAME = os.getenv("AD_USER")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue