Expand my Community achievements bar.

SOLVED

Cron Trigger Executes in UTC Despite IST Configuration

Avatar

Level 4

I have set up a cron-based alarm trigger for my action as follows:
category-erp:
license: Apache-2.0
actions:
$include: ./actions/category/erp/actions.config.yaml
triggers:
eachMidNight:
feed: /whisk.system/alarms/alarm
inputs:
cron: 0 0 * * *
timezone: IST
rules:
nscategorysync:
trigger: eachMidNight
action: categorysync

 

I’ve explicitly set the timezone to IST, but after deploying the app, the function is still triggering at UTC midnight instead of IST midnight. The logs written to my SFTP confirm this, with timestamps like:

{"message": "Body Parts, Bar, Bars All level Matched", "syncTime": "2025-08-06 00:00:31"}

Additionally, even when I update the cron expression (e.g., '*/2 1-4 * * *') from (* * * * *), it continues to run at the same UTC-based schedule.

Does Adobe App Builder only support UTC-based cron triggers despite the inputs specifying a timezone like IST? If not, is there a way to configure the timezone so the action can be executed in IST?

 

1 Accepted Solution

Avatar

Correct answer by
Level 2

@ShubhamAg2 

 

Additionally, even when I update the cron expression (e.g., '*/2 1-4 * * *') from (* * * * *), it continues to run at the same UTC-based schedule.

There are two ways to handle this:

  1. Rename the trigger identifier (name) and deploy the application. Here’s how you can do it:
application:
  runtimeManifest:
    packages:
      stock-commerce-sync:
        triggers:
          every2MinuteNEW:
            feed: /whisk.system/alarms/alarm
            inputs:
              cron: 0-30/2 * * * *
              timezone: IST
        rules:
          fetchInvFiles:
            trigger: every2MinuteNEW
            action: {action-name}​
  • Alternatively, you can delete the existing trigger and deploy the application with the updated frequency.
aio rt:trigger:delete {trigger-name}​


Choose the method that best suits your needs.

View solution in original post

3 Replies

Avatar

Employee

Triggers only support UTC at this time. In order to trigger at IST midnight, you will need to update your trigger to fire at 18:30 UTC: 

 

"30 18 * * *"

 

Avatar

Correct answer by
Level 2

@ShubhamAg2 

 

Additionally, even when I update the cron expression (e.g., '*/2 1-4 * * *') from (* * * * *), it continues to run at the same UTC-based schedule.

There are two ways to handle this:

  1. Rename the trigger identifier (name) and deploy the application. Here’s how you can do it:
application:
  runtimeManifest:
    packages:
      stock-commerce-sync:
        triggers:
          every2MinuteNEW:
            feed: /whisk.system/alarms/alarm
            inputs:
              cron: 0-30/2 * * * *
              timezone: IST
        rules:
          fetchInvFiles:
            trigger: every2MinuteNEW
            action: {action-name}​
  • Alternatively, you can delete the existing trigger and deploy the application with the updated frequency.
aio rt:trigger:delete {trigger-name}​


Choose the method that best suits your needs.

Avatar

Level 4

Thanks a lot @rxraj  for sharing this information. It is very insightful and saved me a lot of time.