Skip to main content

How Life in Codes and ScriptRunner turned 'impossible' into reality for a global solar energy technology pioneer

A person wearing a safety helmet and casual work clothes stands on the right, smiling and pointing towards colourful digital icons on the left and above them. The icons include a globe, a lightbulb with a cog, a calendar, a cloud with a tick, and a browser window with multicoloured code lines, floating above a stylised solar panel—representing themes of coding, technology, planning, and sustainable engineering. The person holds a closed laptop and a rolled-up document under one arm.
What do you do when you have a client use case described as 'essentially impossible'? If you're Mihai, a consultant at Life in Codes, you reach for ScriptRunner.
Mihai helps organisations solve complex technical problems in the Atlassian ecosystem and beyond. Here, he shares how ScriptRunner unlocked functionality that his client had been advised wasn't possible—Microsoft Project–style automated dependency management—and real-time Databricks integration, all within Jira Cloud.

A common challenge: Going beyond out‑of‑the‑box Jira automation

Mihai's client is a solar energy technology company with around 2,000 team members distributed across the world. They had a mature Jira Cloud instance with well‑defined project management practices, but as they continued to grow and scale, they were looking for ways to:
  • Automate complex workflows that span external systems (including Databricks and AWS Lambda).
  • Model advanced project dependencies, work calendars, and holidays directly in Jira.
Standard Jira automation and Marketplace apps couldn't fully cover their requirements—a familiar frustration for many businesses with complex use cases. They approached Life in Codes for support and began working with Mihai, who knew that ScriptRunner for Jira Cloud would be indispensable in creating what the client needed.
Product
ScriptRunner for Jira Cloud
Client
Solar energy technology manufacturer, ~2,000 Jira users
Tech stack
Jira Cloud, ScriptRunner for Jira Cloud, Databricks, AWS Lambda
Key outcomes
Automated integration between Jira Cloud and Databricks using ScriptRunner and AWS Lambda.
Custom project scheduling in Jira that emulates Microsoft Project–style dependency handling.
Better governance and consistency across thousands of Jira users.

How does ScriptRunner go beyond out-of-the box automation?

See the comparison page to understand how ScriptRunner for Jira can help you achieve more than what's possible with Jira Automation alone.
Icon of a white arrow in a pink circle, pointing right

Scenario one: Integrating Jira Cloud and Databricks with ScriptRunner and AWS Lambda

This client needed to integrate Databricks with Jira Cloud so their teams could access real-time production metrics and quality data without leaving their workflow.
Mihai encountered some technical constraints that made this use case more complex:
  • Asynchronous operations in Databricks: Jira must submit a job and then wait for results.
  • Strict polling rate limits: sending too many requests to Databricks will trigger a HTTP 429 error.
  • ScriptRunner's Cloud execution window: scripts must execute within four minutes.
  • Data access patterns: the solution must avoid querying SQL directly, instead using Databricks views keyed by a serial number.
Without a solution for the integration, teams had to manually export data from Databricks and upload it into Jira Cloud—a time-consuming process that delayed decision-making and risked introducing errors.

The ScriptRunner solution

Mihai used ScriptRunner to orchestrate the process and AWS Lambda to host the Databricks logic:
  • Jira, via ScriptRunner, submits a request to Databricks and receives a ticket ID.
  • The request includes a serial number parameter to identify which data to retrieve from a Databricks view.
  • A polling mechanism implemented in ScriptRunner periodically checks the ticket status.
  • An exponential backoff strategy gradually increases wait times between polls to avoid 429 rate‑limit errors.
  • The overall script design ensures everything completes within the required four‑minute time window.
Icon of a window with a code symbol inside it

The outcome

