ujamii/update-cronjobs 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ujamii/update-cronjobs

Composer 安装命令:

composer require ujamii/update-cronjobs

包简介

Bash script to update the cronjobs of the current project (and only those)

README 文档

README

Bash script to update the cronjobs of the current project and only those.
update-cronjobs.sh takes cronjobs via the standard input in normal crontab format and puts them in a special block without touching the already existing cronjobs in the cron file.

This allows you to build a script to automatically update your project cronjobs on deployment.
If you are not the one deploying your application, you can just pass the system admin the name of the script to execute to setup your cronjobs instead of having to tell him every single line that you want in your cronjobs file.

If you put the script to update your cronjobs into your projects git / svn repository, you also suddenly have your cronjobs, including the time they should be executed, in version control, without installing big cron-like-behaviour bundles for your framework / cms.

Setup with composer:

composer require ujamii/update-cronjobs

Add a scripts/setupCronjobs.sh to your project:

#!/usr/bin/env bash

PROJECT_ROOT=$(cd $(dirname $0)/..; pwd -P)
CRONJOBS_NAME='My great project'

${PROJECT_ROOT}/vendor/ujamii/update-cronjobs/update-cronjobs.sh "${CRONJOBS_NAME}" $1 <<-EOF
	@daily      ${PROJECT_ROOT}/bin/console daily-cronjob-example

	# Send mails every 5 minutes
	*/5 * * * * ${PROJECT_ROOT}/bin/console sendmails

	# ... Your other cronjobs ...
EOF

Now you can run ./scripts/setupCronjobs.sh to update your project cronjobs without touching the other cronjobs already in the crontab.

This will result in the following crontab:

#---- My great project cronjobs start here ----#
@daily      bin/console daily-cronjob-example

# Send mails every 5 minutes
*/5 * * * * bin/console sendmails

# ... Your other cronjobs ...
#---- My great project cronjobs end here ------#

To remove the whole block again, including the start and end markers, call ./scripts/setupCronjobs.sh -r
This again won't affect the other cronjobs in the crontab and just remove the project block.

统计信息

  • 总下载量: 24
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: Shell

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-02-18

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固