{"id":13689270,"url":"https://github.com/keisku/kubectl-secretdata","last_synced_at":"2025-08-17T19:35:56.577Z","repository":{"id":37759931,"uuid":"393691105","full_name":"keisku/kubectl-secretdata","owner":"keisku","description":"A kubectl plugin for viewing decoded Secret data with search flags.","archived":false,"fork":false,"pushed_at":"2024-10-10T04:57:50.000Z","size":350,"stargazers_count":40,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-11T13:52:08.119Z","etag":null,"topics":["go","kubectl","kubectl-plugin","kubectl-plugins","kubernetes"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/keisku.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":"2021-08-07T13:27:40.000Z","updated_at":"2024-10-10T04:57:55.000Z","dependencies_parsed_at":"2024-11-09T08:01:09.773Z","dependency_job_id":"8b2fa0a0-8bb2-4be7-abee-911be7b55a74","html_url":"https://github.com/keisku/kubectl-secretdata","commit_stats":{"total_commits":38,"total_committers":4,"mean_commits":9.5,"dds":"0.10526315789473684","last_synced_commit":"cdc92b3d6cbad04510a4d714ecad96c8fa31282e"},"previous_names":["kei6u/kubectl-secretdata","kskumgk63/kubectl-secret-data","kei6u/kubectl-secret-data"],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keisku%2Fkubectl-secretdata","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keisku%2Fkubectl-secretdata/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keisku%2Fkubectl-secretdata/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keisku%2Fkubectl-secretdata/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/keisku","download_url":"https://codeload.github.com/keisku/kubectl-secretdata/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230511482,"owners_count":18237658,"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","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":["go","kubectl","kubectl-plugin","kubectl-plugins","kubernetes"],"created_at":"2024-08-02T15:01:40.863Z","updated_at":"2024-12-19T23:15:21.006Z","avatar_url":"https://github.com/keisku.png","language":"Go","funding_links":[],"categories":["go"],"sub_categories":[],"readme":"# kubectl-secretdata\n\n[![.github/workflows/go_test.yaml](https://github.com/keisku/kubectl-secretdata/actions/workflows/go_test.yaml/badge.svg)](https://github.com/keisku/kubectl-secretdata/actions/workflows/go_test.yaml)\n\nThis plugin provides functions to view decoded Secret data and helpful flags such as regular expression, selecting multiple namespaces, label selectors, etc.\n\n![demo](./demo.png)\n\n## Motivation\n\n- `kubectl get secret` outputs base64-encoded Secret. It is not easy to verify the real value.\n- Wanted functions like regular expression, selecting multiple namespaces to list up Secret data.\n\n## Usage\n\n```\nDisplay decoded secret data.  Prints decoded secret data about the found\nsecrets.  You can filter the list using a label selector and the --selector flag,\nor using --regex. You will only see results in your current namespace unless\nyou pass --all-namespaces or --multi-namespaces.\n\nUsage:\n  secretdata [(-o|--output=json|yaml)] [NAME | -l label] ...) [flags]\n\nExamples:\n\n# List all secrets in json format\nkubectl secretdata -A -o json\n\n# List secrets in specified NAMESPACES in yaml form(default)\nkubectl secretdata -m \"ns1,ns2,ns3\"\n\n# List secrets which are matched with regex in specified NAMESPACE\nkubectl secretdata -n ns1 --regex \"^secret[0-9]\"\n\n# List secrets which are matched with labels from all namespaces\nkubectl secretdata -A --selector \"key1=value1,key2=value2\"\n\n\nFlags:\n  -A, --all-namespaces                 If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.\n      --as string                      Username to impersonate for the operation. User could be a regular user or a service account in a namespace.\n      --as-group stringArray           Group to impersonate for the operation, this flag can be repeated to specify multiple groups.\n      --as-uid string                  UID to impersonate for the operation.\n      --cache-dir string               Default cache directory (default \"/Users/keisukeumegaki/.kube/cache\")\n      --certificate-authority string   Path to a cert file for the certificate authority\n      --client-certificate string      Path to a client certificate file for TLS\n      --client-key string              Path to a client key file for TLS\n      --cluster string                 The name of the kubeconfig cluster to use\n      --context string                 The name of the kubeconfig context to use\n  -h, --help                           help for secretdata\n      --insecure-skip-tls-verify       If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure\n      --kubeconfig string              Path to the kubeconfig file to use for CLI requests.\n      --match-server-version           Require server version to match client version\n  -m, --multi-namespaces string        The multi namespacess separated by \",\" where secrets exist.\n  -n, --namespace string               If present, the namespace scope for this CLI request\n  -o, --output string                  The format of the result (default \"yaml\")\n      --password string                Password for basic authentication to the API server\n      --regex string                   The regular expression for secret name (default \".*\")\n      --request-timeout string         The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests. (default \"0\")\n  -l, --selector string                Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)\n  -s, --server string                  The address and port of the Kubernetes API server\n      --tls-server-name string         Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used\n      --token string                   Bearer token for authentication to the API server\n      --user string                    The name of the kubeconfig user to use\n      --username string                Username for basic authentication to the API server\n```\n\n## Installation\n\n### Krew\n\nUse [krew](https://krew.sigs.k8s.io/) plugin manager to install.\nSee [the guide](https://krew.sigs.k8s.io/docs/user-guide/setup/install/) to install [krew](https://krew.sigs.k8s.io/).\n\n```bash\nkubectl krew install secretdata\nkubectl secretdata --help\n```\n\n### Download the binary\n\nDownload the binary from [GitHub Releases](https://github.com/keisku/kubectl-secretdata/releases) and drop it in your `$PATH`.\n\n#### Linux\n\n```shell\ncurl -L -o kubectl-secretdata.tar.gz https://github.com/keisku/kubectl-secretdata/releases/download/v1.0.5/kubectl-secretdata_v1.0.5_linux_amd64.tar.gz\ntar -xvf kubectl-secretdata.tar.gz\nsudo mv kubectl-secretdata /usr/local/bin\n```\n\n#### Darwin(amd64)\n\n```shell\ncurl -L -o kubectl-secretdata.tar.gz https://github.com/keisku/kubectl-secretdata/releases/download/v1.0.5/kubectl-secretdata_v1.0.5_darwin_amd64.tar.gz\ntar -xvf kubectl-secretdata.tar.gz\nsudo mv kubectl-secretdata /usr/local/bin\n```\n\n#### Darwin(arm64)\n\n```shell\ncurl -L -o kubectl-secretdata.tar.gz https://github.com/keisku/kubectl-secretdata/releases/download/v1.0.5/kubectl-secretdata_v1.0.5_darwin_arm64.tar.gz\ntar -xvf kubectl-secretdata.tar.gz\nsudo mv kubectl-secretdata /usr/local/bin\n```\n\n#### Source\n\n```shell\ngo install github.com/keisku/kubectl-secretdata@latest\nsudo mv $GOPATH/bin/kubectl-secretdata /usr/local/bin\n```\n\n#### Validation\n\nValidate if `kubectl secretdata` can be executed.\n[The Kubernetes documentation](https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/#using-a-plugin) explains how to use a plugin.\n\n```shell\nkubectl secretdata --help\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeisku%2Fkubectl-secretdata","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeisku%2Fkubectl-secretdata","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeisku%2Fkubectl-secretdata/lists"}