diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 8ef73b2..c2db42a 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,9 +1,6 @@ --- name: Bug report about: Report a bug in the machine-controller-manager-provider-stackit -title: "" -labels: bug -assignees: "" --- ## Description @@ -14,9 +11,6 @@ _Please add a clear and concise description of what the bug is._ _Please provide us with the steps to reproduce the behavior._ -1. Run ... -2. ... - ## Actual behavior _Please describe the current behavior of the machine-controller-manager-provider-stackit. Don't forget to add detailed information like error messages._ @@ -30,6 +24,8 @@ _Please describe the behavior which you would expect from the machine-controller - Kubernetes version: - Version of the machine-controller-manager-provider-stackit: -**Additional information** +## Additional information _Feel free to add any additional information here._ + +/kind bug diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index a442a59..4ef753b 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -1,9 +1,6 @@ --- name: Feature request about: Suggest an idea for the machine-controller-manager-provider-stackit -title: "" -labels: enhancement -assignees: "" --- ## Problem description @@ -21,3 +18,5 @@ _A clear and concise description of any alternative solutions or features you've ## Additional information _Feel free to add any additional information here._ + +/kind enhancement diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index de9ae96..9c44347 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,11 +7,7 @@ Before opening a PR, please read through this document. ## Process of making an addition -For major changes, API changes or features please open a [Discussion](https://github.com/stackitcloud/machine-controller-manager-provider-stackit/discussions) or [Issue](https://github.com/stackitcloud/machine-controller-manager-provider-stackit/issues) beforehand to clarify if this is in line with the project and to avoid unnecessary work. - -> Use **Discussions** if it needs to be clarified how to implement or to check if this feature is in line with the project. After all clarifications an issue will be created with the details of the implementation. -> -> Use **Issues** if you have a clear plan how to implement to propose how you would do the change. +For major changes, API changes or features please open an [Issue](https://github.com/stackitcloud/machine-controller-manager-provider-stackit/issues) beforehand to clarify if this is in line with the project and to avoid unnecessary work. To contribute any code to this repository, just do the following: @@ -20,7 +16,7 @@ To contribute any code to this repository, just do the following: 3. Make your changes > Please follow the [seven rules of great Git commit messages](https://chris.beams.io/posts/git-commit/#seven-rules) > and make sure to keep your commits clean and atomic. - > Your PR won't be squashed before merging so the commits should tell a story. + > Your PR will be squashed before merging so the commits can and should tell a story. > > Add documentation and tests for your addition if needed. 4. Run `make verify` to ensure your code is ready to be merged diff --git a/docs/release-procedure.md b/docs/releases.md similarity index 99% rename from docs/release-procedure.md rename to docs/releases.md index e6898f4..4b0398c 100644 --- a/docs/release-procedure.md +++ b/docs/releases.md @@ -9,8 +9,6 @@ This document outlines the standard procedure for creating new releases of the S - **Versioning:** Versioning follows official [SemVer 2.0](https://semver.org/) - **CI/CD System:** All release and image builds are managed by our **Prow CI** infrastructure. ---- - ## Automated Release Process (Primary Method) The primary release method is automated using a tool called `release-tool`. This process is designed to be straightforward and require minimal manual intervention. @@ -20,8 +18,6 @@ The primary release method is automated using a tool called `release-tool`. This Publishing the release automatically creates the corresponding Git tag (e.g., `v1.3.1`), which triggers a separate Prow job to build the final container images and attach them to the GitHub release. ---- - ## Manual Release Process (Fallback Method) If the `release-tool` or its associated Prow job fails, use the GitHub web UI to create and publish a release: diff --git a/samples/deployment.yaml b/samples/deployment.yaml index 08d3b87..8cca231 100644 --- a/samples/deployment.yaml +++ b/samples/deployment.yaml @@ -16,18 +16,18 @@ spec: image: europe-docker.pkg.dev/gardener-project/releases/gardener/machine-controller-manager:v0.61.1 imagePullPolicy: Always command: - - ./machine-controller-manager - - --target-kubeconfig=$(TARGET_KUBECONFIG) # Mandatory Parameter - Filepath to the target cluster's kubeconfig where node objects are expected to join. - - --control-kubeconfig=$(CONTROL_KUBECONFIG) # Optional Parameter - Default value is same as target-kubeconfig - Filepath to the control cluster's kubeconfig where machine objects would be created. Optionally you could also use "inClusterConfig" when pod is running inside control kubeconfig. - - --namespace=$(CONTROL_NAMESPACE) # Optional Parameter - Default value for namespace is 'default' - The control namespace where the controller watches for it's machine objects. - - --safety-up=2 # Optional Parameter - Default value 2 - The number of excess machine objects permitted for any machineSet/machineDeployment beyond its expected number of replicas based on desired and max-surge, we call this the upper-limit. When this upper-limit is reached, the objects are frozen until the number of objects reduce. upper-limit = desired + maxSurge (if applicable) + safetyUp. - - --safety-down=1 # Optional Parameter - Default value 1 - Upper-limit minus safety-down value gives the lower-limit. This is the limits below which any temporarily frozen machineSet/machineDeployment object is unfrozen. lower-limit = desired + maxSurge (if applicable) + safetyUp - safetyDown. - - --machine-drain-timeout=5m # Optional Parameter - Timeout (in time) used while draining of machine before deletion, beyond which MCM forcefully deletes machine. - - --machine-health-timeout=10m # Optional Parameter - Default value 10mins - Timeout (in time) used while joining (during creation) or re-joining (in case of temporary health issues) of machine before it is declared as failed. - - --machine-safety-orphan-vms-period=30 # Optional Parameter - Default value 30mins - Time period (in time) used to poll for orphan VMs by safety controller. - - --machine-safety-overshooting-period=1 # Optional Parameter - Default value 1min - Time period (in time) used to poll for overshooting of machine objects backing a machineSet by safety controller. - - --node-conditions=ReadonlyFilesystem,KernelDeadlock,DiskPressure # List of comma-separated/case-sensitive node-conditions which when set to True will change machine to a failed state after MachineHealthTimeout duration. It may further be replaced with a new machine if the machine is backed by a machine-set object. - - --v=3 + - ./machine-controller-manager + - --target-kubeconfig=$(TARGET_KUBECONFIG) # Mandatory Parameter - Filepath to the target cluster's kubeconfig where node objects are expected to join. + - --control-kubeconfig=$(CONTROL_KUBECONFIG) # Optional Parameter - Default value is same as target-kubeconfig - Filepath to the control cluster's kubeconfig where machine objects would be created. Optionally you could also use "inClusterConfig" when pod is running inside control kubeconfig. + - --namespace=$(CONTROL_NAMESPACE) # Optional Parameter - Default value for namespace is 'default' - The control namespace where the controller watches for it's machine objects. + - --safety-up=2 # Optional Parameter - Default value 2 - The number of excess machine objects permitted for any machineSet/machineDeployment beyond its expected number of replicas based on desired and max-surge, we call this the upper-limit. When this upper-limit is reached, the objects are frozen until the number of objects reduce. upper-limit = desired + maxSurge (if applicable) + safetyUp. + - --safety-down=1 # Optional Parameter - Default value 1 - Upper-limit minus safety-down value gives the lower-limit. This is the limits below which any temporarily frozen machineSet/machineDeployment object is unfrozen. lower-limit = desired + maxSurge (if applicable) + safetyUp - safetyDown. + - --machine-drain-timeout=5m # Optional Parameter - Timeout (in time) used while draining of machine before deletion, beyond which MCM forcefully deletes machine. + - --machine-health-timeout=10m # Optional Parameter - Default value 10mins - Timeout (in time) used while joining (during creation) or re-joining (in case of temporary health issues) of machine before it is declared as failed. + - --machine-safety-orphan-vms-period=30 # Optional Parameter - Default value 30mins - Time period (in time) used to poll for orphan VMs by safety controller. + - --machine-safety-overshooting-period=1 # Optional Parameter - Default value 1min - Time period (in time) used to poll for overshooting of machine objects backing a machineSet by safety controller. + - --node-conditions=ReadonlyFilesystem,KernelDeadlock,DiskPressure # List of comma-separated/case-sensitive node-conditions which when set to True will change machine to a failed state after MachineHealthTimeout duration. It may further be replaced with a new machine if the machine is backed by a machine-set object. + - --v=3 livenessProbe: failureThreshold: 3 httpGet: