new attempt

This commit is contained in:
Bastian Schnorbus
2025-05-06 23:03:51 +02:00
parent 7783d14826
commit cbefdfba7b
28 changed files with 80 additions and 446 deletions

View File

@@ -1,4 +1,4 @@
# tdset-operator
# k8s-operator-playground
// TODO(user): Add simple overview of use/purpose
## Description
@@ -16,7 +16,7 @@
**Build and push your image to the location specified by `IMG`:**
```sh
make docker-build docker-push IMG=<some-registry>/tdset-operator:tag
make docker-build docker-push IMG=<some-registry>/k8s-operator-playground:tag
```
**NOTE:** This image ought to be published in the personal registry you specified.
@@ -32,7 +32,7 @@ make install
**Deploy the Manager to the cluster with the image specified by `IMG`:**
```sh
make deploy IMG=<some-registry>/tdset-operator:tag
make deploy IMG=<some-registry>/k8s-operator-playground:tag
```
> **NOTE**: If you encounter RBAC errors, you may need to grant yourself cluster-admin
@@ -73,7 +73,7 @@ Following are the steps to build the installer and distribute this project to us
1. Build the installer for the image built and published in the registry:
```sh
make build-installer IMG=<some-registry>/tdset-operator:tag
make build-installer IMG=<some-registry>/k8s-operator-playground:tag
```
NOTE: The makefile target mentioned above generates an 'install.yaml'
@@ -86,7 +86,7 @@ its dependencies.
Users can just run kubectl apply -f <URL for YAML BUNDLE> to install the project, i.e.:
```sh
kubectl apply -f https://raw.githubusercontent.com/<org>/tdset-operator/<tag or branch>/dist/install.yaml
kubectl apply -f https://raw.githubusercontent.com/<org>/k8s-operator-playground/<tag or branch>/dist/install.yaml
```
## Contributing
@@ -112,3 +112,21 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
## What have I done?
Source: https://shahin-mahmud.medium.com/write-your-first-kubernetes-operator-in-go-177047337eae
1. Initialize project
operator-sdk init --domain rs --repo github.com/baschno/tdset-operator --plugins=go/v4
2. Create CRDs, go types, controller, etc..
operator-sdk create api --group schedule --version v1 --kind TDSet --resource --controller
--group -> resource group name
Create controller w/o prompting
Create resources w/o prompting
3. Do changes to the go types
4. Run `make generate`
5. Run `make manifests`