Actions
This repo provides reusable Gitea Actions as composite actions that can be referenced with uses:.
Bump Version
Creates or updates the version in package.json, commits it, creates a matching Git tag, and pushes both.
Inputs:
node_version: Node.js version to use. Default:24release_line: optional release line for dev builds. Format:<major>.<minor>or<major>.<minor>.<patch>. Overrides branch, PR target, inferred ancestor release branch, andpackage.json.gitea_token: optional token used for checkout and push
Branch and tag rules:
main: creates release tags from the latest commit message (release/x.y.z,release/x.y,hotfix/x.y.z) or falls back to a patch bump.release/<major>.<minor>orrelease/<major>.<minor>.<patch>: creates the next beta tag for that release base, e.g.v2.4.0-beta.3orv2.4.1-beta.3.- all other branches: create a dev tag for the resolved release base using a UTC timestamp, e.g.
v2.4.0-dev.20260314153045.
Dev release line resolution order:
inputs.release_line- current branch if it matches
release/<major>.<minor>orrelease/<major>.<minor>.<patch> - PR target branch if it matches
release/<major>.<minor>orrelease/<major>.<minor>.<patch> - newest ancestor branch from
origin/release/*(for feature branches created from release branches outside PR context) major.minorfrompackage.json
If no release line can be resolved for a dev build, the action fails intentionally.
Examples:
Commit message examples on main:
release/2.4.0->v2.4.0release/2.4->v2.4.0hotfix/2.4.1->v2.4.1
Branch examples:
release/2.4-> nextv2.4.0-beta.Nrelease/v2.4.1-> nextv2.4.1-beta.N- feature branch in a PR to
release/2.4->v2.4.0-dev.<UTC_TIMESTAMP> - feature branch created from
release/v2.4.1(without PR base) ->v2.4.1-dev.<UTC_TIMESTAMP>when the release branch tip is an ancestor - feature branch outside a PR with
package.jsonversion2.4.0->v2.4.0-dev.<UTC_TIMESTAMP> - feature branch outside a PR with
release_line: 2.4->v2.4.0-dev.<UTC_TIMESTAMP>
Example:
jobs:
bump-version:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: tanztee/ci-cd/.github/actions/bump-version@main
with:
gitea_token: ${{ secrets.GITEA_TOKEN }}
Feature branch outside a PR:
jobs:
bump-version:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: tanztee/ci-cd/.github/actions/bump-version@main
with:
gitea_token: ${{ secrets.GITEA_TOKEN }}
release_line: 2.4
Build and Push Docker Image
Example:
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: tanztee/ci-cd/.github/actions/build-and-push@main
with:
registry: ${{ secrets.REGISTRY }}
registry_username: ${{ secrets.REGISTRY_USERNAME }}
registry_password: ${{ secrets.REGISTRY_PASSWORD }}
Deploy Image to Kubernetes
Example:
on:
workflow_dispatch:
inputs:
tag:
description: Image tag to deploy (e.g. v1.2.3)
required: true
type: string
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: tanztee/ci-cd/.github/actions/deploy-k8s@main
with:
tag: ${{ inputs.tag }}
namespace: oumta-dev
kubeconfig: ${{ secrets.KUBECONFIG }}
registry: ${{ secrets.REGISTRY }}
Description