diff --git a/README.md b/README.md index cd88559..f7adc92 100644 --- a/README.md +++ b/README.md @@ -1,31 +1,44 @@ -# Go CI/CD Composite Action +# ⚙️ Go CI/CD Composite Action A reusable GitHub Action for Go projects, forged to handle various CI/CD scenarios like a true warrior of code. Supports protected branches, tagged releases, and minimal development flows — with optional Docker image publishing for applications. +> “We don’t just build software — we forge legacy.” + +--- + ## 🔧 Features - Multiple workflow modes: `protected`, `tag`, and `minimal` - Go version configuration -- Automatic test execution with code coverage +- Automatic test execution with coverage reporting - Build support for both libraries and applications - Conditional Docker image creation and publishing -- Composable and easy to integrate in any Go project +- Full registry authentication support +- Easy integration across all Go-based grimoires + +--- ## 📥 Inputs -| Input Name | Description | Required | Default | -|---------------------|-------------------------------------------------------------------------|----------|---------------| -| `workflow-type` | Type of CI/CD flow (`protected`, `minimal`, `tag`) | Yes | `protected` | -| `go-version` | Go version to install and use | No | `1.24` | -| `build-type` | Type of build (`application`, `library`) | No | `application` | -| `container-registry`| Container registry URL (used if publishing Docker image) | Yes | — | -| `publish-docker` | Whether to build and push Docker image (`true` / `false`) | No | `true` | +| Input Name | Description | Required | Default | +|----------------------|-----------------------------------------------------------|----------|---------------| +| `workflow-type` | Type of CI/CD flow (`protected`, `minimal`, `tag`) | Yes | `protected` | +| `go-version` | Go version to install and use | No | `1.24` | +| `build-type` | Type of build (`application`, `library`) | No | `application` | +| `container-registry` | Container registry URL (used if publishing Docker image) | Yes | — | +| `registry-username` | Your container registry username | Yes | — | +| `registry-token` | Access token or password for container registry | Yes | — | +| `publish-docker` | Whether to build and push Docker image (`true` / `false`) | No | `true` | + +--- ## ⚙️ Workflow Types -- **protected**: Full CI/CD pipeline for mainline branches. Runs tests, builds the binary, and optionally publishes a Docker image. -- **minimal**: Lean setup for pull requests or early development. Runs tests and builds only. -- **tag**: Triggered on Git tags. Behaves like `protected`, ideal for versioned releases. +- **protected** – Full battle mode. Ideal for `main`/`release` branches. Tests, builds, and publishes. +- **minimal** – Light mode for PRs and early dev. Just tests and builds. +- **tag** – Triggered on Git tags. Behaves like `protected`, meant for releases. + +--- ## 🚀 How to Use