{"id":23613637,"url":"https://github.com/freckle/validate-dd-service-action","last_synced_at":"2025-11-06T09:30:33.624Z","repository":{"id":218585773,"uuid":"746831732","full_name":"freckle/validate-dd-service-action","owner":"freckle","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-27T00:29:03.000Z","size":29,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-01-27T01:24:11.417Z","etag":null,"topics":["terraform-managed"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/freckle.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2024-01-22T19:00:28.000Z","updated_at":"2025-01-14T14:38:50.000Z","dependencies_parsed_at":"2024-01-22T23:10:25.100Z","dependency_job_id":"c3862196-4ef3-455d-b006-ed034940dbcf","html_url":"https://github.com/freckle/validate-dd-service-action","commit_stats":null,"previous_names":["freckle/validate-dd-service-action"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freckle%2Fvalidate-dd-service-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freckle%2Fvalidate-dd-service-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freckle%2Fvalidate-dd-service-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/freckle%2Fvalidate-dd-service-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/freckle","download_url":"https://codeload.github.com/freckle/validate-dd-service-action/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239491349,"owners_count":19647810,"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":["terraform-managed"],"created_at":"2024-12-27T17:18:30.806Z","updated_at":"2025-11-06T09:30:33.568Z","avatar_url":"https://github.com/freckle.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Validate DD Service\n\nValidate a [`service.datadog.yaml` metadata file][dd-docs] using [JSON\nSchema][jsonschema-docs].\n\n[dd-docs]: https://docs.datadoghq.com/service_catalog/adding_metadata/#service-definition-yaml-files\n[jsonschema-docs]: https://json-schema.org/\n\nThere are probably simpler ways for you to implement a Workflow that\naccomplishes most of what you need (e.g. just install and execute something like\n[`ajv`][ajv]). However, we created this Action to:\n\n- Support multiple services as `---`-delimited Yaml documents\n- Automate respecting the `schema-version` key\n\n[ajv]: https://github.com/ajv-validator/ajv-cli#readme\n\n## Example\n\n```yaml\non:\n  pull_request:\n    paths:\n      - service.datadog.yaml\n\njobs:\n  validate-dd-service:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v4\n        with:\n          sparse-checkout: service.datadog.yaml\n          sparse-checkout-cone-mode: false\n      - uses: freckle/validate-dd-service-action@v1\n```\n\n## Inputs\n\n- **path**: Path to the file to validate. Default is `service.datadog.yaml`.\n- **fail**: Fail on any validation errors? Default is `true`.\n\n## Outputs\n\n- **invalid-services**: A JSON array of objects for any invalid services found.\n  Each object has a `name` and `errors` key.\n\n  For example,\n\n  ```json\n  [\n    {\n      \"name\": \"example-app-api\",\n      \"errors\": [\n        \"The property '#/links/0/url' of type null did not match the following type: string in schema 0afde55a-9ab5-543c-b02a-06065d9d613e#\",\n        \"The property '#/links/1/url' of type null did not match the following type: string in schema 0afde55a-9ab5-543c-b02a-06065d9d613e#\",\n        \"The property '#/integrations/pagerduty' of type object did not match the following type: string in schema 0afde55a-9ab5-543c-b02a-06065d9d613e\"\n      ]\n    }\n  ]\n  ```\n\n---\n\n[LICENSE](./LICENSE) | [CHANGELOG](./CHANGELOG)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreckle%2Fvalidate-dd-service-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffreckle%2Fvalidate-dd-service-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffreckle%2Fvalidate-dd-service-action/lists"}