This unlocked a data flow that the client had assumed would require heavy custom development outside Jira—or might not be possible at all within Jira Cloud. The solution Mihai built with ScriptRunner gave them:
A robust, production‑ready integration.
Real-time data access.
Improved user experience, with Databricks data retrieval enabled from within their existing workflows.
Reliable operations with the heavy lifting offloaded to AWS Lambda.
Teams can now make data-driven decisions faster with metrics available directly in their Jira workflow, eliminating the delays and errors associated with manual data transfers.
Icon of a white arrow in a pink circle, pointing right

Scenario two: Microsoft Project–style dependency management and calendars in Jira Cloud

The same client's project managers were also looking for an enhanced project management experience in Jira Cloud. They were used to the capabilities of Microsoft Project, particularly the ability to have predecessor–successor relationships between tasks, with automatic shifting of dependent tasks when dates change, and intelligent incorporation of different working weeks, working hours, and public holidays across the countries where their global teams are based.
In Jira Cloud, they wanted the same behaviour:
  • If item A is delayed, item B (which depends on A) should automatically push out.
  • The system must understand the full chain of linked issues (a large dependency tree).
  • Different teams work different days/hours and have different holiday calendars, so this must be factored into project timelines and work allocation.
  • All of this has to obey the four‑minute script execution limit, even for up to 300 issues at a time.
The client had previously been advised that this level of automation was 'essentially impossible' in Jira Cloud—but not for ScriptRunner!

The ScriptRunner solution

Mihai designed and implemented a two‑stage automation using ScriptRunner:
Step one: Adding configurable work calendars in Jira
  • Work patterns and public holidays for different global locations are stored in a dedicated Jira project.
  • Users can adjust their individual working day patterns (e.g. Monday–Friday, Sunday–Thursday), working hours per day, and holiday calendars.
  • ScriptRunner retrieves and caches this information when it runs, so it doesn't have to be repeatedly checked.
Calendar icon with a clock inside it
Step two: Creating ScriptRunner jobs for planning and execution
Mihai separated planning and execution into two ScriptRunner jobs, thereby ensuring each script execution would stay within the four‑minute runtime limit while still being able to handle large, complex projects.
The first job traverses linked issues to build a full dependency tree—even with hundreds of linked issues—and applies calendar rules to calculate new start and due dates when a change happens. It then generates an execution plan in JSON format and saves that JSON plan to a Jira issue (e.g. a task under an epic).
The second job is then triggered automatically once the plan exists. It reads the JSON plan and applies each change to the relevant Jira issues, updating tickets in bulk with no manual effort needed.
Icon of a process flowchart
It was really a big enablement piece for their project managers… They were looking at their big plans and seeing all of those things start to shift.
Mihai
Life in Codes consultant

The outcome

This initiative was delivered by Mihai, a single consultant, in an impressive five-week timeframe—on top of requirements that had taken the organisation roughly a year to define internally. With the solution in place, the client's project managers can now:
See full dependency chains directly in Jira Cloud.
Adjust one task and have Jira automatically recalculate dates across the plan.
Respect different working patterns and holidays across countries.
Use Jira Cloud as a central planning tool, on a par with the experience they previously enjoyed in Microsoft Project.
Timelines for each project can be estimated, tracked, and adjusted far more accurately, with information in Jira Cloud always up to date, and no more time lost to making manual changes.
ScriptRunner icon: a white trainer on a pink circle background

Why ScriptRunner?

For this client's requirements, ScriptRunner for Jira Cloud was the only answer. It was able to bridge the gaps in native Jira Cloud functionality and create exactly what the client needed, even when they weren't sure it was possible. Adding new capabilities in Jira Cloud and integrating with other systems that the client's teams already used meant minimal disruption to their existing routines. They now have a better experience with reduced context-switching, more accurate information when and where they need it, and more time to focus on building the future of energy technology.
ScriptRunner turns Jira from a work tracker into a workflow engine that automates the boring stuff, enforces your rules, and makes the tool fully fit the way your business actually works.
Mihai
Life in Codes consultant

Need to solve a tricky use case of your own?

ScriptRunner is the key to designing and implementing solutions that make your tools work for you. Try it free for 30 days and see what's possible.