پارسيم afterDaysWithoutDeploy د زړو نوم ځایونو ړنګولو ته اړتیا ده. د مثال په توګه، که د نوم ځای جوړ شي 3 дня 1 час بیرته، او پیرامیټر په ګوته کوي 3 дня، دا نوم ځای به ړنګ شي. دا په مخالف لوري کې هم کار کوي که چیرې نوم ځای رامینځته شي 2 дня 23 часа بیرته، او پیرامیټر په ګوته کوي 3 дня, دا نوم ځای به ړنګ نه شي.
یو بل پیرامیټر شتون لري، دا د دې مسولیت دی چې څومره ځله ټول نوم ځایونه سکین کړئ او د ځای پرځای کولو پرته د ورځو لپاره وګورئ - هره دقیقه چیک کړئ. په ډیفالټ کې دا مساوي دی 30 минутам.
$ minikube start --vm-driver=docker
minikube v1.11.0 on Darwin 10.15.5
Using the docker driver based on existing profile.
Starting control plane node minikube in cluster minikube.
موږ اشاره کوو kubectl د ډیفالټ لخوا محلي کلستر وکاروئ:
$ kubectl config use-context minikube
Switched to context "minikube".
$ kubectl get pods --namespace stale-feature-branch-operator
NAME ... STATUS ... AGE
stale-feature-branch-operator-6bfbfd4df8-m7sch ... Running ... 38s
که تاسو د دې لاګونو ته وګورئ، دا د سرچینو پروسس کولو لپاره چمتو دی StaleFeatureBranch:
$ kubectl logs stale-feature-branch-operator-6bfbfd4df8-m7sch -n stale-feature-branch-operator
... "msg":"Stale feature branch is being processing.","namespaceSubstring":"-pr-","afterDaysWithoutDeploy":1,"checkEveryMinutes":1,"isDebug":"true"}
ولګوه fixturesدوه نوم ځایونه لري (project-pr-1, project-pr-2) او دوی deployments, services, ingress، او همداسی پسی:
$ kubectl apply -f https://raw.githubusercontent.com/dmytrostriletskyi/stale-feature-branch-operator/master/fixtures/first-feature-branch.yml -f https://raw.githubusercontent.com/dmytrostriletskyi/stale-feature-branch-operator/master/fixtures/second-feature-branch.yml
...
namespace/project-pr-1 created
deployment.apps/project-pr-1 created
service/project-pr-1 created
horizontalpodautoscaler.autoscaling/project-pr-1 created
secret/project-pr-1 created
configmap/project-pr-1 created
ingress.extensions/project-pr-1 created
namespace/project-pr-2 created
deployment.apps/project-pr-2 created
service/project-pr-2 created
horizontalpodautoscaler.autoscaling/project-pr-2 created
secret/project-pr-2 created
configmap/project-pr-2 created
ingress.extensions/project-pr-2 created
$ kubectl get namespace,pods,deployment,service,horizontalpodautoscaler,configmap,ingress -n project-pr-1 && kubectl get namespace,pods,deployment,service,horizontalpodautoscaler,configmap,ingress -n project-pr-2
...
NAME ... READY ... STATUS ... AGE
pod/project-pr-1-848d5fdff6-rpmzw ... 1/1 ... Running ... 67s
NAME ... READY ... AVAILABLE ... AGE
deployment.apps/project-pr-1 ... 1/1 ... 1 ... 67s
...
ځکه چې موږ پکې شامل شو debugد نوم ځایونه project-pr-1 и project-pr-2له همدې امله ټولې نورې سرچینې باید سمدلاسه حذف شي پرته لدې چې پیرامیټر په پام کې ونیول شي afterDaysWithoutDeploy. دا د آپریټر لاګونو کې لیدل کیدی شي:
$ kubectl logs stale-feature-branch-operator-6bfbfd4df8-m7sch -n stale-feature-branch-operator
... "msg":"Namespace should be deleted due to debug mode is enabled.","namespaceName":"project-pr-1"}
... "msg":"Namespace is being processing.","namespaceName":"project-pr-1","namespaceCreationTimestamp":"2020-06-16 18:43:58 +0300 EEST"}
... "msg":"Namespace has been deleted.","namespaceName":"project-pr-1"}
... "msg":"Namespace should be deleted due to debug mode is enabled.","namespaceName":"project-pr-2"}
... "msg":"Namespace is being processing.","namespaceName":"project-pr-2","namespaceCreationTimestamp":"2020-06-16 18:43:58 +0300 EEST"}
... "msg":"Namespace has been deleted.","namespaceName":"project-pr-2"}
که تاسو د سرچینو شتون وګورئ، دوی به په وضعیت کې وي Terminating (د حذف کولو پروسه) یا دمخه حذف شوی (د قوماندې محصول خالي دی).
$ kubectl get namespace,pods,deployment,service,horizontalpodautoscaler,configmap,ingress -n project-pr-1 && kubectl get namespace,pods,deployment,service,horizontalpodautoscaler,configmap,ingress -n project-pr-2
...