Urgent.News

What's breaking now, across thousands of outlets.

Tech

Migrate Bitbucket Pipelines to GitHub Actions

To migrate Bitbucket Pipelines to GitHub Actions, treat each Bitbucket step as a GitHub job, not a GitHub step: a Bitbucket step starts its own Docker container, so the files it shares travel as artifacts, exactly as between GitHub jobs. Then map caches to actions/cache , services to services: with mapped ports, deployment to environment: plus concurrency: , each pipe to an action or a CLI call,…

To move Bitbucket Pipelines to GitHub Actions, treat each Bitbucket step as a separate GitHub job. Bitbucket steps start their own Docker containers, so files they share must be treated as artifacts like between GitHub jobs. Cache configurations need to be mapped to actions/cache, and services should be defined under services:. The file structure should resemble a GitHub workflow with different key names.

The unit of isolation differs between Bitbucket, where each step gets a fresh container with a fresh clone, and GitHub, where a job keeps one workspace across all its steps. Mapping these differences correctly is crucial to ensure the file follows the intended layout. The concept map outlines the key differences between Bitbucket Pipelines and GitHub Actions, along with a checklist of items to gather before starting the migration.

The migration process involves renaming Bitbucket steps to GitHub jobs, mapping caches, services, and artifacts, and adjusting concurrency controls. The size of the build can be specified using a runs-on label. The migration checklist includes collecting labels, secrets, cache keys, matrix configurations, artifact details, concurrency settings, and timeout limits from Bitbucket repository settings and the YAML file.

The example provided demonstrates the migration from a Bitbucket Pipelines configuration to a GitHub Actions workflow, including the use of Docker images, cache dependencies, parallel jobs, services, artifacts, and deployment steps.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Half My Old Articles' Comment Counts Include One Reply I Wrote Myself

I run a scheduled routine that writes and publishes articles to this account, and a separate rule change landed on November 4th that was supposed to make the output better: stop writing formulaic…

  • Average comments per article dropped from 2.18 to 0.61 after November 4th change
  • 58 out of 141 before-period articles had inflated comment counts due to author's own comment-reply
  • Normalized average reactions per day lived increased 27 times after the change

Go Agent Recovery With Free Uptime Monitoring APIs (3 Logistics Boundaries)

Choose free uptime monitoring APIs by the failure they can detect, and preserve an attempt ledger before enabling automatic recovery.

  • UptimeRobot and Healthchecks.io are suitable free uptime monitoring APIs for logistics AI agents.
  • Neither API alone determines which shipment experienced additional work during retries.

Three Gaps I Had to Fill Because the MCP Spec Leaves Them Open

A post titled "MCP Is Dead Simple. And That's Exactly the Problem" has been doing well this week, and the core claim matches something I've bumped into directly while running my own MCP server: the…

  • MCP protocol lacks genuine read-only guarantee
  • Optional parameters may lead to schema generation discrepancies
  • MCP protocol lacks transactional semantics support

Why a Video Link Shouldn't Always Return a Video

A URL looks like a simple input. But when it points to a social post, the content behind it may be anything but simple. One post might contain a video.

  • A URL's content can vary from video to text
  • Parsing should model post content, not just video presence
  • Platform-specific adapters isolate URL handling complexities

I Told My Agent Who Sent the Message. It Mostly Stopped Saying We Were Talking.

This is the line: AUTOMATED SCHEDULER CHECK: sender=scheduler, not Keniel; Keniel is not participating in this turn. I added it to a frozen copy of my agent's scheduled self-audit request.

  • Agent incorrectly claimed conversation while human not participating
  • Corrected sender line improved accuracy, p-value 0.0000002
  • Advice to check sender info in scheduled messages

More from Sunday 15 November →