Skip to content

ci: use dappnode-build-hash reusable workflow#43

Merged
3alpha merged 3 commits into
masterfrom
refactor/use-dappnode-build-hash
Jul 9, 2026
Merged

ci: use dappnode-build-hash reusable workflow#43
3alpha merged 3 commits into
masterfrom
refactor/use-dappnode-build-hash

Conversation

@3alpha

@3alpha 3alpha commented Jul 9, 2026

Copy link
Copy Markdown
Member

Context

This repo's build pipeline (an inlined build-hash job in main.yml) is now consolidated into a thin caller for the new dappnode/workflows/.github/workflows/dappnode-build-hash.yml@master reusable workflow. This produces a properly tagged IPFS hash comment authored by tropibot[bot] on every push to a non-default branch and on every PR.

Approach

  • .github/workflows/build.yml (new) — thin stub calling dappnode-build-hash with secrets: inherit. Triggers on push and workflow_dispatch only (no pull_request, since the push event already covers the build + comment case for tropibot PRs).
  • .github/workflows/main.yml — slimmed to the release job only. The inlined build-hash job is removed; actions/checkout upgraded to v7; actions/setup-node to v6; Node 24.

Test instructions

  1. Push a commit to a feature branch (or open a test PR).
  2. Verify the Build workflow runs once and posts a comment with an IPFS install link and hash tagged (by dappnodebot/build-action) and authored by tropibot[bot].
  3. After merge to the default branch, the Main workflow should run the release.

@3alpha 3alpha self-assigned this Jul 9, 2026
Splits the build-hash logic into a thin caller for the new
`dappnode/workflows/.github/workflows/dappnode-build-hash.yml@master`
reusable workflow. `build.yml` (new) now handles both push and
workflow_dispatch; `main.yml` is reduced to the release job only.

Also upgrades `actions/checkout` to v7 and Node 24 (with
`actions/setup-node@v6`) for the release job.

The reusable workflow auto-detects the event: on push to a non-default
branch it builds, pins to Pinata, and posts a comment authored by
tropibot[bot] on the PR; on push to the default branch it does a
test build only. (The previous `if: github.event_name == 'push'
&& github.ref != 'refs/heads/main'` guard is no longer needed
because the SDK already handles that case.)
@3alpha 3alpha force-pushed the refactor/use-dappnode-build-hash branch from 568343d to b680daa Compare July 9, 2026 08:20
The release job had `github.ref == 'refs/heads/main'` but tailscale's
default branch is `master`, so the release job was only firing via
`repository_dispatch`, never on push to master.

This was a copy-paste from Hermes-agent/openclaw (which use `main`)
during the build-hash refactor. Hermes-agent#29 and openclaw#73 are
unaffected.
@tropibot

tropibot Bot commented Jul 9, 2026

Copy link
Copy Markdown

Dappnode bot has built and pinned the built packages to an IPFS node, for commit: c301c5a

This is a development version and should only be installed for testing purposes.

  1. Package tailscale.dnp.dappnode.eth

Install link

Hash: /ipfs/QmfBNS4YLmuhfrUf9nr2D8DbYUYKMqFSJq73U1fKct6gVD

(by dappnodebot/build-action)

The release job used a broad `on.push` (no branch filter) plus an
`if:` condition that checked `github.ref == 'refs/heads/<default>'`.
This worked but was verbose and easy to get wrong (tailscale had
`refs/heads/main` instead of `refs/heads/master`).

Simplify: filter in the trigger itself, drop the `if` condition.
Same behavior, half the YAML. Also adds `workflow_dispatch` so the
release can be triggered manually.
@3alpha 3alpha merged commit a75c6aa into master Jul 9, 2026
1 check passed
@3alpha 3alpha deleted the refactor/use-dappnode-build-hash branch July 9, 2026 08:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant