{"id":31532490,"url":"https://github.com/kubedge/kubedge-operator-helm","last_synced_at":"2025-10-26T18:07:33.590Z","repository":{"id":142419006,"uuid":"161495973","full_name":"kubedge/kubedge-operator-helm","owner":"kubedge","description":"HELM Operator Framework based KUBEDGE Operator","archived":false,"fork":false,"pushed_at":"2025-02-15T01:33:31.000Z","size":26,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-02T20:16:47.948Z","etag":null,"topics":["helm","kubedge","kubernetes","operator-framework"],"latest_commit_sha":null,"homepage":"https://kubedge.cloud","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kubedge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-12T13:57:07.000Z","updated_at":"2025-02-14T23:44:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"fb995337-5f8c-4c4c-8f8d-bc0ef63ceef0","html_url":"https://github.com/kubedge/kubedge-operator-helm","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kubedge/kubedge-operator-helm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubedge%2Fkubedge-operator-helm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubedge%2Fkubedge-operator-helm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubedge%2Fkubedge-operator-helm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubedge%2Fkubedge-operator-helm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kubedge","download_url":"https://codeload.github.com/kubedge/kubedge-operator-helm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kubedge%2Fkubedge-operator-helm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278259370,"owners_count":25957475,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["helm","kubedge","kubernetes","operator-framework"],"created_at":"2025-10-04T03:25:47.020Z","updated_at":"2025-10-04T03:25:48.754Z","avatar_url":"https://github.com/kubedge.png","language":"Shell","readme":"# operator-framework usage for kubedge\n\n## Coding the kubedge-operator-helm\n\n```bash\nvi helm-charts/kubedge-arpscan-amd64\nvi watches.yaml\nvi Dockerfile\n```\n**NOTE**: The helm chart currently deploys a daemonset. Note really good to check the changes in replicaCount.\n\n## Building the kubedge-operator-helm\n\n``bash\n./manualbuild.sh \n```\n\n## Deployment of kubedge-operator-helm manually\n\n```bash\nkubectl apply -f deploy/crds/arpscan_v1alpha1_kubedge_crd.yaml\n```\n\n```bash\nkubectl create -f deploy/operator/rbac.yaml\nkubectl create -f deploy/operator/operator.yaml \n```\n\n```bash\nkubectl apply -f deploy/crds/arpscan_v1alpha1_kubedge_cr.yaml\n```\n\n```bash\nkubectl get all\n\nNAME                                         READY   STATUS    RESTARTS   AGE\npod/kubedge-arpscan-ds-8kz8p                 1/1     Running   0          13m\npod/kubedge-operator-helm-85fbc5dbf5-jbs27   1/1     Running   0          13m\n\nNAME                 TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE\nservice/kubernetes   ClusterIP   10.96.0.1    \u003cnone\u003e        443/TCP   2d4h\n\nNAME                                DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                   AGE\ndaemonset.apps/kubedge-arpscan-ds   1         1         1       1            1           beta.kubernetes.io/arch=amd64   13m\n\nNAME                                    READY   UP-TO-DATE   AVAILABLE   AGE\ndeployment.apps/kubedge-operator-helm   1/1     1            1           13m\n\nNAME                                               DESIRED   CURRENT   READY   AGE\nreplicaset.apps/kubedge-operator-helm-85fbc5dbf5   1         1         1       13m\n```\n\n```bash\nkubectl get kubedges.arpscan.kubedge.cloud -oyaml\n\napiVersion: v1\nitems:\n- apiVersion: arpscan.kubedge.cloud/v1alpha1\n  kind: Kubedge\n  metadata:\n    creationTimestamp: \"2018-12-12T17:33:12Z\"\n    finalizers:\n    - uninstall-helm-release\n    generation: 2\n    name: example-kubedge\n    namespace: default\n    resourceVersion: \"135193\"\n    selfLink: /apis/arpscan.kubedge.cloud/v1alpha1/namespaces/default/kubedges/example-kubedge\n    uid: ffab2ddb-fe33-11e8-bdcd-0800272318b1\n  spec:\n    replicaCount: 2\n  status:\n    lastTransitionTime: \"2018-12-12T17:47:07Z\"\n    lastUpdateTime: \"2018-12-12T17:47:07Z\"\n    phase: Applied\n    reason: ApplySuccessful\n    release:\n      chart:\n        files:\n        - type_url: requirements.yaml\n          value: IyBDb3B5cmlnaHQgMjAxOCBLdWJlZGdlLgojCiMgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CiMgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgojIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAojCiMgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAojCiMgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQojIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCiMgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiMgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAojIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKZGVwZW5kZW5jaWVzOiBbXQo=\n        metadata:\n          apiVersion: v1\n          appVersion: 0.1.0\n          description: Kubedge ARPSCAN Agent\n          name: kubedge-arpscan-amd64\n          version: 0.1.0\n        templates:\n        - data: e3svKiB2aW06IHNldCBmaWxldHlwZT1tdXN0YWNoZTogKi99fQp7ey8qCkV4cGFuZCB0aGUgbmFtZSBvZiB0aGUgY2hhcnQuCiovfX0Ke3stIGRlZmluZSAia3ViZWRnZV9hcnBzY2FuLm5hbWUiIC19fQp7ey0gZGVmYXVsdCAuQ2hhcnQuTmFtZSAuVmFsdWVzLm5hbWVPdmVycmlkZSB8IHRydW5jIDYzIHwgdHJpbVN1ZmZpeCAiLSIgLX19Cnt7LSBlbmQgLX19Cgp7ey8qCkNyZWF0ZSBhIGRlZmF1bHQgZnVsbHkgcXVhbGlmaWVkIGFwcCBuYW1lLgpXZSB0cnVuY2F0ZSBhdCA2MyBjaGFycyBiZWNhdXNlIHNvbWUgS3ViZXJuZXRlcyBuYW1lIGZpZWxkcyBhcmUgbGltaXRlZCB0byB0aGlzIChieSB0aGUgRE5TIG5hbWluZyBzcGVjKS4KKi99fQp7ey0gZGVmaW5lICJrdWJlZGdlX2FycHNjYW4uZnVsbG5hbWUiIC19fQp7ey0gJG5hbWUgOj0gZGVmYXVsdCAuQ2hhcnQuTmFtZSAuVmFsdWVzLm5hbWVPdmVycmlkZSAtfX0Ke3stIHByaW50ZiAiJXMtJXMiIC5SZWxlYXNlLk5hbWUgJG5hbWUgfCB0cnVuYyA2MyB8IHRyaW1TdWZmaXggIi0iIC19fQp7ey0gZW5kIC19fQo=\n          name: templates/_helpers.tpl\n        - data: LS0tCmFwaVZlcnNpb246IGV4dGVuc2lvbnMvdjFiZXRhMQpraW5kOiBEYWVtb25TZXQKbWV0YWRhdGE6CiAgbmFtZToga3ViZWRnZS1hcnBzY2FuLWRzCiAgbmFtZXNwYWNlOiBkZWZhdWx0CiAgbGFiZWxzOgogICAgdGllcjogbm9kZQogICAgYXBwOiBhcnBzY2FuCnNwZWM6CiAgdGVtcGxhdGU6CiAgICBtZXRhZGF0YToKICAgICAgbGFiZWxzOgogICAgICAgIHRpZXI6IG5vZGUKICAgICAgICBhcHA6IGFycHNjYW4KICAgIHNwZWM6CiAgICAgIGhvc3ROZXR3b3JrOiB0cnVlCiAgICAgIG5vZGVTZWxlY3RvcjoKICAgICAgICBiZXRhLmt1YmVybmV0ZXMuaW8vYXJjaDogYW1kNjQKICAgICAgdG9sZXJhdGlvbnM6CiAgICAgIC0gb3BlcmF0b3I6IEV4aXN0cwogICAgICAgIGVmZmVjdDogTm9TY2hlZHVsZQogICAgICBjb250YWluZXJzOgogICAgICAtIG5hbWU6IGt1YmVkZ2UtYXJwc2NhbgogICAgICAgIGltYWdlOiAie3sgLlZhbHVlcy5pbWFnZS5yZXBvc2l0b3J5IH19Ont7IC5WYWx1ZXMuaW1hZ2UudGFnIH19IgogICAgICAgIGltYWdlUHVsbFBvbGljeToge3sgLlZhbHVlcy5pbWFnZS5wdWxsUG9saWN5IH19CiAgICAgICAgY29tbWFuZDoKICAgICAgICAtIC9iaW4vYXJwc2NhbgogICAgICAgIGFyZ3M6CiAgICAgICAgLSBlbnAwczgKICAgICAgICByZXNvdXJjZXM6CiAgICAgICAgICByZXF1ZXN0czoKICAgICAgICAgICAgY3B1OiAiMTAwbSIKICAgICAgICAgICAgbWVtb3J5OiAiNTBNaSIKICAgICAgICAgIGxpbWl0czoKICAgICAgICAgICAgY3B1OiAiMTAwbSIKICAgICAgICAgICAgbWVtb3J5OiAiNTBNaSIKICAgICAgICBzZWN1cml0eUNvbnRleHQ6CiAgICAgICAgICBwcml2aWxlZ2VkOiB0cnVlCiAgICAgICAgZW52OgogICAgICAgIC0gbmFtZTogUE9EX05BTUUKICAgICAgICAgIHZhbHVlRnJvbToKICAgICAgICAgICAgZmllbGRSZWY6CiAgICAgICAgICAgICAgZmllbGRQYXRoOiBtZXRhZGF0YS5uYW1lCiAgICAgICAgLSBuYW1lOiBQT0RfTkFNRVNQQUNFCiAgICAgICAgICB2YWx1ZUZyb206CiAgICAgICAgICAgIGZpZWxkUmVmOgogICAgICAgICAgICAgIGZpZWxkUGF0aDogbWV0YWRhdGEubmFtZXNwYWNlCiAgICAgICAgdm9sdW1lTW91bnRzOgogICAgICAgIC0gbmFtZToga3ViZWRnZQogICAgICAgICAgbW91bnRQYXRoOiAvZXRjL2t1YmVkZ2UKICAgICAgdm9sdW1lczoKICAgICAgICAtIG5hbWU6IGt1YmVkZ2UKICAgICAgICAgIGhvc3RQYXRoOgogICAgICAgICAgICBwYXRoOiAvZXRjL2t1YmVkZ2UK\n          name: templates/daemonset.yaml\n        values:\n          raw: |\n            image:\n              pullPolicy: IfNotPresent\n              repository: hack4easy/arpscan-amd64\n              tag: latest\n            nameOverride: kubedge-arpscan\n            nodeSelector:\n              kubedgeNodeType: lte-ran\n            resources: {}\n      config:\n        raw: |\n          replicaCount: 2\n      info:\n        Description: Install complete\n        first_deployed:\n          nanos: 647238542\n          seconds: 1544636827\n        last_deployed:\n          nanos: 647238542\n          seconds: 1544636827\n        status:\n          code: 1\n      manifest: |2-\n\n        ---\n        # Source: kubedge-arpscan-amd64/templates/daemonset.yaml\n        apiVersion: extensions/v1beta1\n        kind: DaemonSet\n        metadata:\n          labels:\n            app: arpscan\n            tier: node\n          name: kubedge-arpscan-ds\n          namespace: default\n          ownerReferences:\n          - apiVersion: arpscan.kubedge.cloud/v1alpha1\n            blockOwnerDeletion: true\n            controller: true\n            kind: Kubedge\n            name: example-kubedge\n            uid: ffab2ddb-fe33-11e8-bdcd-0800272318b1\n        spec:\n          template:\n            metadata:\n              labels:\n                app: arpscan\n                tier: node\n            spec:\n              containers:\n              - args:\n                - enp0s8\n                command:\n                - /bin/arpscan\n                env:\n                - name: POD_NAME\n                  valueFrom:\n                    fieldRef:\n                      fieldPath: metadata.name\n                - name: POD_NAMESPACE\n                  valueFrom:\n                    fieldRef:\n                      fieldPath: metadata.namespace\n                image: hack4easy/arpscan-amd64:latest\n                imagePullPolicy: IfNotPresent\n                name: kubedge-arpscan\n                resources:\n                  limits:\n                    cpu: 100m\n                    memory: 50Mi\n                  requests:\n                    cpu: 100m\n                    memory: 50Mi\n                securityContext:\n                  privileged: true\n                volumeMounts:\n                - mountPath: /etc/kubedge\n                  name: kubedge\n              hostNetwork: true\n              nodeSelector:\n                beta.kubernetes.io/arch: amd64\n              tolerations:\n              - effect: NoSchedule\n                operator: Exists\n              volumes:\n              - hostPath:\n                  path: /etc/kubedge\n                name: kubedge\n      name: example-kubedge-f4wiqc3bhakg7k9310mek79o1\n      namespace: default\n      version: 1\nkind: List\nmetadata:\n  resourceVersion: \"\"\n  selfLink: \"\"\n```\n\n\n## Deployment of kubedge-operator-helm using Operator Life Cycle Manager\n\n### Install the framework\n\nInstall the framework....run it twice\nTODO: Use the helm chart instead\n\n```bash\nkubectl create -f deploy/upstream/manifests/latest/\nkubectl create -f deploy/upstream/manifests/latest/\n```\n\n###  Deploy the lcm operator\n\n```bash\nkubectl create -f deploy/olm/package.yaml\nkubectl create -f deploy/olm/csv.yaml\n```\n \n***TBD***\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkubedge%2Fkubedge-operator-helm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkubedge%2Fkubedge-operator-helm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkubedge%2Fkubedge-operator-helm/lists"}