PluginBench
Skill
Pass
Audit score 90

huawei-cloud-functiongraph-trigger-create

huaweicloud/huaweicloud-skills

Create and configure scheduled TIMER triggers for Huawei Cloud FunctionGraph functions using Quartz Cron expressions.

What is huawei-cloud-functiongraph-trigger-create?

This skill enables creation of scheduled triggers for Huawei Cloud FunctionGraph serverless functions with flexible Quartz Cron expression support. Use it when you need to set up periodic task execution, automated backups, health checks, or time-based notifications on your cloud functions.

  • Create TIMER-type triggers for FunctionGraph functions with Cron or Rate scheduling
  • Support Quartz Cron expressions (6-7 field format) for precise scheduling control
  • Configure trigger status (ACTIVE/DISABLED) and optional user event data
  • Validate and deploy triggers with confirmation checklists before creation
  • Monitor trigger execution history and verify configuration in FunctionGraph console

How to install huawei-cloud-functiongraph-trigger-create

npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-functiongraph-trigger-create
Prerequisites
  • Python 3.9 or higher installed
  • Huawei Cloud FunctionGraph SDK installed (pip install huaweicloudsdkfunctiongraph)
  • Environment variables configured: HUAWEI_AK, HUAWEI_SK, HUAWEI_REGION, HUAWEI_PROJECT_ID
  • Target FunctionGraph function already exists in the specified region
  • Stable network connection to Huawei Cloud API endpoints
Claude Code
Cursor
Windsurf
Cline

How to use huawei-cloud-functiongraph-trigger-create

  1. 1.Navigate to the scripts directory and prepare your function URN from the FunctionGraph console
  2. 2.Construct your Cron expression using Quartz format (e.g., '0 0 8 * * ?' for 8 AM daily) or Rate format (e.g., '5m' for every 5 minutes)
  3. 3.Run the create_trigger.py script with required parameters: function-urn, name, schedule, schedule-type, and optional status
  4. 4.Verify the trigger was created successfully by checking the returned trigger ID and status
  5. 5.Navigate to FunctionGraph console → Function details → Triggers tab to confirm the trigger appears and monitor execution history

Use cases

Good for
  • Schedule daily data synchronization tasks at specific times using Cron expressions
  • Set up periodic health checks and monitoring functions to run at fixed intervals
  • Configure automated backup operations to execute on a defined schedule
  • Create time-based notification systems that trigger function execution at specified times
  • Implement recurring maintenance tasks with flexible scheduling patterns
Who it's for
  • Cloud engineers managing serverless functions on Huawei Cloud
  • DevOps professionals setting up automated periodic tasks
  • Backend developers implementing scheduled data processing pipelines
  • System administrators configuring monitoring and health check routines

huawei-cloud-functiongraph-trigger-create FAQ

What is the difference between Cron and Rate schedule types?

Cron uses Quartz Cron expressions for precise time-based scheduling (e.g., '0 0 8 * * ?' for 8 AM daily), while Rate uses fixed intervals (e.g., '5m' for every 5 minutes). Cron is better for specific times; Rate is better for regular intervals.

What timezone does FunctionGraph use for Cron expressions?

FunctionGraph uses UTC (Coordinated Universal Time) by default for all Cron expression evaluations. Account for timezone differences when scheduling.

How many triggers can I create per function?

Each FunctionGraph function supports up to 10 triggers by default. Contact Huawei Cloud support if you need to increase this limit.

What happens if my function takes longer to execute than the trigger interval?

Concurrent executions may occur if a function runs longer than the scheduled interval. Ensure your function completes before the next trigger fires, or use longer intervals to prevent overlap.

Can I test a trigger before enabling it in production?

Yes, create the trigger with enable_status set to 'DISABLED' for testing, verify the configuration in the console, then enable it once you confirm the schedule is correct.

Full instructions (SKILL.md)

Source of truth, from huaweicloud/huaweicloud-skills.


name: huawei-cloud-functiongraph-trigger-create description: Create and configure scheduled TIMER triggers for Huawei Cloud FunctionGraph functions using Quartz Cron expressions. Use this skill when users ask to create triggers, schedule function execution, set up periodic tasks, or configure timers for functions. Triggered by keywords like "create trigger", "set up trigger", "schedule function", "periodic task", "timer", "cron", "创建云函数触发器", "配置云函数触发器", "云函数定时触发", "定时执行", "定时任务", "创建定时器", "FunctionGraph trigger", "schedule function execution". tags:

  • functiongraph
  • trigger
  • timer
  • cron
  • huaweicloud

Overview

This skill enables the creation and configuration of scheduled triggers (TIMER type) for Huawei Cloud FunctionGraph functions. It supports Quartz Cron expression format for flexible scheduling configurations.

The trigger allows automatic execution of serverless functions at specified time intervals, making it ideal for:

  • Periodic data processing tasks
  • Scheduled backup operations
  • Regular monitoring and health checks
  • Time-based notification systems

Prerequisites

Before using this skill, ensure the following requirements are met:

  1. Python Environment: Python 3.9+ installed
  2. SDK Installation: Install FunctionGraph SDK: pip install huaweicloudsdkfunctiongraph
  3. Environment Variables: Configure the following environment variables:
    • HUAWEI_AK: Huawei Cloud Access Key
    • HUAWEI_SK: Huawei Cloud Secret Key
    • HUAWEI_REGION: Target region (e.g., cn-north-4)
    • HUAWEI_PROJECT_ID: Project ID
  4. FunctionGraph Function: Target function must already exist in the specified region
  5. Network Access: Stable network connection to Huawei Cloud API endpoints

