kubtl ua - hais kom ua kab interface rau pawg tswj hwm.
Peb tsa Kubernetes pawg hauv zos:
$ 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.
Peb qhia tau kubectl siv cov pawg hauv zos los ntawm lub neej ntawd:
$ kubectl config use-context minikube
Switched to context "minikube".
Peb xyuas tias tus neeg teb xov tooj tau tshwm sim hauv pawg:
$ kubectl get pods --namespace stale-feature-branch-operator
NAME ... STATUS ... AGE
stale-feature-branch-operator-6bfbfd4df8-m7sch ... Running ... 38s
Yog tias koj saib ntawm nws cov cav, nws npaj txhij los ua cov peev txheej StaleFeatureBranch:
Tus neeg teb xov tooj tau teb thiab npaj txhij los tshuaj xyuas lub npe chaw:
$ 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"}
Nruab fixtures, muaj ob lub npe chaw (project-pr-1, project-pr-2) thiab lawv deployments, services, ingress, thiab lwm yam:
$ 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
Peb xyuas tias tag nrho cov peev txheej saum toj no tau ua tiav tiav:
$ 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
...
Txij li thaum peb suav nrog debug, cov npe project-pr-1 ΠΈ project-pr-2, yog li ntawd tag nrho lwm yam kev pab yuav tsum tau muab tshem tawm tam sim ntawd yam tsis xav txog qhov parameter afterDaysWithoutDeploy. Qhov no tuaj yeem pom hauv tus neeg teb xov tooj cav:
$ 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"}
$ 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
...
Koj tuaj yeem rov ua cov txheej txheem tsim fixtures ob peb zaug thiab xyuas kom tseeb tias lawv raug tshem tawm hauv ib feeb.
Lwm yam
Yuav ua li cas hloov tus neeg teb xov tooj uas ua haujlwm hauv pawg? Muaj ob peb txoj hauv kev, txhua tus ntawm lawv tsis zoo tag nrho (thiab lawv qhov tsis txaus ntseeg yog cov ntsiab lus), thiab txhua tus txiav txim siab rau nws tus kheej seb qhov twg yog qhov zoo tshaj plaws rau ib qhov project:
Rho tawm feature ceg thaum lub sij hawm tas mus li kev koom ua ke tsim ntawm tus tswv ceg.
Txhawm rau ua qhov no, koj yuav tsum paub tias qhov kev thov rub twg cuam tshuam nrog kev cog lus uas tab tom tsim. Txij li thaum lub feature ceg namespace muaj tus rub daim ntawv thov - nws tus naj npawb, los yog lub npe ntawm ceg, tus cim yuav tsum tau teev nyob rau hauv qhov kev cog lus.
Master ceg tsim ua tsis tiav. Piv txwv li, koj muaj cov theem hauv qab no: rub tawm qhov project, khiav kev sim, tsim qhov project, ua ib qho kev tso tawm, xa cov ntawv ceeb toom, tshem tawm cov ceg ntawm qhov kawg rub thov. Yog tias tsim tsis tau thaum xa ntawv ceeb toom, koj yuav tau tshem tawm tag nrho cov peev txheej hauv pawg manually.