An open API service indexing awesome lists of open source software.

https://github.com/loeffel-io/cronjob

Simple package to setup some cronjobs
https://github.com/loeffel-io/cronjob

cronjob cronjob-scheduler golang

Last synced: about 2 months ago
JSON representation

Simple package to setup some cronjobs

Awesome Lists containing this project

README

        

# Cronjobs

[![GoDoc](https://godoc.org/github.com/loeffel-io/cronjob?status.svg)](https://godoc.org/github.com/loeffel-io/cronjob)
[![Go Report Card](https://goreportcard.com/badge/github.com/loeffel-io/cronjob)](https://goreportcard.com/report/github.com/loeffel-io/cronjob)
[![GitHub license](https://img.shields.io/github/license/Naereen/StrapDown.js.svg)](https://github.com/Naereen/StrapDown.js/blob/master/LICENSE)

Simple package to setup some cronjobs based on [gopkg.in/robfig/cron.v2](https://godoc.org/gopkg.in/robfig/cron.v2)

### Useful links

- [CRON Expression Format](https://godoc.org/gopkg.in/robfig/cron.v2#hdr-CRON_Expression_Format)
- [crontab.guru](https://crontab.guru)

### Example (single cronjobs)

```go
package main

import (
"github.com/loeffel-io/cronjob"
"log"
)

func main() {
testCronjob := cronjob.Cronjob{
Interval: "0 */1 * * * *", // @every 1m
Call: func() {
log.Println("cronjob is running ..")
},
}

if _, err := testCronjob.Start(); err != nil {
log.Fatal(err)
}
}

```

### Example (multiple cronjobs)

```go
package main

import (
"log"
"time"
"github.com/loeffel-io/cronjob"
)

// Cronjobs config
var cronjobs = cronjob.Cronjobs{
Cronjobs: []cronjob.Cronjob{
{
Interval: "0 */1 * * * *", // @every 1m
Call: func() {
log.Println("cronjob is running ..")
},
},
{
Interval: "0 */3 * * * *", // @every 3m
Call: func() {
log.Println("cronjob is running ..")
},
},
},
}

func init() {
// Setup cronjobs
cronjob.Setup(cronjobs)
}
```