Releases: flant/shell-operator
1.0.2 (2021-08-17)
Changelog
- feat: add
ignoreIfMissing
flag for Kubernetes Patches from hooks (#308)
go hooks improvements
- Collect patches in PatchCollector, remove ObjectPatcher interface.
- Implement UpdateMonitor method to change kind and apiVersion of an existing monitor.
Full Changelog: v1.0.1...v1.0.2
Milestone: 1.0.2
Installation and usage
Create an image with your hooks added into the /hooks
directory:
Dockerfile
FROM flant/shell-operator:v1.0.2
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for the inspiration.
1.0.1 (2021-05-04)
Changelog
- fix: add v1beta1 to conversion config to work with 1.16+ (#279)
test framework improvements
- fix(generator): do not return BindingContext if Synchronization is skipped
- feat(tests): add "AllSnapshots" binding context generator
- fix(tests): enable EventCb for KubeEventManager test
- fix(test): replace hardcode in ContextCombiner
See milestone 1.0.1.
Installation and usage
Create an image with your hooks added into the /hooks
directory:
Dockerfile
FROM flant/shell-operator:v1.0.1
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for the inspiration.
1.0.0 (2021-03-31)
Changelog
features
- feat: object manipulation framework (hooks without kubectl) (#239)
- feat: execution rate settings for hook (#257)
fixes
- fix: fresh objects for Synchronization executions (#261)
small improvements
Installation and usage
Create an image with your hooks added into the /hooks
directory:
Dockerfile
FROM flant/shell-operator:v1.0.0
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for the inspiration.
1.0.0-rc.2 (2021-02-25)
Changelog
- feat: support conversion webhooks (#250)
- fix: examples cleanup (#253, #252, #251)
- fix: log stderr from
hook --config
(#248)
ci,test
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-rc.2
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.
shell-operator v1.0.0-rc.1
Changelog
- feat: use hooks as a validating webhook handlers (#223)
- feat: expire action to explicitly expire all metrics in group (#215)
- feat: Warn users about non-executable hooks (#220)
- feat: read only locks for queue read operations (#234)
- feat: no cgo build (#238)
- fix: prevent overflow in exponential backoff calculation (#219)
- fix: randomize resync period to eliminate cpu peaks (#226, #222)
- fix: prevent overflow in exponential backoff calculation (#219, #218)
ci, docs
- feat: multiarch docker image (amd64,arm,arm64) (#205, #184)
- fix(ci): add framework/shell, publish latest, issue templates
- fix: remove fullObjectInSnapshot from docs (#241, #240)
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-rc.1
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.
shell-operator v1.0.0-beta.13
Changelog
- feat: add exponential backoff delay for failed hooks (#211 )
- fix build: remove sources and .git from final image, update versions (#213, #202)
- update versions: alpine 3.12 (#201), kubectl 1.19.4, go 1.15
- tests: fix for long running generator (#207)
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-beta.13
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.
shell-operator v1.0.0-beta.12
Changelog
- add shell_lib.sh to source shell framework in one line (#197, #196)
- fix binding context iteration in 102-monitor-namespace (#195, #192)
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-beta.12
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.
shell-operator v1.0.0-beta.11
Changelog
features
- more Prometheus metrics for better observability (#176 #180, issues: #123 #137 #30 #166)
- hook can expire its metrics with
group
option (#176, docs: #183) - merge snaphosts for
group
andincludeSnapshotsFrom
#179 - option to discard full objects after applying jqFilter #178
--hook-metrics-listen-port
flag to separate ports for observability metrics and hook metrics #190
libjq fixes
fixes
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-beta.11
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.
v1.0.0-beta.10
Changelog
features
- replace in-process zombie reaper with tini #175
--kube-server
flag to specify Kubernetes API server (kubectl --server) #167
tests
fixes
addon-operator
- 'wait' behavior for tasks #174
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-beta.10
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.
shell-operator v1.0.0-beta.9
Changelog
hooks
- feat: allow to send metrics from hooks #165
- feat: executeHookOnSynchronization for kubernetes binding #164
- feat: type:Schedule for schedule bindings #156
- feat: combine binding context for sequence of HookRun tasks #140 #144 #149 #150
- feat: contexts grouping, type:Group #140 #150
- watchEvent → executeHookOnEvent #139
- feat: watchEvent is an alias of executeHookOnEvent
- feat: executeHookOnEvent supports empty array to not execute a hook on events
- fix: update libjq-go: better compile performance #163
- fix: start of schedule bindings without kubernetes bindings
- fix: lock for GetExistingObjects #136
examples
kube_client, kube_event_manager
- fix: proper handle of error from ServerPreferredResources #142
- fix: kube_event_manager: support for DeletedFinalStateUnknown #153
frameworks
debug
- queue dump
generator
- Binding context generator ChangeState method refactoring (#135)
build
documentation
- proofreading #133
- group field #151
- executeHookOnEvent, executeHookOnSynchronization #139 #164
- custom metrics #165
Installation and usage
Create image with your hooks added into /hooks directory:
Dockerfile
FROM flant/shell-operator:v1.0.0-beta.9
ADD pods-hook.sh /hooks
Push to registry, create rbac and create a Pod or Deployment:
apiVersion: v1
kind: Pod
metadata:
name: shell-operator
spec:
containers:
- name: shell-operator
image: registry.mycompany.com/shell-operator:monitor-pods
imagePullPolicy: Always
serviceAccountName: monitor-pods-acc
Check README for more information and /examples for inspiration.