{"id":27161072,"url":"https://github.com/flownative/action-docker-publish-semver","last_synced_at":"2025-07-30T04:08:32.841Z","repository":{"id":65159805,"uuid":"231637155","full_name":"flownative/action-docker-publish-semver","owner":"flownative","description":"A Github action which creates multiple tags for Docker image according to semver","archived":false,"fork":false,"pushed_at":"2023-07-04T07:43:53.000Z","size":37,"stargazers_count":4,"open_issues_count":2,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-14T22:48:34.600Z","etag":null,"topics":["actions","docker","github-actions","release-automation","semver"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","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/flownative.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":"2020-01-03T17:47:47.000Z","updated_at":"2023-06-26T16:40:03.000Z","dependencies_parsed_at":"2025-04-09T00:08:53.808Z","dependency_job_id":"57259104-e637-4b21-a952-8b31c78dd98d","html_url":"https://github.com/flownative/action-docker-publish-semver","commit_stats":{"total_commits":31,"total_committers":1,"mean_commits":31.0,"dds":0.0,"last_synced_commit":"e948846c8478850a2b79e29d695223346d6d57c8"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/flownative/action-docker-publish-semver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flownative%2Faction-docker-publish-semver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flownative%2Faction-docker-publish-semver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flownative%2Faction-docker-publish-semver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flownative%2Faction-docker-publish-semver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flownative","download_url":"https://codeload.github.com/flownative/action-docker-publish-semver/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flownative%2Faction-docker-publish-semver/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267808122,"owners_count":24147357,"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","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"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":["actions","docker","github-actions","release-automation","semver"],"created_at":"2025-04-09T00:08:51.488Z","updated_at":"2025-07-30T04:08:32.784Z","avatar_url":"https://github.com/flownative.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker Publish SemVer Github Action\n\nThis Github action takes an existing, tagged Docker image from the a Docker image registry\n(for example, the Github Package Repository), creates multiple new tags according to \nSemantic Versioning, and publishes them to a given target registry.\n\nIn short, if you have an image `docker.pkg.github.com/acme/docker-magic-wand/magic-wand:1.2.3+4`,\nit will be tagged and released as:\n\n- `acme/magic-wand:1.2.3`\n- `acme/magic-wand:1.2`\n- `acme/magic-wand:1`\n\nand optionally as \n- `acme/magic-wand:latest`\n\nNotes:\n- if the given `tag_ref` has a \"v\" prefix (such as in \"v1.2.3\"), it will be removed before\n  using the tag for the target Docker image. Therefore, a target image tag will never have that\n  prefix\n- the \"build version\" suffix (\"4\" in the case of \"1.2.3+4\") will be omitted, because the plus\n  sign is not allowed as part of a Docker image tag. It also cannot be converted to \"-\", because\n  a dash is the delimiter for a \"pre-release\" part of a SemVer version string (e.g \"beta5\").\n\n## Additional custom tag\n\nYou may also specify a custom tag using the \"tag_custom\" argument. If the value of this argument\nis not empty, the image is additionally tagged using this given tag. See the example below for more\ndetails. \n\n## Example workflow\n\n````yaml\nname: Build and release Docker images\non:\n  push:\n    branches-ignore:\n      - '**'\n    tags:\n      - 'v*.*.*'\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n\n      - uses: actions/checkout@v2\n        with:\n          fetch-depth: 1\n\n      - name: Build Docker image\n        uses: flownative/action-docker-build@master\n        with:\n          tag_ref: ${{ github.ref }}\n          image_name: flownative/docker-base/base\n          registry_password: ${{ secrets.GITHUB_TOKEN }}\n\n      - name: Publish release to docker.io\n        uses: flownative/action-docker-publish-semver@master\n        with:\n          tag_ref: ${{ github.ref }}\n          tag_latest: 'yes'\n          tag_custom: 'some-custom-tag'\n\n          source_image_name: docker.pkg.github.com/flownative/docker-base/base\n          source_registry_username: github\n          source_registry_password: ${{ secrets.GITHUB_TOKEN }}\n          source_registry_endpoint: https://docker.pkg.github.com/v2/\n\n          target_image_name: flownative/base\n          target_registry_username: ${{ secrets.DOCKER_IO_REGISTRY_USER }}\n          target_registry_password: ${{ secrets.DOCKER_IO_REGISTRY_PASSWORD }}\n          target_registry_endpoint: https://index.docker.io/v1/\n````\n\n## Outputs\n\nAfter a successful run, the action provides your workflow with the following outputs:\n\n- `image_tag`: The full tag of the Docker image, e.g. \"1.2.3+42\" or \"2.12.19-beta1+23\"\n- `image_tag_major`: Major version part of the image tag, e.g. \"1\" if the version was 1.2.3+42\n- `image_tag_minor`: Minor version part of the image tag, e.g. \"2\" if the version was 1.2.3+42\n- `image_tag_patch`: Patch version part of the image tag, e.g. \"3\" if the version was 1.2.3+42\n- `image_tag_patch_with_pre_release`: 'Patch version part with suffix, e.g. \"3+42\" if the version was 1.2.3+42\n\n## Implementation Note\n\nThe repository of this action does not contain the actual implementation code. Instead, it's referring to a pre-built\nimage in its `Dockerfile` in order to save resources and speed up workflow runs.\n\nThe code of this action can be found [here](https://github.com/flownative/docker-action-docker-publish-semver).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflownative%2Faction-docker-publish-semver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflownative%2Faction-docker-publish-semver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflownative%2Faction-docker-publish-semver/lists"}