{"id":21243593,"url":"https://github.com/gabe565/pre-commit-fluxcd","last_synced_at":"2025-07-10T20:31:54.029Z","repository":{"id":213166980,"uuid":"733121638","full_name":"gabe565/pre-commit-fluxcd","owner":"gabe565","description":"Pre-Commit hooks for FluxCD GitOps repos","archived":false,"fork":false,"pushed_at":"2025-05-05T00:12:55.000Z","size":67,"stargazers_count":11,"open_issues_count":6,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-05T01:24:32.526Z","etag":null,"topics":["fluxcd","gitops","pre-commit"],"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/gabe565.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":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-12-18T15:59:31.000Z","updated_at":"2025-05-05T00:12:58.000Z","dependencies_parsed_at":"2024-01-15T10:00:39.385Z","dependency_job_id":"8e5509e7-44d6-4f17-ba5c-366e5bd79f9f","html_url":"https://github.com/gabe565/pre-commit-fluxcd","commit_stats":null,"previous_names":["gabe565/pre-commit-gitops"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/gabe565/pre-commit-fluxcd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabe565%2Fpre-commit-fluxcd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabe565%2Fpre-commit-fluxcd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabe565%2Fpre-commit-fluxcd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabe565%2Fpre-commit-fluxcd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gabe565","download_url":"https://codeload.github.com/gabe565/pre-commit-fluxcd/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabe565%2Fpre-commit-fluxcd/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264652704,"owners_count":23644314,"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":["fluxcd","gitops","pre-commit"],"created_at":"2024-11-21T01:12:53.512Z","updated_at":"2025-07-10T20:31:53.516Z","avatar_url":"https://github.com/gabe565.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pre-Commit Hooks for FluxCD\n\nA collection of [Pre-Commit](https://pre-commit.com) hooks for FluxCD GitOps repos.\n\n## Installation\n\nAdd the following snippet to `.pre-commit-config.yaml`.\n\n```yaml\nhooks:\n  - repo: https://github.com/gabe565/pre-commit-fluxcd\n    rev: ''  # Use the sha / tag you want to point at\n    hooks:\n      - id: check-charts-pinned\n      - id: check-charts-support-renovate\n      - id: check-drift-detection-enabled\n      - id: check-secrets-encrypted\n```\n\n## Hooks\n- [check-charts-pinned](#check-charts-pinned)\n- [check-charts-support-renovate](#check-charts-support-renovate)\n- [check-drift-detection-enabled](#check-drift-detection-enabled)\n- [check-secrets-encrypted](#check-secrets-encrypted)\n\n### check-charts-pinned\nThis hook ensures `HelmRelease` Kubernetes manifests have a version pinned at `.spec.chart.spec.version`.\n\n### check-charts-support-renovate\n[Renovate](https://docs.renovatebot.com/) will only update `HelmRelease` versions if [the following conditions are satisfied](https://docs.renovatebot.com/modules/manager/flux/#helmrelease-support):\n- The `HelmRelease` resource has `metadata.namespace` or `spec.chart.spec.sourceRef.namespace` set\n- The referenced `HelmRepository` has `metadata.namespace` set.\n\nThis hook ensures these conditions are satisfied.\n\n### check-drift-detection-enabled\n\nThis hook ensures `HelmRelease` manifests have [drift detection](https://fluxcd.io/flux/components/helm/helmreleases/#drift-detection) enabled.\n\nIf you would like to allow `warn` mode, add the `--allow-warn` arg:\n```yaml\n- id: check-drift-detection-enabled\n  args:\n    - --allow-warn\n```\n\n### check-secrets-encrypted\nThis hook ensures `.env` files, and `Secret` Kubernetes manifests are encrypted using [SOPS](https://github.com/getsops/sops).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabe565%2Fpre-commit-fluxcd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgabe565%2Fpre-commit-fluxcd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabe565%2Fpre-commit-fluxcd/lists"}