
PipeShift
Migrate your CI pipelines. We make sure they actually run.
6 followers
Migrate your CI pipelines. We make sure they actually run.
6 followers
PipeShift converts Jenkins, GitLab CI, CircleCI and Azure DevOps pipelines to GitHub Actions — then runs the result in your repository, reads the failing log, fixes it, and runs it again until CI is green. Point it at a repo: it finds every pipeline, converts them, and opens one pull request. Every file is checked first — the YAML parses and every referenced action is a real repository. Jobs that deploy or touch secrets are never run, and the PR says which were skipped.




Honestly the confidence score idea is great, but it'd be super helpful if you could let me click on it and see exactly which lines were flagged as risky or need a manual look. Like a little inline warning right in the yaml preview so I know where to double check before pushing. Would save me from hunting through the diff.
@barryallen Barry — built this today, actually. Warnings now show up as a little warning icon right in the gutter of the generated code, and hovering it pops up the exact text, same pattern as any inline linter. No more cross-referencing a list against the code by eye. Would genuinely love your eyes on it if you get a chance to run a conversion again — curious whether the line attribution is accurate enough to be useful on messier pipelines, not just the simple ones I tested with.
Would love to see a side-by-side diff view showing what changed and why, especially for plugin mappings. That would make it way easier to review tricky conversions before committing the workflow to my repo.
@jeangrey Jean, this one's live too — there's now a "View Diff" toggle right under the results that gives you a proper side-by-side comparison, plus a dedicated Plugin Mappings table (source → target → notes) so you can see exactly what got translated and why without having to infer it from the output alone. Take a look and let me know if the mapping explanations are actually useful or too thin for the trickier cases.
Honestly the bidirectional thing is really nice. One thing though, it would help a lot if you could batch a whole folder of Jenkinsfiles at once instead of pasting them one by one. Lots of repos have like 20-50 pipelines and doing them individually gets old fast.
@lisasimpson Lisa, this is a really fair ask and honestly the one I hear most from anyone with a real repo (20-50 pipelines is normal, not an edge case). Not built yet — it's a bigger piece of work than it looks like on the surface, since batch processing raises real questions about how it interacts with usage limits and how results get delivered back to you (a results page nobody wants to copy-paste from, vs. something that opens a PR directly). It's on my radar and I'm actively thinking through the right shape for it rather than bolting on a quick version. Appreciate you flagging the actual scale you're dealing with — that's useful context I didn't have.
I'm a DevOps engineer. A new pipeline never runs first time — it takes two or three attempts, and after a big change, eight or ten. That's the part that actually costs a week.
Every migration tool sells the conversion. None of them stay for the attempts. So PipeShift does: it pushes the migrated workflow, watches the run, reads the log, fixes what broke, and pushes again — up to three times.
The safety rule is inverted on purpose. A job runs only if we can show it's safe — not "unless we spot something dangerous". Anything with a secret, a deploy verb, write permissions, or a job we can't read is refused. I'd rather under-verify than run someone's terraform apply.
Free tier converts and scans. Verification is paid, because it costs real AI calls and your Actions minutes — and I'd rather charge for it than pretend it's free.
Happy to answer anything, including what it can't do yet.