Usage

Basic Command Structure

cd scripts
python create_trigger.py \
    --function-urn "urn:fss:cn-north-4:project_id:function:default:my-function:latest" \
    --name "daily-trigger" \
    --schedule "0 0 2 * * ?" \
    --schedule-type "Cron" \
    --status "ACTIVE"

Examples

Cron Expression Trigger

cd scripts
python create_trigger.py \
    --function-urn "urn:fss:cn-north-4:project_id:function:default:my-function:latest" \
    --name "daily-trigger" \
    --schedule "0 0 8 * * ?" \
    --schedule-type "Cron"

Fixed Rate Trigger

cd scripts
python create_trigger.py \
    --function-urn "urn:fss:cn-north-4:project_id:function:default:my-function:latest" \
    --name "every-5min" \
    --schedule "5m" \
    --schedule-type "Rate"

Cron Expression Format

FunctionGraph uses Quartz Cron format with 6 or 7 fields:

┌───────────── second (0-59)
│ ┌───────────── minute (0-59)
│ │ ┌───────────── hour (0-23)
│ │ │ ┌───────────── day of month (1-31)
│ │ │ │ ┌───────────── month (1-12)
│ │ │ │ │ ┌───────────── day of week (1-7, 1=Sunday)
│ │ │ │ │ │
* * * * * ?

For detailed Cron expression reference including special characters and common examples, see Cron Expression Reference.

Parameters Confirmation

Before creating the trigger, confirm the following parameters:

ParameterRequiredDescriptionExample
function_urnYesTarget function URNurn:fss:cn-north-4:xxx:function:default:my-func:latest
trigger_nameYesTrigger name (1-64 chars)daily-trigger
scheduleYesCron expression or Rate value0 0 2 * * ? or 5m
schedule_typeNoCron (default) or RateCron
enable_statusNoACTIVE (default) or DISABLEDACTIVE
user_eventNoAdditional user event dataoptional info

Confirmation Checklist

  • Function URN is correct and function exists
  • Cron expression has been validated
  • Trigger name follows naming conventions
  • IAM permissions are sufficient
  • Region matches the function location

Output Format

Success Response

{
    "status": "success",
    "trigger_id": "timer-xxx-xxx-xxx",
    "trigger_name": "daily-trigger",
    "trigger_type": "TIMER",
    "schedule": "0 0 2 * * ?",
    "enable_status": "ACTIVE",
    "message": "Trigger created successfully"
}

Error Response

{
    "status": "failed",
    "error_code": "TriggerAlreadyExists",
    "message": "Trigger with the same name already exists"
}

For complete error codes and troubleshooting information, see Cron Expression Reference.

Verification Method

After creating the trigger, verify the configuration:

1. List Function Triggers

Navigate to FunctionGraph console → Function details → Triggers tab to view all triggers

2. Check Trigger Details

Navigate to FunctionGraph console → Function details → Triggers → View trigger details

3. Monitor Trigger Execution

Navigate to FunctionGraph console → Function details → Triggers → View execution history

Expected indicators:

  • Trigger status: Active
  • Next execution time: Correctly calculated
  • Execution history: No failed invocations

Best Practices

Cron Expression Best Practices

  1. Avoid frequent executions: Use intervals ≥ 5 minutes unless necessary
  2. Consider timezone: FunctionGraph uses UTC by default
  3. Use ? for unused day field: Either day-of-month or day-of-week should use ?
  4. Validate before creation: Test expressions using online Cron validators

Naming Conventions

  • Use descriptive names: daily-data-sync, hourly-health-check
  • Follow pattern: [frequency]-[purpose]
  • Maximum 64 characters
  • Use lowercase with hyphens

Security Considerations

  1. Least privilege: Grant minimal IAM permissions
  2. Enable encryption: Use KMS for sensitive function inputs
  3. Monitor executions: Set up Cloud Eye alarms for failures
  4. Rate limiting: Configure appropriate retry parameters

Operational Recommendations

  1. Start with disabled status for testing
  2. Document trigger purpose in description field
  3. Set appropriate retries for transient failures
  4. Monitor first executions after enabling

Reference Documents

For detailed information, refer to:

Important Notes

Compatibility Notes

This skill is designed to work with Huawei Cloud FunctionGraph API. The tags field helps with skill discovery and categorization, while the version field follows semantic versioning for skill updates.

Limitations

  1. Maximum triggers: Each function supports up to 10 triggers by default
  2. Cron precision: Second-level scheduling may have minor delays
  3. Timeout handling: Function timeout should be less than trigger interval
  4. Cold start: First executions may have additional latency

Cost Implications

  • No additional cost for trigger configuration
  • Function execution billed per invocation
  • Consider execution frequency for cost optimization

Common Pitfalls

  1. Wrong timezone: Remember FunctionGraph uses UTC
  2. Overlapping schedules: Multiple triggers may cause concurrent executions
  3. Long-running functions: Ensure function completes before next trigger
  4. Cron syntax errors: Validate expression format before deployment

For troubleshooting and error codes, refer to Cron Expression Reference.


Related Skills:

  • huawei-cloud-functiongraph-function-create
  • huawei-cloud-functiongraph-deploy