### Google Style Guide for Go Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/CONTRIBUTING.md The project follows the Google Style Guide for Go, with specific emphasis on self-describing naming conventions and detailed godoc-compatible comments for public methods and packages. ```APIDOC Google Style Guide for Go: - Naming: - Should be self-describing and obvious. - Reference: https://google.github.io/styleguide/go/guide#naming - Commentaries: - Every public method is required to have a comment in godoc compatible format. - Every package should have a doc.go file with commentary about its purpose. - Reference: https://google.github.io/styleguide/go/decisions#commentary - Brand Names: - All brand-specific names (except "Yandex") are blacklisted. ``` -------------------------------- ### Initialize Cluster API Management Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Initializes the Kubernetes Cluster API management components within the current cluster. This command installs core Cluster API controllers and dependencies like cert-manager. ```bash clusterctl init ``` -------------------------------- ### Build and Push Docker Image Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Builds the Docker image for the Yandex Cloud provider and pushes it to a specified container registry. This command is typically executed after configuring the `IMG` variable and potentially adjusting the build platform in the Makefile. ```bash docker build --platform linux/amd64 -t ${IMG} . ``` ```make make docker-build docker-push ``` -------------------------------- ### Set Docker Image Path (Public Registry) Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Exports the `IMG` environment variable with the path to the pre-built Yandex Cloud provider Docker image from the public Yandex Container Registry. This is used for deploying the provider. ```bash export IMG=cr.yandex/crpsjg1coh47p81vh2lc/capy/cluster-api-provider-yandex:latest ``` -------------------------------- ### Manage Cluster API CRDs Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Provides commands to list and retrieve YAML definitions for Cluster API CustomResourceDefinitions. This is useful for inspecting the installed CRDs or debugging. ```kubectl kubectl get crd | grep cluster.x-k8s.io ``` ```kubectl kubectl get crd <имя_CRD> \ --output yaml ``` -------------------------------- ### Install Cluster API CRDs Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Installs the necessary CustomResourceDefinitions (CRDs) for Cluster API into the management cluster. These CRDs define the resources used by Cluster API to manage cluster lifecycles. ```make make install ``` -------------------------------- ### Create Yandex Cloud Provider Namespace Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Creates a dedicated Kubernetes namespace named `capy-system` for the Yandex Cloud provider components. This helps in organizing and isolating the provider's resources. ```kubectl kubectl create namespace capy-system ``` -------------------------------- ### Deploy Yandex Cloud Provider Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Deploys the Yandex Cloud provider components to the management cluster. This command typically builds and applies the provider's manifests, enabling it to manage Yandex Cloud infrastructure for Kubernetes clusters. ```make make deploy ``` -------------------------------- ### Create Yandex Cloud Service Account Secret Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/README.md Creates a Kubernetes secret named `yc-sa-key` in the `capy-system` namespace. This secret stores the Yandex Cloud service account key, which the provider uses for authentication and authorization with Yandex Cloud services. ```kubectl kubectl create secret generic yc-sa-key \ --from-file=key=<путь_к_файлу_с_авторизованным_ключом> \ --namespace capy-system ``` -------------------------------- ### Contribution Checklist Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/CONTRIBUTING.md A checklist to ensure all requirements are met before submitting a contribution, covering code quality, style adherence, documentation, and verification steps. ```markdown - Your code covered by tests - Your code fulfills Style Guide - You do not have any brand-specific names (except Yandex) in your code - You successfully have passed `make verify` command - README.md has been updated after any changes in "features" or "how to use" description - Done steps from [Provide contributions](#1.0) section ``` -------------------------------- ### Pull Request Verification Steps Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/CONTRIBUTING.md Before merging, pull requests must pass automated checks and manual reviews. This includes running formatters, linters, and updating documentation. ```shell make verify ``` -------------------------------- ### Contribution Agreement Statement Source: https://github.com/yandex-cloud/cluster-api-provider-yandex/blob/master/CONTRIBUTING.md When submitting a pull request, contributors must include a statement agreeing to the Yandex Contributor License Agreement (CLA). This ensures legal compliance for contributions. ```markdown I here by agree to the terms of the CLA available at: [link]. ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.