Files
Dario LipicarandClaude Opus 4.8 cfd75a6832 Add "Force build" option to all release workflows (#2)
* Add "Force build" option to the release workflows (#5)

"Release all modules" and each per-module "Release <module>" workflow now
take a `force_build` toggle on the Run-workflow form (off by default).
When on, it replaces the current published release even if the version is
unchanged — e.g. the submodule pointer moved while metadata.json#version
stayed the same.

The toggle threads down the existing wrapper chain to the action's
`skip_if_published` input (inverted), so signing config still lives in one
place:

  release-all.yml / release-<module>.yml  --force_build-->
    _release-module.yml  --skip_if_published: !force_build-->
      logos-modules-release-action/release.yml@v1

- _release-module.yml: new `force_build` input -> skip_if_published
- release-all.yml: dispatch input, passed through the matrix fan-out
- release-module.yml.template: dispatch input (so generated per-module
  workflows get it too)
- catalog.sh: matching `--force` flag for `release` / `release-all`
- README: document the toggle

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>

* Regenerate per-module release workflows with Force build option

The shared workflow machinery now carries the `force_build` toggle (synced
from logos-modules-release-base via the merge of #5), but the 14 existing
per-module `release-<module>.yml` files were generated from the old
template and still used `workflow_dispatch: {}`. Regenerate them from the
updated template so each per-module "Release <module>" run also exposes the
Force build option (replace the current published release when the version
is unchanged).

Mechanically identical to re-running scripts/add-module.sh's template
substitution; the only change per file is the force_build input + its
passthrough to _release-module.yml.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 11:46:49 -03:00

36 lines
1.1 KiB
YAML

name: Release logos-chat-module
# Manually-triggered release for a single submodule. Delegates the
# build / verify / sign / publish pipeline to the local
# _release-module.yml reusable workflow so signing config lives in
# exactly one place.
#
# Source of truth for module name + version is
# submodules/logos-chat-module/metadata.json — read by the upstream
# logos-modules-release-action.
#
# This file is generated by scripts/add-module.sh from
# release-module.yml.template. Don't hand-edit the boilerplate; if you
# need to change the pipeline, edit _release-module.yml (shared) or the
# template (affects future modules).
on:
workflow_dispatch:
inputs:
force_build:
description: "Force build — replace the current published release if it has the same version."
type: boolean
default: false
# Forked repos default to a read-only GITHUB_TOKEN.
permissions:
contents: write
jobs:
release:
uses: ./.github/workflows/_release-module.yml
with:
module_path: submodules/logos-chat-module
force_build: ${{ inputs.force_build }}
secrets: inherit