Skip to content

Commit

Permalink
feature(source cronjobs): Implementation of CronJobSource management
Browse files Browse the repository at this point in the history
Contains create/delete/update/describe but not tests yet.

Still todo:

* Think how to provide a namespace for the sink
* Support for more sinks
* Synchronous mode for create & update
* Add list (or implement "source list")
  • Loading branch information
rhuss committed Dec 11, 2019
1 parent b9dadf6 commit 26ac06c
Show file tree
Hide file tree
Showing 26 changed files with 945 additions and 90 deletions.
2 changes: 1 addition & 1 deletion docs/cmd/kn.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,6 @@ Manage your Knative building blocks:
* [kn revision](kn_revision.md) - Revision command group
* [kn route](kn_route.md) - Route command group
* [kn service](kn_service.md) - Service command group
* [kn source](kn_source.md) - Event Source command group
* [kn source](kn_source.md) - Event source command group
* [kn version](kn_version.md) - Prints the client version

5 changes: 3 additions & 2 deletions docs/cmd/kn_source.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
## kn source

Event Source command group
Event source command group

### Synopsis

Event Source command group
Event source command group

```
kn source [flags]
Expand All @@ -28,5 +28,6 @@ kn source [flags]

* [kn](kn.md) - Knative client
* [kn source apiserver](kn_source_apiserver.md) - Kubernetes API Server Event Source command group
* [kn source cronjob](kn_source_cronjob.md) - Cronjob source command group
* [kn source list-types](kn_source_list-types.md) - List available source types

2 changes: 1 addition & 1 deletion docs/cmd/kn_source_apiserver.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ kn source apiserver [flags]

### SEE ALSO

* [kn source](kn_source.md) - Event Source command group
* [kn source](kn_source.md) - Event source command group
* [kn source apiserver create](kn_source_apiserver_create.md) - Create an ApiServerSource, which watches for Kubernetes events and forwards them to a sink
* [kn source apiserver delete](kn_source_apiserver_delete.md) - Delete an ApiServerSource.

34 changes: 34 additions & 0 deletions docs/cmd/kn_source_cronjob.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
## kn source cronjob

Cronjob source command group

### Synopsis

Cronjob source command group

```
kn source cronjob [flags]
```

### Options

```
-h, --help help for cronjob
```

### Options inherited from parent commands

```
--config string kn config file (default is $HOME/.kn/config.yaml)
--kubeconfig string kubectl config file (default is $HOME/.kube/config)
--log-http log http traffic
```

### SEE ALSO

* [kn source](kn_source.md) - Event source command group
* [kn source cronjob create](kn_source_cronjob_create.md) - Create a Cronjob source.
* [kn source cronjob delete](kn_source_cronjob_delete.md) - Delete a Cronjob source.
* [kn source cronjob describe](kn_source_cronjob_describe.md) - Describe a Cronjob source.
* [kn source cronjob update](kn_source_cronjob_update.md) - Update a Cronjob source.

42 changes: 42 additions & 0 deletions docs/cmd/kn_source_cronjob_create.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
## kn source cronjob create

Create a Cronjob source.

### Synopsis

Create a Cronjob source.

```
kn source cronjob create NAME --schedule SCHEDULE --sink SINK --data DATA [flags]
```

### Examples

```
# Create a crontab scheduler 'my-cron-trigger' which fires every minute and sends 'ping' to service 'mysvc' as a cloudevent
kn source cronjob create my-cron-trigger --schedule "* * * * */1" --data "ping" --sink svc:mysvc
```

### Options

```
-d, --data string String data to send
-h, --help help for create
-n, --namespace string Specify the namespace to operate in.
--schedule string Schedule specification in crontab format (e.g. '* * * * */2' for every two minutes
-s, --sink string Addressable sink for events
```

### Options inherited from parent commands

```
--config string kn config file (default is $HOME/.kn/config.yaml)
--kubeconfig string kubectl config file (default is $HOME/.kube/config)
--log-http log http traffic
```

### SEE ALSO

* [kn source cronjob](kn_source_cronjob.md) - Cronjob source command group

39 changes: 39 additions & 0 deletions docs/cmd/kn_source_cronjob_delete.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
## kn source cronjob delete

Delete a Cronjob source.

### Synopsis

Delete a Cronjob source.

```
kn source cronjob delete NAME [flags]
```

### Examples

```
# Delete a CronJob source 'my-cron-trigger'
kn source cronjob delete my-cron-trigger
```

### Options

```
-h, --help help for delete
-n, --namespace string Specify the namespace to operate in.
```

### Options inherited from parent commands

```
--config string kn config file (default is $HOME/.kn/config.yaml)
--kubeconfig string kubectl config file (default is $HOME/.kube/config)
--log-http log http traffic
```

### SEE ALSO

* [kn source cronjob](kn_source_cronjob.md) - Cronjob source command group

40 changes: 40 additions & 0 deletions docs/cmd/kn_source_cronjob_describe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
## kn source cronjob describe

Describe a Cronjob source.

### Synopsis

Describe a Cronjob source.

```
kn source cronjob describe NAME [flags]
```

### Examples

```
# Describe a cronjob source with name 'my-cron-trigger'
kn source cronjob describe my-cron-trigger
```

### Options

```
-h, --help help for describe
-n, --namespace string Specify the namespace to operate in.
-v, --verbose More output.
```

### Options inherited from parent commands

```
--config string kn config file (default is $HOME/.kn/config.yaml)
--kubeconfig string kubectl config file (default is $HOME/.kube/config)
--log-http log http traffic
```

### SEE ALSO

* [kn source cronjob](kn_source_cronjob.md) - Cronjob source command group

42 changes: 42 additions & 0 deletions docs/cmd/kn_source_cronjob_update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
## kn source cronjob update

Update a Cronjob source.

### Synopsis

Update a Cronjob source.

```
kn source cronjob update NAME --schedule SCHEDULE --sink SERVICE --data DATA [flags]
```

### Examples

```
# Update the schedule of a crontab source 'my-cron-trigger' to fire every minute
kn source cronjob update my-cron-trigger --schedule "* * * * */1"
```

### Options

```
-d, --data string String data to send
-h, --help help for update
-n, --namespace string Specify the namespace to operate in.
--schedule string Schedule specification in crontab format (e.g. '* * * * */2' for every two minutes
-s, --sink string Addressable sink for events
```

### Options inherited from parent commands

```
--config string kn config file (default is $HOME/.kn/config.yaml)
--kubeconfig string kubectl config file (default is $HOME/.kube/config)
--log-http log http traffic
```

### SEE ALSO

* [kn source cronjob](kn_source_cronjob.md) - Cronjob source command group

2 changes: 1 addition & 1 deletion docs/cmd/kn_source_list-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,5 +42,5 @@ kn source list-types [flags]

### SEE ALSO

* [kn source](kn_source.md) - Event Source command group
* [kn source](kn_source.md) - Event source command group

Loading

0 comments on commit 26ac06c

Please sign in to comment.