{"id":25543434,"url":"https://github.com/ka1ne/harness-template-diff","last_synced_at":"2026-02-06T03:30:18.651Z","repository":{"id":277985952,"uuid":"934135799","full_name":"ka1ne/harness-template-diff","owner":"ka1ne","description":"GitHub Action that aids reviews for Harness template changes, providing semantic version diffs and formatted PR comments for easier code review.","archived":false,"fork":false,"pushed_at":"2025-02-17T12:28:48.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-17T13:30:27.893Z","etag":null,"topics":["automation","code-review","devops","github-actions","harness","template-management","version-control"],"latest_commit_sha":null,"homepage":"","language":"Python","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/ka1ne.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":"2025-02-17T10:33:26.000Z","updated_at":"2025-02-17T12:28:52.000Z","dependencies_parsed_at":"2025-02-17T13:30:30.751Z","dependency_job_id":"108f8b6d-e53c-4d06-bb88-41a23d8246bd","html_url":"https://github.com/ka1ne/harness-template-diff","commit_stats":null,"previous_names":["ka1ne/git-diff","ka1ne/harness-template-diff"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ka1ne%2Fharness-template-diff","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ka1ne%2Fharness-template-diff/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ka1ne%2Fharness-template-diff/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ka1ne%2Fharness-template-diff/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ka1ne","download_url":"https://codeload.github.com/ka1ne/harness-template-diff/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239793062,"owners_count":19697893,"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":["automation","code-review","devops","github-actions","harness","template-management","version-control"],"created_at":"2025-02-20T07:19:19.007Z","updated_at":"2026-02-06T03:30:18.591Z","avatar_url":"https://github.com/ka1ne.png","language":"Python","readme":"# Harness Template Diff Action 🔍\n\nA GitHub Action that automatically detects and reviews Harness template version changes in pull requests. It generates clear diffs and posts formatted review comments to help maintainers review template changes effectively.\n\n## Overview\n\nWhen templates are modified in a pull request, this action:\n- Detects template version changes\n- Compares versions using semantic versioning\n- Generates formatted diffs\n- Posts clear review comments\n- Provides helpful guidelines and resources\n\n## Setup\n\nAdd this workflow to your repository at `.github/workflows/template-review.yml`:\n\n    name: Template Review\n    \n    on:\n      pull_request:\n        paths:\n          - '.harness/templates/**'\n    \n    jobs:\n      review:\n        runs-on: ubuntu-latest\n        permissions:\n          pull-requests: write\n        steps:\n          - uses: actions/checkout@v4\n            with:\n              fetch-depth: 0\n              ref: ${{ github.event.pull_request.head.sha }}\n              \n          - name: Configure Git\n            run: |\n              git config --global user.email \"github-actions[bot]@users.noreply.github.com\"\n              git config --global user.name \"github-actions[bot]\"\n              git config --global --add safe.directory /github/workspace\n    \n          - name: Run Template Diff\n            uses: ka1ne/harness-template-diff-action@v1\n            env:\n              GITHUB_TOKEN: ${{ github.token }}\n              GITHUB_CONTEXT: ${{ toJSON(github) }}\n\n## Template Requirements\n\nTemplates must follow this structure:\n\n    .harness/templates/\n      TemplateName/\n        v0.1.0.yaml\n        v0.2.0.yaml\n        ...\n\n### Rules\n- Files must use semantic versioning: `vX.Y.Z.yaml`\n- Each template needs its own directory\n- Version numbers should follow semver guidelines:\n  - MAJOR: Breaking changes\n  - MINOR: New features, backward compatible\n  - PATCH: Bug fixes, backward compatible\n\n## Example Output\n\nWhen changes are detected, the action posts a comment like this:\n\n    # 🔍 Template Review Required\n    ### ⚠️ 1 template modification detected\n    \n    ## 📦 Template: `MyTemplate`\n    ### 🔄 Version Update: `v0.1.0` → `v0.2.0`\n    \n    \u003e ### 📝 Review Changes\n    \u003cdetails\u003e\n    \u003csummary\u003e\u003cb\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;👉 Click to expand diff ⤵️\u003c/b\u003e\u003c/summary\u003e\n    \n    - old version content\n    + new version content\n    \n    \u003c/details\u003e\n\n## Required Permissions\n\nThe action needs:\n- `pull-requests: write` permission in the workflow\n- `GITHUB_TOKEN` for API access\n- Git configuration for workspace access\n\n## Development\n\nTo contribute:\n1. Clone the repository\n2. Make your changes\n3. Test locally using: `python generate_template_diff.py`\n4. Submit a PR with your changes\n\n## License\n\nMIT License - see LICENSE file for details","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fka1ne%2Fharness-template-diff","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fka1ne%2Fharness-template-diff","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fka1ne%2Fharness-template-diff/lists"}