CI: standardize workflows - tests mandatory, remove :latest push on master #10

Merged
jcabillot merged 3 commits from fix/workflow-standard into master 2026-06-13 17:37:43 -04:00
Owner

Standardize CI workflows

This PR standardizes the Gitea Actions workflows for web/phpapache to match the proven htpasswd pattern.

Changes:

main.yaml (push to master):

  • BREAKING: Remove the build-push job that pushed :latest to Docker Hub on every master push
  • Add test job as a mandatory step before build and tag
  • Add build job that just builds the image locally (no push)
  • tag job now depends on build passing
  • Switch from GITHUB_TOKEN to org-level SA_TOKEN_ACTION_PUSH_TAGS secret
  • Git URL: scm.cabillot.eu/web/phpapache.git

cron.yaml (nightly rebuild):

  • Add mandatory test job before build-push
  • build-push now needs: [test]
  • Remove the unconditional :latest tag push; only push {latest-tag}-latest
  • Cron schedule preserved: '0 0 * * *'

tag.yaml (tag release):

  • Add mandatory test job before build-push
  • build-push now needs: [test]
  • Add type=ref,event=tag,suffix=-latest meta tag alongside the plain tag reference

Rationale:

  • Tests are now mandatory before any image is built or pushed
  • No more :latest push on every master commit — that created unnecessary churn without a tag
  • Tag releases now push both {tag} and {tag}-latest for clear versioned images
## Standardize CI workflows This PR standardizes the Gitea Actions workflows for `web/phpapache` to match the proven htpasswd pattern. ### Changes: **main.yaml** (push to master): - **BREAKING**: Remove the `build-push` job that pushed `:latest` to Docker Hub on every master push - Add `test` job as a mandatory step before build and tag - Add `build` job that just builds the image locally (no push) - `tag` job now depends on `build` passing - Switch from `GITHUB_TOKEN` to org-level `SA_TOKEN_ACTION_PUSH_TAGS` secret - Git URL: `scm.cabillot.eu/web/phpapache.git` **cron.yaml** (nightly rebuild): - **Add mandatory `test` job** before `build-push` - `build-push` now `needs: [test]` - Remove the unconditional `:latest` tag push; only push `{latest-tag}-latest` - Cron schedule preserved: `'0 0 * * *'` **tag.yaml** (tag release): - **Add mandatory `test` job** before `build-push` - `build-push` now `needs: [test]` - Add `type=ref,event=tag,suffix=-latest` meta tag alongside the plain tag reference ### Rationale: - Tests are now mandatory before any image is built or pushed - No more `:latest` push on every master commit — that created unnecessary churn without a tag - Tag releases now push both `{tag}` and `{tag}-latest` for clear versioned images
cloudix_mcp_server added 3 commits 2026-06-13 16:27:50 -04:00
jcabillot merged commit d89f16cfe2 into master 2026-06-13 17:37:43 -04:00
jcabillot deleted branch fix/workflow-standard 2026-06-13 17:37:43 -04:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: web/phpapache#10