{"id":21721442,"url":"https://github.com/informaticsmatters/format-support-template","last_synced_at":"2026-05-09T06:37:18.575Z","repository":{"id":80605038,"uuid":"331292386","full_name":"InformaticsMatters/format-support-template","owner":"InformaticsMatters","description":null,"archived":false,"fork":false,"pushed_at":"2025-11-26T12:40:18.000Z","size":62,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-29T03:25:31.477Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","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/InformaticsMatters.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-01-20T11:56:27.000Z","updated_at":"2025-11-26T15:30:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"f0fcd06b-0aba-4f40-b1dd-8acab6baeb52","html_url":"https://github.com/InformaticsMatters/format-support-template","commit_stats":null,"previous_names":[],"tags_count":4,"template":true,"template_full_name":null,"purl":"pkg:github/InformaticsMatters/format-support-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InformaticsMatters%2Fformat-support-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InformaticsMatters%2Fformat-support-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InformaticsMatters%2Fformat-support-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InformaticsMatters%2Fformat-support-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InformaticsMatters","download_url":"https://codeload.github.com/InformaticsMatters/format-support-template/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InformaticsMatters%2Fformat-support-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32810086,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"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":[],"created_at":"2024-11-26T02:16:51.322Z","updated_at":"2026-05-09T06:37:18.554Z","avatar_url":"https://github.com/InformaticsMatters.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# format-support-template\n\n[![build](https://github.com/InformaticsMatters/format-support-template/actions/workflows/build.yaml/badge.svg)](https://github.com/InformaticsMatters/format-support-template/actions/workflows/build.yaml)\n[![publish latest](https://github.com/InformaticsMatters/format-support-template/actions/workflows/publish-latest.yaml/badge.svg)](https://github.com/InformaticsMatters/format-support-template/actions/workflows/publish-latest.yaml)\n[![publish tag](https://github.com/InformaticsMatters/format-support-template/actions/workflows/publish-tag.yaml/badge.svg)](https://github.com/InformaticsMatters/format-support-template/actions/workflows/publish-tag.yaml)\n[![publish stable](https://github.com/InformaticsMatters/format-support-template/actions/workflows/publish-stable.yaml/badge.svg)](https://github.com/InformaticsMatters/format-support-template/actions/workflows/publish-stable.yaml)\n\n![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/informaticsmatters/format-support-template)\n\n---\n\n\u003e   Replace the following template text with your own documentation\n\nA template repository for **Informatics Matters DataTier dataset\nformat-support container image implementations**.\n\nUse this repository to start development of a container image that can be\nused by the DataTier Manager to support the loading of a dataset _type_.\n\nYou are required to preserve and adhere to the design rules\nthat can be found in this repository's `RULES.md`. \n\nPlease take time to familiarise yourself with following sections before\ndiscarding this text. Failing to comply with what's discussed here\nmay result in the image not passing any future automated acceptance testing\nthat may be deployed.\n\n-   Building\n-   Testing\n-   Required image tags\n-   Built-in GitHub Actions\n-   Updating the badge links\n\n## Building\nYou should be able to build your format-support image using `docker`: -\n\n    $ docker build . -t ${PWD##*/}:latest\n\nOr `docker-compose`: -\n\n    $ IMAGE_NAME=${PWD##*/} docker-compose build\n\n\u003e   The expectation is that you're using a recent Docker engine\n    (like `20.10.2`) and docker-compose utility (like `1.27.4`).\n\n## Testing\nFamiliarise yourself with `TESTING.md`, which describes\na strategy you can replicate while developing and testing your image.\n\n## Required image tags\nThe DataTier Manager will only execute formatter images tagged `:stable`\nso you **MUST** ultimately produce an image with this tag. You are also\nencouraged to produce a `:latest` tag and any specific tags that satisfy your\nown needs (with formats like `1.0.0-rc.1`, `1.0.0` and `2021.1`).\n\n\u003e   This repository's built-in GitHub Actions (see the next section)\n    will do all this for you.\n\n## Built-in GitHub Actions\nThe template contains a number of [GitHub Actions] that will automatically\nbuild the container image and also publish `:latest` and any tags you make to\nDocker Hub.\n\nThis relies on your docker registry mirroring your repository. If your docker\nrepository name does not mirror your GitHub repository name then you will need\nto adjust these actions. For example, if you create a GitHub repository\nfrom this one and call it 'XYZ/my-support-template' then you must be able to\npush docker images to 'xyz/my-support-template:latest'. If not, you will need\nto edit the workflow files to satisfy your needs.\n\n\u003e   Your images must be published to Docker Hub.\n\nThe following built-in actions are: -\n\n1.  **For every commit to main** an Action builds the docker image and\n    pushes it using the image tag `:latest`.\n    This is accomplished by the `publish-latest.yaml` Action.\n2.  **For every repository tag** an Action builds the docker image and\n    pushes it with the image tag `:\u003ctag\u003e`\n    This is accomplished by the `publish-tag.yaml` Action.\n    -   If the tag looks like a _formal_ release, i.e. is a 2 or 3-digit number\n        like `2021.1` or `1.0.0` an Action builds the docker image and\n        pushes it using the image tag `:\u003ctag\u003e` and the tag `:stable`\n        This is accomplished by the `publish-stable.yaml` Action.\n3.  **For every commit on a branch**, or a pull request to main, an Action\n    runs that just builds the docker image - but does not push it.\n    This is accomplished by the `build.yaml` Action.\n\nIn order for the above Actions to succeed you will need to define the following\nGitHub Repository (or Organisation) **secrets**: -\n\n-   `DOCKERHUB_USERNAME` A Docker Hub user\n-   `DOCKERHUB_TOKEN` A Docker Hub user password or, ideally, access token\n\n\u003e   Repositories created in the InformaticsMatters organisation\n    are already presented with these secrets as they are already\n    defined at the Organisation level.\n\n## Updating the badge links\nDon't forget to replace the `InformaticsMatters/format-support-template`\nvalues in the above badge links with the name of your own repository, otherwise\nyour badges will reflect the template repository's state, not yours.\n\n---\n\n[github actions]: https://github.com/features/actions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finformaticsmatters%2Fformat-support-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finformaticsmatters%2Fformat-support-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finformaticsmatters%2Fformat-support-template/lists"}