Remove stale CI: .github workflows and Jenkinsfile #56

Closed
opened 2026-08-15 13:42:47 +02:00 by myrmidex · 1 comment
Owner

The repo is hosted on Forgejo and has working .forgejo/workflows/, but still carries two other CI systems' config.

Scope

.github/workflows/lint.yml — Laravel starter-kit leftover. Targets develop/main on PHP 8.4 (project is 8.3), runs npm run format and npm run lint. Notably it runs vendor/bin/pint without --test, i.e. it rewrites files rather than checking them — with a commented-out auto-commit step below it.

.github/workflows/tests.yml — same origin, same develop/main targeting, PHP 8.4.

Jenkinsfile — a tag-triggered Jenkins pipeline at the repo root, with a hardcoded token: 'tag-trigger-secret'. Superseded by .forgejo/workflows/build.yml, which already builds and pushes on v* tags.

ffr has none of these — no .github/, no Jenkinsfile.

Check before deleting

develop is referenced by both GitHub workflows but is not the main branch. Confirm no Jenkins instance is still wired to this repo before removing the Jenkinsfile — if one is, disable the job first rather than just deleting the file.

Acceptance criteria

  • .github/ removed entirely
  • Jenkinsfile removed
  • .forgejo/workflows/ is the only CI config in the repo
  • A push to a release branch still triggers CI
The repo is hosted on Forgejo and has working `.forgejo/workflows/`, but still carries two other CI systems' config. ## Scope **`.github/workflows/lint.yml`** — Laravel starter-kit leftover. Targets `develop`/`main` on **PHP 8.4** (project is 8.3), runs `npm run format` and `npm run lint`. Notably it runs `vendor/bin/pint` **without `--test`**, i.e. it rewrites files rather than checking them — with a commented-out auto-commit step below it. **`.github/workflows/tests.yml`** — same origin, same `develop`/`main` targeting, PHP 8.4. **`Jenkinsfile`** — a tag-triggered Jenkins pipeline at the repo root, with a hardcoded `token: 'tag-trigger-secret'`. Superseded by `.forgejo/workflows/build.yml`, which already builds and pushes on `v*` tags. ffr has none of these — no `.github/`, no Jenkinsfile. ## Check before deleting `develop` is referenced by both GitHub workflows but is not the main branch. Confirm no Jenkins instance is still wired to this repo before removing the Jenkinsfile — if one is, disable the job first rather than just deleting the file. ## Acceptance criteria - [ ] `.github/` removed entirely - [ ] `Jenkinsfile` removed - [ ] `.forgejo/workflows/` is the only CI config in the repo - [ ] A push to a release branch still triggers CI
myrmidex added this to the v0.4.0 milestone 2026-08-15 13:42:47 +02:00
myrmidex added the
enhancement
label 2026-08-15 13:42:47 +02:00
myrmidex self-assigned this 2026-08-15 13:42:47 +02:00
Author
Owner

Done — 18fa900

.forgejo/workflows/ is now the only CI config in the repo.

.github/workflows/lint.yml and tests.yml — Laravel starter-kit leftovers targeting develop/main on PHP 8.4. Both were already broken: lint.yml calls npm run format and npm run lint, and both scripts were deleted in #52 along with prettier and eslint. It also ran vendor/bin/pint without --test, rewriting files rather than checking them.

Jenkinsfile — the ticket asked to confirm it was not still wired before deleting. It was doubly dead:

  • Pushes to codeberg.org; the remote has been forge.lvl0.xyz since ab957d3
  • Builds from docker/Dockerfile, a path that does not exist — the real path is docker/production/Dockerfile

It could not have succeeded even if triggered. .forgejo/workflows/build.yml already handles v* tags.

Caveat: I cannot see from the repo whether a Jenkins instance still points here. If one does, it will now fail on a missing Jenkinsfile rather than a missing Dockerfile — worth disabling the job if you know of one.

Beyond the ticket

ci.yml ran pull requests only against main, while ffr covers [main, 'release/*'] — so PRs targeting a release branch got no CI at all. Fixed in the same commit; same CI-hygiene theme.

Gates

PHPUnit 33 tests, 81 assertions PASS · npm run build PASS. No PHP touched.

Verified ci.yml still triggers on release/* pushes, so this branch keeps coverage, and that it references nothing deleted by #52 — the build job is just npm ci + npm run build.

## Done — `18fa900` `.forgejo/workflows/` is now the only CI config in the repo. **`.github/workflows/lint.yml` and `tests.yml`** — Laravel starter-kit leftovers targeting `develop`/`main` on PHP 8.4. Both were **already broken**: `lint.yml` calls `npm run format` and `npm run lint`, and both scripts were deleted in #52 along with prettier and eslint. It also ran `vendor/bin/pint` without `--test`, rewriting files rather than checking them. **`Jenkinsfile`** — the ticket asked to confirm it was not still wired before deleting. It was doubly dead: - Pushes to `codeberg.org`; the remote has been `forge.lvl0.xyz` since `ab957d3` - Builds from `docker/Dockerfile`, a path that does not exist — the real path is `docker/production/Dockerfile` It could not have succeeded even if triggered. `.forgejo/workflows/build.yml` already handles `v*` tags. **Caveat:** I cannot see from the repo whether a Jenkins instance still points here. If one does, it will now fail on a missing Jenkinsfile rather than a missing Dockerfile — worth disabling the job if you know of one. ## Beyond the ticket `ci.yml` ran pull requests only against `main`, while ffr covers `[main, 'release/*']` — so PRs targeting a release branch got no CI at all. Fixed in the same commit; same CI-hygiene theme. ## Gates PHPUnit 33 tests, 81 assertions PASS · `npm run build` PASS. No PHP touched. Verified `ci.yml` still triggers on `release/*` pushes, so this branch keeps coverage, and that it references nothing deleted by #52 — the `build` job is just `npm ci` + `npm run build`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lvl0/incr#56
No description provided.