Skip to content

Switch to new upbound devex#15

Merged
kaessert merged 1 commit into
mainfrom
tk/new-devex
Jul 21, 2025
Merged

Switch to new upbound devex#15
kaessert merged 1 commit into
mainfrom
tk/new-devex

Conversation

@kaessert
Copy link
Copy Markdown
Collaborator

@kaessert kaessert commented Apr 28, 2025

Description of your changes

Switch to new devex and provider interface "UpboxSet" for providing a set of upboxes for training purposes.

Fixes #10

I have:

  • Read and followed Upbound's contribution process.
  • Run make reviewable to ensure this PR is ready for review.
  • Added backport release-x.y labels to auto-backport this PR, as appropriate.

How has this code been tested

$> up test run --e2e tests/e2etest-upbox/
  ✓   Parsing tests
  ✓   Checking dependencies
  ✓   Generating language schemas
  ✓   Building functions
  ✓   Building configuration package
  ✓   Ensuring repository exists
  ✓   Pushing function package xpkg.upbound.io/solutions/configuration-upbox_upbox
  ✓   Pushing function package xpkg.upbound.io/solutions/configuration-upbox_upboxset
  ✓   Pushing configuration image xpkg.upbound.io/solutions/configuration-upbox:v0.0.0-1748346386
  ✓   Creating development control plane
  ✓   Installing package on development control plane
  ✓   Waiting for package to be ready
  ✓   Applying Extra Resources
2025/05/27 13:49:03 Skipping update step because the root resource does not exist
2025/05/27 13:49:03 Skipping update step because the skip-delete option is set to true
2025/05/27 13:49:03 Skipping import step because the skip-import option is set to true
2025/05/27 13:49:03 Written test files: /var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/2671889001
2025/05/27 13:49:03 Running chainsaw tests at /var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/2671889001
2025/05/27 13:49:03 Loading default configuration...
2025/05/27 13:49:03 - Using test file: 00-apply.yaml
2025/05/27 13:49:03 - ApplyTimeout 5s
2025/05/27 13:49:03 - AssertTimeout 30s
2025/05/27 13:49:03 - CleanupTimeout 30s
2025/05/27 13:49:03 - DeleteTimeout 15s
2025/05/27 13:49:03 - ErrorTimeout 30s
2025/05/27 13:49:03 - ExecTimeout 5s
2025/05/27 13:49:03 - Parallel 1
2025/05/27 13:49:03 Loading tests...
2025/05/27 13:49:03 - apply (/var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/2671889001/case)
2025/05/27 13:49:03 Running tests...
=== RUN   chainsaw
=== PAUSE chainsaw
=== CONT  chainsaw
=== RUN   chainsaw/apply
=== PAUSE chainsaw/apply
=== CONT  chainsaw/apply
    | 13:49:04 | apply | @chainsaw                | CREATE    | OK    | v1/Namespace @ chainsaw-ideal-ladybug
    | 13:49:04 | apply | Apply Resources          | TRY       | BEGIN |
    | 13:49:04 | apply | Apply Resources          | APPLY     | RUN   | aws.platform.upbound.io/v1alpha1/Upbox @ example
    | 13:49:05 | apply | Apply Resources          | CREATE    | OK    | aws.platform.upbound.io/v1alpha1/Upbox @ example
    | 13:49:05 | apply | Apply Resources          | APPLY     | DONE  | aws.platform.upbound.io/v1alpha1/Upbox @ example
    | 13:49:05 | apply | Apply Resources          | CMD       | RUN   |
        === COMMAND
        /bin/sh -c echo "Runnning annotation script"
        ${KUBECTL} annotate upbox.aws.platform.upbound.io/example upjet.upbound.io/test=true --overwrite
    | 13:49:07 | apply | Apply Resources          | SCRIPT    | LOG   |
        === STDOUT
        Runnning annotation script
        upbox.aws.platform.upbound.io/example annotated
    | 13:49:07 | apply | Apply Resources          | SCRIPT    | DONE  |
    | 13:49:07 | apply | Apply Resources          | TRY       | END   |
    | 13:49:07 | apply | Assert Status Conditions | TRY       | BEGIN |
    | 13:49:07 | apply | Assert Status Conditions | ASSERT    | RUN   | aws.platform.upbound.io/v1alpha1/Upbox @ example
    | 13:49:12 | apply | Assert Status Conditions | ASSERT    | DONE  | aws.platform.upbound.io/v1alpha1/Upbox @ example
    | 13:49:12 | apply | Assert Status Conditions | TRY       | END   |
    | 13:49:12 | apply | @chainsaw                | CLEANUP   | SKIP  |
=== NAME  chainsaw
    | 13:49:12 | chainsaw | @chainsaw | CLEANUP   | SKIP  |
--- PASS: chainsaw (0.00s)
    --- PASS: chainsaw/apply (9.09s)
PASS
2025/05/27 13:49:12 Tests Summary:
2025/05/27 13:49:12 - Passed: 1
2025/05/27 13:49:12 - Failed: 0
2025/05/27 13:49:12 - Skipped: 0
2025/05/27 13:49:12 Skipping test 01-update.yaml
2025/05/27 13:49:12 Skipping test 02-import.yaml
2025/05/27 13:49:12 Loading default configuration...
2025/05/27 13:49:12 - Using test file: 03-delete.yaml
2025/05/27 13:49:12 - ApplyTimeout 5s
2025/05/27 13:49:12 - AssertTimeout 30s
2025/05/27 13:49:12 - CleanupTimeout 30s
2025/05/27 13:49:12 - DeleteTimeout 15s
2025/05/27 13:49:12 - ErrorTimeout 30s
2025/05/27 13:49:12 - ExecTimeout 5s
2025/05/27 13:49:12 - Parallel 1
2025/05/27 13:49:12 Loading tests...
2025/05/27 13:49:12 - delete (/var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/2671889001/case)
2025/05/27 13:49:12 Running tests...
=== RUN   chainsaw
=== PAUSE chainsaw
=== CONT  chainsaw
=== RUN   chainsaw/delete
=== PAUSE chainsaw/delete
=== CONT  chainsaw/delete
    | 13:49:13 | delete | @chainsaw        | CREATE    | OK    | v1/Namespace @ chainsaw-legible-ocelot
    | 13:49:13 | delete | Delete Resources | TRY       | BEGIN |
    | 13:49:13 | delete | Delete Resources | CMD       | RUN   |
        === COMMAND
        /bin/sh -c ${KUBECTL} delete upbox.aws.platform.upbound.io/example --wait=false --ignore-not-found
    | 13:49:14 | delete | Delete Resources | SCRIPT    | LOG   |
        === STDOUT
        upbox.aws.platform.upbound.io "example" deleted
    | 13:49:14 | delete | Delete Resources | SCRIPT    | DONE  |
    | 13:49:14 | delete | Delete Resources | TRY       | END   |
    | 13:49:14 | delete | Assert Deletion  | TRY       | BEGIN |
    | 13:49:14 | delete | Assert Deletion  | CMD       | RUN   |
        === COMMAND
        /bin/sh -c ${KUBECTL} wait --for=delete upbox.aws.platform.upbound.io/example --timeout 1h15m0s
    | 13:49:18 | delete | Assert Deletion  | SCRIPT    | LOG   |
        === STDOUT
        upbox.aws.platform.upbound.io/example condition met
    | 13:49:18 | delete | Assert Deletion  | SCRIPT    | DONE  |
    | 13:49:18 | delete | Assert Deletion  | TRY       | END   |
    | 13:49:18 | delete | @chainsaw        | CLEANUP   | SKIP  |
=== NAME  chainsaw
    | 13:49:18 | chainsaw | @chainsaw | CLEANUP   | SKIP  |
--- PASS: chainsaw (0.00s)
    --- PASS: chainsaw/delete (5.29s)
PASS
2025/05/27 13:49:18 Tests Summary:
2025/05/27 13:49:18 - Passed: 1
2025/05/27 13:49:18 - Failed: 0
2025/05/27 13:49:18 - Skipped: 0
SUCCESS:
SUCCESS: Tests Summary:
SUCCESS: ------------------
SUCCESS: Total Tests Executed: 1
SUCCESS: Passed tests:         1
SUCCESS: Failed tests:         0
$> up test run tests/test-upbox
  ✓   Parsing tests
  ✓   Checking dependencies
  ✓   Generating language schemas
  ✓   Building functions
  ✓   Building configuration package
  ✓   Pushing embedded functions to local daemon
  ✓   Assert
SUCCESS:
SUCCESS: Tests Summary:
SUCCESS: ------------------
SUCCESS: Total Tests Executed: 1
SUCCESS: Passed tests:         1
SUCCESS: Failed tests:         0
$> up test run --e2e tests/e2etest-upboxset/
  ✓   Parsing tests
  ✓   Checking dependencies
  ✓   Generating language schemas
  ✓   Building functions
  ✓   Building configuration package
  ✓   Ensuring repository exists
  ✓   Pushing function package xpkg.upbound.io/solutions/configuration-upbox_upboxset
  ✓   Pushing function package xpkg.upbound.io/solutions/configuration-upbox_upbox
  ✓   Pushing configuration image xpkg.upbound.io/solutions/configuration-upbox:v0.0.0-1748346923
  ✓   Creating development control plane
  ✓   Installing package on development control plane
  ✓   Waiting for package to be ready
  ✓   Applying Extra Resources
2025/05/27 13:58:14 Skipping update step because the root resource does not exist
2025/05/27 13:58:14 Skipping update step because the skip-delete option is set to true
2025/05/27 13:58:14 Skipping import step because the skip-import option is set to true
2025/05/27 13:58:14 Written test files: /var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/4055805075
2025/05/27 13:58:14 Running chainsaw tests at /var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/4055805075
2025/05/27 13:58:14 Loading default configuration...
2025/05/27 13:58:14 - Using test file: 00-apply.yaml
2025/05/27 13:58:14 - ApplyTimeout 5s
2025/05/27 13:58:14 - AssertTimeout 30s
2025/05/27 13:58:14 - CleanupTimeout 30s
2025/05/27 13:58:14 - DeleteTimeout 15s
2025/05/27 13:58:14 - ErrorTimeout 30s
2025/05/27 13:58:14 - ExecTimeout 5s
2025/05/27 13:58:14 - Parallel 1
2025/05/27 13:58:14 Loading tests...
2025/05/27 13:58:14 - apply (/var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/4055805075/case)
2025/05/27 13:58:14 Running tests...
=== RUN   chainsaw
=== PAUSE chainsaw
=== CONT  chainsaw
=== RUN   chainsaw/apply
=== PAUSE chainsaw/apply
=== CONT  chainsaw/apply
    | 13:58:15 | apply | @chainsaw                | CREATE    | OK    | v1/Namespace @ chainsaw-sunny-sloth
    | 13:58:15 | apply | Apply Resources          | TRY       | BEGIN |
    | 13:58:15 | apply | Apply Resources          | APPLY     | RUN   | aws.platform.upbound.io/v1alpha1/UpboxSet @ example
    | 13:58:15 | apply | Apply Resources          | CREATE    | OK    | aws.platform.upbound.io/v1alpha1/UpboxSet @ example
    | 13:58:15 | apply | Apply Resources          | APPLY     | DONE  | aws.platform.upbound.io/v1alpha1/UpboxSet @ example
    | 13:58:15 | apply | Apply Resources          | CMD       | RUN   |
        === COMMAND
        /bin/sh -c echo "Runnning annotation script"
        ${KUBECTL} annotate upboxset.aws.platform.upbound.io/example upjet.upbound.io/test=true --overwrite
    | 13:58:17 | apply | Apply Resources          | SCRIPT    | LOG   |
        === STDOUT
        Runnning annotation script
        upboxset.aws.platform.upbound.io/example annotated
    | 13:58:17 | apply | Apply Resources          | SCRIPT    | DONE  |
    | 13:58:17 | apply | Apply Resources          | TRY       | END   |
    | 13:58:17 | apply | Assert Status Conditions | TRY       | BEGIN |
    | 13:58:18 | apply | Assert Status Conditions | ASSERT    | RUN   | aws.platform.upbound.io/v1alpha1/UpboxSet @ example
NAME                                     RESOURCE       SYNCED   READY   STATUS
UpboxSet/example                                        True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias   upbox-tobias   -        -
└─ Upbox/upbound-team-solutions-yury     upbox-yury     -        -
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance, key, sg, and 2 more
│  ├─ Instance/example-njlgg                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
│  └─ SecurityGroup/example-bw7vv                           sg                 False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.VPCID: referenced field was empty (referenced resource may not yet be ready)
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance, key, sg, and 2 more
   ├─ Instance/example-hmb62                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
   └─ SecurityGroup/example-bjflg                           sg                 False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.VPCID: referenced field was empty (referenced resource may not yet be ready)
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance, sg, sgr-outbound-all, and 1 more
│  ├─ Instance/example-njlgg                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
│  └─ SecurityGroup/example-bw7vv                           sg                 True     False   Creating
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance, key, sg, and 2 more
   ├─ Instance/example-hmb62                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
   └─ SecurityGroup/example-bjflg                           sg                 True     False   Creating
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance, sg, sgr-outbound-all, and 1 more
│  ├─ Instance/example-njlgg                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance, sg, sgr-outbound-all, and 1 more
   ├─ Instance/example-hmb62                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SecurityGroupID: referenced field was empty (referenced resource may not yet be ready)
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance, sgr-outbound-all, and sgr-ssh
│  ├─ Instance/example-njlgg                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     False   Creating
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     False   Creating
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance, sgr-outbound-all, and sgr-ssh
   ├─ Instance/example-hmb62                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     False   Creating
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     False   Creating
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance, sgr-outbound-all, and sgr-ssh
│  ├─ Instance/example-njlgg                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance, sgr-outbound-all, and sgr-ssh
   ├─ Instance/example-hmb62                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance
│  ├─ Instance/example-njlgg                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           False    -       ReconcileError: cannot resolve references: mg.Spec.ForProvider.SubnetID: referenced field was empty (referenced resource may not yet be ready)
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance
│  ├─ Instance/example-njlgg                                instance           True     False   Creating
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           True     False   Creating
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance
│  ├─ Instance/example-njlgg                                instance           True     False   Creating
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           True     False   Creating
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance
│  ├─ Instance/example-njlgg                                instance           True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           True     True    Available
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance
│  ├─ Instance/example-njlgg                                instance           True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           True     True    Available
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     False   Creating: Unready resources: instance
│  ├─ Instance/example-njlgg                                instance           True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           True     True    Available
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     True    Available
│  ├─ Instance/example-njlgg                                instance           True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     False   Creating: Unready resources: instance
   ├─ Instance/example-hmb62                                instance           True     True    Available
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
NAME                                                        RESOURCE           SYNCED   READY   STATUS
UpboxSet/example                                                               True     False   Creating: Unready resources: upbox-tobias, upbox-yury
├─ Upbox/upbound-team-solutions-tobias                      upbox-tobias       True     True    Available
│  ├─ Instance/example-njlgg                                instance           True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-tobias   key                True     True    Available
│  ├─ SecurityGroupRule/example-bhjhq                       sgr-ssh            True     True    Available
│  ├─ SecurityGroupRule/example-ztxhf                       sgr-outbound-all   True     True    Available
│  └─ SecurityGroup/example-bw7vv                           sg                 True     True    Available
└─ Upbox/upbound-team-solutions-yury                        upbox-yury         True     True    Available
   ├─ Instance/example-hmb62                                instance           True     True    Available
   ├─ KeyPair/upbox-upbound-upbound-team-solutions-yury     key                True     True    Available
   ├─ SecurityGroupRule/example-2j9bx                       sgr-outbound-all   True     True    Available
   ├─ SecurityGroupRule/example-dgs9m                       sgr-ssh            True     True    Available
   └─ SecurityGroup/example-bjflg                           sg                 True     True    Available
    | 14:00:38 | apply | Assert Status Conditions | ASSERT    | DONE  | aws.platform.upbound.io/v1alpha1/UpboxSet @ example
    | 14:00:38 | apply | Assert Status Conditions | TRY       | END   |
    | 14:00:38 | apply | @chainsaw                | CLEANUP   | SKIP  |
=== NAME  chainsaw
    | 14:00:38 | chainsaw | @chainsaw | CLEANUP   | SKIP  |
--- PASS: chainsaw (0.00s)
    --- PASS: chainsaw/apply (143.84s)
PASS
2025/05/27 14:00:38 Tests Summary:
2025/05/27 14:00:38 - Passed: 1
2025/05/27 14:00:38 - Failed: 0
2025/05/27 14:00:38 - Skipped: 0
2025/05/27 14:00:38 Skipping test 01-update.yaml
2025/05/27 14:00:38 Skipping test 02-import.yaml
2025/05/27 14:00:38 Loading default configuration...
2025/05/27 14:00:38 - Using test file: 03-delete.yaml
2025/05/27 14:00:38 - ApplyTimeout 5s
2025/05/27 14:00:38 - AssertTimeout 30s
2025/05/27 14:00:38 - CleanupTimeout 30s
2025/05/27 14:00:38 - DeleteTimeout 15s
2025/05/27 14:00:38 - ErrorTimeout 30s
2025/05/27 14:00:38 - ExecTimeout 5s
2025/05/27 14:00:38 - Parallel 1
2025/05/27 14:00:38 Loading tests...
2025/05/27 14:00:38 - delete (/var/folders/h4/sh6rlg_53s17_cjkfp90v3r00000gn/T/4055805075/case)
2025/05/27 14:00:38 Running tests...
=== RUN   chainsaw
=== PAUSE chainsaw
=== CONT  chainsaw
=== RUN   chainsaw/delete
=== PAUSE chainsaw/delete
=== CONT  chainsaw/delete
    | 14:00:38 | delete | @chainsaw        | CREATE    | OK    | v1/Namespace @ chainsaw-guiding-monkey
    | 14:00:38 | delete | Delete Resources | TRY       | BEGIN |
    | 14:00:38 | delete | Delete Resources | CMD       | RUN   |
        === COMMAND
        /bin/sh -c ${KUBECTL} delete upboxset.aws.platform.upbound.io/example --wait=false --ignore-not-found
    | 14:00:40 | delete | Delete Resources | SCRIPT    | LOG   |
        === STDOUT
        upboxset.aws.platform.upbound.io "example" deleted
    | 14:00:40 | delete | Delete Resources | SCRIPT    | DONE  |
    | 14:00:40 | delete | Delete Resources | TRY       | END   |
    | 14:00:40 | delete | Assert Deletion  | TRY       | BEGIN |
    | 14:00:40 | delete | Assert Deletion  | CMD       | RUN   |
        === COMMAND
        /bin/sh -c ${KUBECTL} wait --for=delete upboxset.aws.platform.upbound.io/example --timeout 1h15m0s
    | 14:00:41 | delete | Assert Deletion  | SCRIPT    | DONE  |
    | 14:00:41 | delete | Assert Deletion  | TRY       | END   |
    | 14:00:41 | delete | @chainsaw        | CLEANUP   | SKIP  |
=== NAME  chainsaw
    | 14:00:41 | chainsaw | @chainsaw | CLEANUP   | SKIP  |
--- PASS: chainsaw (0.00s)
    --- PASS: chainsaw/delete (3.68s)
PASS
2025/05/27 14:00:41 Tests Summary:
2025/05/27 14:00:41 - Passed: 1
2025/05/27 14:00:41 - Failed: 0
2025/05/27 14:00:41 - Skipped: 0
SUCCESS:
SUCCESS: Tests Summary:
SUCCESS: ------------------
SUCCESS: Total Tests Executed: 1
SUCCESS: Passed tests:         1
SUCCESS: Failed tests:         0

Copy link
Copy Markdown
Member

@ytsarev ytsarev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

crossplane beta trace upboxset example
NAME                                                        SYNCED   READY   STATUS
UpboxSet/example                                            True     False   Creating: ...esources: upbox-amitap, upbox-amjad, upbox-christoph, and 1 more
├─ Upbox/upbound-team-solutions-amitap                      True     False   Creating: Unready resources: instance, key, sg, and 2 more
│  ├─ Instance/example-9rxj2                                True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-amitap   True     True    Available
│  ├─ SecurityGroupRule/example-q46zj                       True     True    Available
│  ├─ SecurityGroupRule/example-rw6l7                       True     True    Available
│  └─ SecurityGroup/example-ps2vv                           True     True    Available
├─ Upbox/upbound-team-solutions-amjad                       False    False   ReconcileError: ... error: code = Unavailable desc = error reading from server: EOF
│  ├─ Instance/example-5zhhn                                True     True    Available
│  ├─ KeyPair/upbox-upbound-upbound-team-solutions-amjad    True     True    Available
│  ├─ SecurityGroupRule/example-cnsv4                       True     True    Available
│  ├─ SecurityGroupRule/example-tr2db                       True     True    Available
│  └─ SecurityGroup/example-d5qh4                           True     True    Available
├─ Upbox/upbound-team-solutions-christoph                   False    -       ReconcileError: ... error: code = Unavailable desc = error reading from server: EOF
└─ Upbox/upbound-team-solutions-yury                        False    -       ReconcileError: ... error: code = Unavailable desc = error reading from server: EOF
  Warning  ComposeResources   3m44s (x2 over 5m44s)  defined/compositeresourcedefinition.apiextensions.crossplane.io  cannot compose resources: cannot run Composition pipeline step "upbox": cannot run Function "solutions-configuration-upboxupbox": rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "transport: Error while dialing: dial tcp 10.28.14.47:9443: connect: connection refused"; last resolver error: produced zero addresses
  Warning  ComposeResources   108s (x2 over 7m44s)   defined/compositeresourcedefinition.apiextensions.crossplane.io  cannot compose resources: cannot run Composition pipeline step "upbox": cannot run Function "solutions-configuration-upboxupbox": rpc error: code = Unavailable desc = error reading from server: EOF

getting unstable results at the moment

Comment thread apis/upboxes/composition.yaml Outdated
@ytsarev
Copy link
Copy Markdown
Member

ytsarev commented May 13, 2025

crossplane-system   solutions-configuration-upboxupbox-b44a8d668f8b-6d444f4d6cbx858   0/1     CrashLoopBackOff   9 (2m25s ago)   35m
k -n crossplane-system logs -f solutions-configuration-upboxupbox-b44a8d668f8b-6d444f4d6cbx858
{"level":"info","ts":1747176069.4339824,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176069.442933,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176069.454259,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176069.4759538,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176087.799822,"caller":"fn/fn.go:250","msg":"Successfully processed crossplane KCL function resources","tag":"","xr-version":"aws.platform.upbound.io/v1alpha1","xr-kind":"Upbox","xr-name":"upbound-team-solutions-yury","target":"Default","input":""}
{"level":"info","ts":1747176088.7989678,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176101.5585558,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176101.5697122,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176101.6676128,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
{"level":"info","ts":1747176104.884509,"caller":"fn/fn.go:250","msg":"Successfully processed crossplane KCL function resources","tag":"","xr-version":"aws.platform.upbound.io/v1alpha1","xr-kind":"Upbox","xr-name":"upbound-team-solutions-yury","target":"Default","input":""}
{"level":"info","ts":1747176105.0558536,"caller":"fn/fn.go:38","msg":"Running Function","tag":""}
SIGSEGV: segmentation violation
PC=0x7f2e2fed2153 m=7 sigcode=1 addr=0x7f2da43d3098
signal arrived during cgo execution

goroutine 27 gp=0xc000611500 m=7 mp=0xc000108308 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc0004641a0)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc000a67f30 sp=0xc000a67ef8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc000df4a00?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc000a683b0 sp=0xc000a67f30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc000a68870, 0xc000a68748, 0xc000a68750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc000a686f8 sp=0xc000a683b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc000a68870, 0xc000a68748, 0xc000a68750)
        <autogenerated>:1 +0x45 fp=0xc000a68728 sp=0xc000a686f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc000a68870 sp=0xc000a68728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc000a68970 sp=0xc000a68870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc000a68a78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc000a68b48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc000a68a30 sp=0xc000a68970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc000a68b48?, 0xc000a68b48?, 0xc000a68bb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc000a68a88 sp=0xc000a68a30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972780)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc000a68c58 sp=0xc000a68a88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc000680c00, 0xc00078c200, 0xc000e76390)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc000a68cc8 sp=0xc000a68c58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc000e786e0, {0xc000a68e90, 0xe, 0xc0003cf680?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc000a68d38 sp=0xc000a68cc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc0009ffb80)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc000a68fc0 sp=0xc000a68d38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc000fc3200?, 0x1bcedee?}, {0xc000cfe138?, 0x5?}, {0x0, 0x0, 0x0}, 0xc0009fcd00, 0xc0009fe060, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc000a690b8 sp=0xc000a68fc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc000a691d0, {0xc0009ee420?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc000a69128 sp=0xc000a690b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc0009fe000, {0xc00090a450, 0x1, 0x0?}, 0xc000fc3200)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc000a69280 sp=0xc000a69128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc0006a8d90}, {0xc00090a450, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc000a692e8 sp=0xc000a69280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc000a69740, 0x1, 0x1}, {0xc000a69730, 0x1, 0x1}, {0xc000a69720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc000a69390 sp=0xc000a692e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc000a69740, 0x1, 0x1}, {0xc000a69730, 0x1, 0x1}, {0xc000a69720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc000a693f8 sp=0xc000a69390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc00008f8b8?}, 0xc0009b2e40)
        /fn/fn.go:159 +0x1378 fp=0xc000a69878 sp=0xc000a693f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc000e14e40}, 0xc000e70080, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc000a698c8 sp=0xc000a69878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc000e14db0}, 0xc0009b2de0, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc000a69d98 sp=0xc000a698c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc0009b2de0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc000a69f78 sp=0xc000a69d98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc000a69fe0 sp=0xc000a69f78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000a69fe8 sp=0xc000a69fe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

goroutine 1 gp=0xc0000061c0 m=nil [IO wait]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc000060d20 sp=0xc000060d00 pc=0x47220e
runtime.netpollblock(0xc000a68d70?, 0x408246?, 0x0?)
        /usr/local/go/src/runtime/netpoll.go:575 +0xf7 fp=0xc000060d58 sp=0xc000060d20 pc=0x436377
internal/poll.runtime_pollWait(0x7f2e2fc5f6e0, 0x72)
        /usr/local/go/src/runtime/netpoll.go:351 +0x85 fp=0xc000060d78 sp=0xc000060d58 pc=0x471505
internal/poll.(*pollDesc).wait(0xc00069b900?, 0x900000036?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x27 fp=0xc000060da0 sp=0xc000060d78 pc=0x4fb767
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc00069b900)
        /usr/local/go/src/internal/poll/fd_unix.go:620 +0x295 fp=0xc000060e48 sp=0xc000060da0 pc=0x500b35
net.(*netFD).accept(0xc00069b900)
        /usr/local/go/src/net/fd_unix.go:172 +0x29 fp=0xc000060f00 sp=0xc000060e48 pc=0x6189c9
net.(*TCPListener).accept(0xc000a3cb00)
        /usr/local/go/src/net/tcpsock_posix.go:159 +0x1e fp=0xc000060f50 sp=0xc000060f00 pc=0x63039e
net.(*TCPListener).Accept(0xc000a3cb00)
        /usr/local/go/src/net/tcpsock.go:372 +0x30 fp=0xc000060f80 sp=0xc000060f50 pc=0x62f570
google.golang.org/grpc.(*Server).Serve(0xc00013c600, {0x2ceece0, 0xc000a3cb00})
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:885 +0x46c fp=0xc0000610e0 sp=0xc000060f80 pc=0x155690c
github.com/crossplane/function-sdk-go.Serve({0x2ce3be8, 0xc00068d560}, {0xc0008dd278, 0x3, 0xc00068d450?})
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/sdk.go:159 +0x2fe fp=0xc0000611d8 sp=0xc0000610e0 pc=0x20df89e
main.(*CLI).Run(0xc000a3c480)
        /fn/main.go:26 +0x199 fp=0xc0000612a0 sp=0xc0000611d8 pc=0x20e27b9
runtime.call16(0xc000a31c50, 0xc0009eee28, 0x0, 0x0, 0x0, 0x8, 0xc0000614f8)
        /usr/local/go/src/runtime/asm_amd64.s:775 +0x43 fp=0xc0000612c0 sp=0xc0000612a0 pc=0x478a63
runtime.reflectcall(0xc000719890?, 0x1?, 0x1?, 0x49fa00?, 0xc0?, 0x1?, 0x1?)
        <autogenerated>:1 +0x36 fp=0xc000061300 sp=0xc0000612c0 pc=0x47cf56
reflect.Value.call({0x22e7620?, 0xc000a3c480?, 0x10?}, {0x26a9537, 0x4}, {0xc0008dd960, 0x0, 0xc0008dd8b0?})
        /usr/local/go/src/reflect/value.go:581 +0xca6 fp=0xc000061848 sp=0xc000061300 pc=0x4dcc46
reflect.Value.Call({0x22e7620?, 0xc000a3c480?, 0xc000a3f950?}, {0xc0008dd960?, 0xcad46e7135ff0330?, 0xcad46e7100000013?})
        /usr/local/go/src/reflect/value.go:365 +0xb9 fp=0xc0000618c0 sp=0xc000061848 pc=0x4dbd59
github.com/alecthomas/kong.callAnyFunction({0x22e7620?, 0xc000a3c480?, 0x23435a0?}, 0xc000a31bf0)
        /go/pkg/mod/github.com/alecthomas/kong@v1.8.1/callbacks.go:165 +0x712 fp=0xc000061a90 sp=0xc0000618c0 pc=0x20706d2
github.com/alecthomas/kong.callFunction({0x22e7620?, 0xc000a3c480?, 0x0?}, 0xc000a31bf0)
        /go/pkg/mod/github.com/alecthomas/kong@v1.8.1/callbacks.go:132 +0x17b fp=0xc000061b18 sp=0xc000061a90 pc=0x206fddb
github.com/alecthomas/kong.(*Context).RunNode(0xc00069b400, 0xc000557e00, {0x0, 0x0, 0x3?})
        /go/pkg/mod/github.com/alecthomas/kong@v1.8.1/context.go:810 +0x849 fp=0xc000061e28 sp=0xc000061b18 pc=0x2077ec9
github.com/alecthomas/kong.(*Context).Run(0xc00069b400, {0x0?, 0x0?, 0x0?})
        /go/pkg/mod/github.com/alecthomas/kong@v1.8.1/context.go:839 +0x13d fp=0xc000061ee8 sp=0xc000061e28 pc=0x20786dd
main.main()
        /fn/main.go:34 +0xc8 fp=0xc000061f50 sp=0xc000061ee8 pc=0x20e2e68
runtime.main()
        /usr/local/go/src/runtime/proc.go:272 +0x28b fp=0xc000061fe0 sp=0xc000061f50 pc=0x43d9ab
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000061fe8 sp=0xc000061fe0 pc=0x47a501

goroutine 2 gp=0xc000006c40 m=nil [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc00007cfa8 sp=0xc00007cf88 pc=0x47220e
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:430
runtime.forcegchelper()
        /usr/local/go/src/runtime/proc.go:337 +0xb3 fp=0xc00007cfe0 sp=0xc00007cfa8 pc=0x43dcf3
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc00007cfe8 sp=0xc00007cfe0 pc=0x47a501
created by runtime.init.7 in goroutine 1
        /usr/local/go/src/runtime/proc.go:325 +0x1a

goroutine 3 gp=0xc000006e00 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc00007d780 sp=0xc00007d760 pc=0x47220e
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:430
runtime.bgsweep(0xc00009e000)
        /usr/local/go/src/runtime/mgcsweep.go:317 +0xdf fp=0xc00007d7c8 sp=0xc00007d780 pc=0x4272ff
runtime.gcenable.gowrap1()
        /usr/local/go/src/runtime/mgc.go:204 +0x25 fp=0xc00007d7e0 sp=0xc00007d7c8 pc=0x41b9c5
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc00007d7e8 sp=0xc00007d7e0 pc=0x47a501
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:204 +0x66

goroutine 4 gp=0xc000006fc0 m=nil [GC scavenge wait]:
runtime.gopark(0x56d7d7c?, 0x14e2fd?, 0x0?, 0x0?, 0x0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc00007df78 sp=0xc00007df58 pc=0x47220e
runtime.goparkunlock(...)
        /usr/local/go/src/runtime/proc.go:430
runtime.(*scavengerState).park(0x4fc8b60)
        /usr/local/go/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc00007dfa8 sp=0xc00007df78 pc=0x424ce9
runtime.bgscavenge(0xc00009e000)
        /usr/local/go/src/runtime/mgcscavenge.go:658 +0x59 fp=0xc00007dfc8 sp=0xc00007dfa8 pc=0x425279
runtime.gcenable.gowrap2()
        /usr/local/go/src/runtime/mgc.go:205 +0x25 fp=0xc00007dfe0 sp=0xc00007dfc8 pc=0x41b965
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc00007dfe8 sp=0xc00007dfe0 pc=0x47a501
created by runtime.gcenable in goroutine 1
        /usr/local/go/src/runtime/mgc.go:205 +0xa5

goroutine 5 gp=0xc000007880 m=nil [finalizer wait]:
runtime.gopark(0x0?, 0x2954da8?, 0x20?, 0xa7?, 0x2000000020?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc00007c620 sp=0xc00007c600 pc=0x47220e
runtime.runfinq()
        /usr/local/go/src/runtime/mfinal.go:193 +0x107 fp=0xc00007c7e0 sp=0xc00007c620 pc=0x41aa47
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc00007c7e8 sp=0xc00007c7e0 pc=0x47a501
created by runtime.createfing in goroutine 1
        /usr/local/go/src/runtime/mfinal.go:163 +0x3d

goroutine 6 gp=0xc000183c00 m=nil [GC worker (idle)]:
runtime.gopark(0x1ccbda51c9c?, 0x2?, 0xcb?, 0x4b?, 0x0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc00007e738 sp=0xc00007e718 pc=0x47220e
runtime.gcBgMarkWorker(0xc0000ae460)
        /usr/local/go/src/runtime/mgc.go:1412 +0xe9 fp=0xc00007e7c8 sp=0xc00007e738 pc=0x41dd09
runtime.gcBgMarkStartWorkers.gowrap1()
        /usr/local/go/src/runtime/mgc.go:1328 +0x25 fp=0xc00007e7e0 sp=0xc00007e7c8 pc=0x41dbe5
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc00007e7e8 sp=0xc00007e7e0 pc=0x47a501
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/go/src/runtime/mgc.go:1328 +0x105

goroutine 7 gp=0xc0006748c0 m=nil [select]:
runtime.gopark(0xc000079f78?, 0x3?, 0x90?, 0x0?, 0xc000079f72?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc000079e10 sp=0xc000079df0 pc=0x47220e
runtime.selectgo(0xc000079f78, 0xc000079f6c, 0xc000402b00?, 0x0, 0x0?, 0x1)
        /usr/local/go/src/runtime/select.go:335 +0x7a5 fp=0xc000079f38 sp=0xc000079e10 pc=0x44f885
go.opencensus.io/stats/view.(*worker).start(0xc000402b00)
        /go/pkg/mod/go.opencensus.io@v0.24.0/stats/view/worker.go:292 +0x9f fp=0xc000079fc8 sp=0xc000079f38 pc=0x160ef5f
go.opencensus.io/stats/view.init.0.gowrap1()
        /go/pkg/mod/go.opencensus.io@v0.24.0/stats/view/worker.go:34 +0x25 fp=0xc000079fe0 sp=0xc000079fc8 pc=0x160e2c5
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000079fe8 sp=0xc000079fe0 pc=0x47a501
created by go.opencensus.io/stats/view.init.0 in goroutine 1
        /go/pkg/mod/go.opencensus.io@v0.24.0/stats/view/worker.go:34 +0x8d

goroutine 8 gp=0xc000674a80 m=nil [chan receive]:
runtime.gopark(0xc00007a760?, 0x5fe905?, 0x60?, 0xe9?, 0x2d28fe0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc00007a718 sp=0xc00007a6f8 pc=0x47220e
runtime.chanrecv(0xc0000af260, 0x0, 0x1)
        /usr/local/go/src/runtime/chan.go:639 +0x41c fp=0xc00007a790 sp=0xc00007a718 pc=0x40a59c
runtime.chanrecv1(0x0?, 0x0?)
        /usr/local/go/src/runtime/chan.go:489 +0x12 fp=0xc00007a7b8 sp=0xc00007a790 pc=0x40a152
runtime.unique_runtime_registerUniqueMapCleanup.func1(...)
        /usr/local/go/src/runtime/mgc.go:1781
runtime.unique_runtime_registerUniqueMapCleanup.gowrap1()
        /usr/local/go/src/runtime/mgc.go:1784 +0x2f fp=0xc00007a7e0 sp=0xc00007a7b8 pc=0x41e9ef
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc00007a7e8 sp=0xc00007a7e0 pc=0x47a501
created by unique.runtime_registerUniqueMapCleanup in goroutine 1
        /usr/local/go/src/runtime/mgc.go:1779 +0x96

goroutine 24 gp=0xc0006741c0 m=3 mp=0xc000080e08 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc0004651e0)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc0012cdf30 sp=0xc0012cdef8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc000e70c80?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc0012ce3b0 sp=0xc0012cdf30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc0012ce870, 0xc0012ce748, 0xc0012ce750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc0012ce6f8 sp=0xc0012ce3b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc0012ce870, 0xc0012ce748, 0xc0012ce750)
        <autogenerated>:1 +0x45 fp=0xc0012ce728 sp=0xc0012ce6f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc0012ce870 sp=0xc0012ce728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc0012ce970 sp=0xc0012ce870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc0009eca78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc0009ecb48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc0012cea30 sp=0xc0012ce970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc0009ecb48?, 0xc0009ecb48?, 0xc0009ecbb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc0012cea88 sp=0xc0012cea30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972b40)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc0012cec58 sp=0xc0012cea88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc00093e6a8, 0xc0003d9520, 0xc0009a08a0)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc0012cecc8 sp=0xc0012cec58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc000c56000, {0xc0009ece90, 0xe, 0xc00069e370?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc0012ced38 sp=0xc0012cecc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc00083da40)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc0012cefc0 sp=0xc0012ced38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc0009fc540?, 0x1bcedee?}, {0xc0006ec360?, 0x5?}, {0x0, 0x0, 0x0}, 0xc000ce8440, 0xc00083c420, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc0012cf0b8 sp=0xc0012cefc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc0009ed1d0, {0xc0009ef490?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc0012cf128 sp=0xc0012cf0b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc00083c3c0, {0xc0009ef1b8, 0x1, 0x0?}, 0xc0009fc540)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc0012cf280 sp=0xc0012cf128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc0007aa380}, {0xc0009ef1b8, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc0012cf2e8 sp=0xc0012cf280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc0012cf740, 0x1, 0x1}, {0xc0012cf730, 0x1, 0x1}, {0xc0012cf720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc0012cf390 sp=0xc0012cf2e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc0009ed740, 0x1, 0x1}, {0xc0009ed730, 0x1, 0x1}, {0xc0009ed720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc0012cf3f8 sp=0xc0012cf390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc00008f8b8?}, 0xc0009b20c0)
        /fn/fn.go:159 +0x1378 fp=0xc0012cf878 sp=0xc0012cf3f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc0009a1140}, 0xc0004e5500, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc0012cf8c8 sp=0xc0012cf878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc0009a10b0}, 0xc000a72ba0, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc0012cfd98 sp=0xc0012cf8c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc000a72ba0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc0012cff78 sp=0xc0012cfd98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc0012cffe0 sp=0xc0012cff78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc0012cffe8 sp=0xc0012cffe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

goroutine 21 gp=0xc000610000 m=nil [select]:
runtime.gopark(0xc000091e90?, 0x2?, 0x40?, 0x1d?, 0xc000091e64?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc000091d08 sp=0xc000091ce8 pc=0x47220e
runtime.selectgo(0xc000091e90, 0xc000091e60, 0x14ec9b6?, 0x0, 0xc000438000?, 0x1)
        /usr/local/go/src/runtime/select.go:335 +0x7a5 fp=0xc000091e30 sp=0xc000091d08 pc=0x44f885
google.golang.org/grpc/internal/transport.(*controlBuffer).get(0xc000a3c640, 0x1)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/controlbuf.go:412 +0x108 fp=0xc000091ec0 sp=0xc000091e30 pc=0x14cbb88
google.golang.org/grpc/internal/transport.(*loopyWriter).run(0xc00069a400)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/controlbuf.go:575 +0x7b fp=0xc000091f20 sp=0xc000091ec0 pc=0x14cc35b
google.golang.org/grpc/internal/transport.NewServerTransport.func2()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/http2_server.go:335 +0xde fp=0xc000091fe0 sp=0xc000091f20 pc=0x14e2f1e
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000091fe8 sp=0xc000091fe0 pc=0x47a501
created by google.golang.org/grpc/internal/transport.NewServerTransport in goroutine 20
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/http2_server.go:333 +0x18be

goroutine 22 gp=0xc0006101c0 m=nil [select]:
runtime.gopark(0xc000078740?, 0x4?, 0x70?, 0x0?, 0xc0000786c0?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc000092d50 sp=0xc000092d30 pc=0x47220e
runtime.selectgo(0xc000092f40, 0xc0000786b8, 0x0?, 0x0, 0x0?, 0x1)
        /usr/local/go/src/runtime/select.go:335 +0x7a5 fp=0xc000092e78 sp=0xc000092d50 pc=0x44f885
google.golang.org/grpc/internal/transport.(*http2Server).keepalive(0xc0000d0000)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/http2_server.go:1180 +0x1f3 fp=0xc000092fc8 sp=0xc000092e78 pc=0x14ea053
google.golang.org/grpc/internal/transport.NewServerTransport.gowrap1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/http2_server.go:356 +0x25 fp=0xc000092fe0 sp=0xc000092fc8 pc=0x14e2e05
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000092fe8 sp=0xc000092fe0 pc=0x47a501
created by google.golang.org/grpc/internal/transport.NewServerTransport in goroutine 20
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/http2_server.go:356 +0x1905

goroutine 23 gp=0xc000610380 m=nil [IO wait]:
runtime.gopark(0xc7?, 0xb2556252da12afb4?, 0x8d?, 0x8f?, 0xb?)
        /usr/local/go/src/runtime/proc.go:424 +0xce fp=0xc000a6f628 sp=0xc000a6f608 pc=0x47220e
runtime.netpollblock(0x4a2f78?, 0x408246?, 0x0?)
        /usr/local/go/src/runtime/netpoll.go:575 +0xf7 fp=0xc000a6f660 sp=0xc000a6f628 pc=0x436377
internal/poll.runtime_pollWait(0x7f2e2fc5f5c8, 0x72)
        /usr/local/go/src/runtime/netpoll.go:351 +0x85 fp=0xc000a6f680 sp=0xc000a6f660 pc=0x471505
internal/poll.(*pollDesc).wait(0xc00069a000?, 0xc000d0e000?, 0x0)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x27 fp=0xc000a6f6a8 sp=0xc000a6f680 pc=0x4fb767
internal/poll.(*pollDesc).waitRead(...)
        /usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc00069a000, {0xc000d0e000, 0xa000, 0xa000})
        /usr/local/go/src/internal/poll/fd_unix.go:165 +0x27a fp=0xc000a6f740 sp=0xc000a6f6a8 pc=0x4fca5a
net.(*netFD).Read(0xc00069a000, {0xc000d0e000?, 0x410e5e?, 0x7f2de818ff98?})
        /usr/local/go/src/net/fd_posix.go:55 +0x25 fp=0xc000a6f788 sp=0xc000a6f740 pc=0x616a05
net.(*conn).Read(0xc0009ee000, {0xc000d0e000?, 0xc000a4c406?, 0xc000d0e005?})
        /usr/local/go/src/net/net.go:189 +0x45 fp=0xc000a6f7d0 sp=0xc000a6f788 pc=0x626d25
net.(*TCPConn).Read(0x1009da1c8?, {0xc000d0e000?, 0x18?, 0xc000d12016?})
        <autogenerated>:1 +0x25 fp=0xc000a6f800 sp=0xc000a6f7d0 pc=0x63a7e5
crypto/tls.(*atLeastReader).Read(0xc00093e000, {0xc000d0e000?, 0x0?, 0xc00093e000?})
        /usr/local/go/src/crypto/tls/conn.go:809 +0x3b fp=0xc000a6f848 sp=0xc000a6f800 pc=0x68d5fb
bytes.(*Buffer).ReadFrom(0xc0009da2b8, {0x2cd6300, 0xc00093e000})
        /usr/local/go/src/bytes/buffer.go:211 +0x98 fp=0xc000a6f8a0 sp=0xc000a6f848 pc=0x491a18
crypto/tls.(*Conn).readFromUntil(0xc0009da008, {0x2cd64e0, 0xc0009ee000}, 0xc000a6f938?)
        /usr/local/go/src/crypto/tls/conn.go:831 +0xde fp=0xc000a6f8d8 sp=0xc000a6f8a0 pc=0x68d7de
crypto/tls.(*Conn).readRecordOrCCS(0xc0009da008, 0x0)
        /usr/local/go/src/crypto/tls/conn.go:629 +0x3cf fp=0xc000a6fb50 sp=0xc000a6f8d8 pc=0x68a8ef
crypto/tls.(*Conn).readRecord(...)
        /usr/local/go/src/crypto/tls/conn.go:591
crypto/tls.(*Conn).Read(0xc0009da008, {0xc000a74000, 0x8000, 0x7f2e00000000?})
        /usr/local/go/src/crypto/tls/conn.go:1385 +0x150 fp=0xc000a6fbc0 sp=0xc000a6fb50 pc=0x691150
google.golang.org/grpc/internal/credentials.(*syscallConn).Read(0x0?, {0xc000a74000?, 0xc000a6fc18?, 0x47638d?})
        <autogenerated>:1 +0x29 fp=0xc000a6fbf0 sp=0xc000a6fbc0 pc=0x14a1b49
bufio.(*Reader).Read(0xc000a729c0, {0xc0001d0740, 0x9, 0x4fccc80?})
        /usr/local/go/src/bufio/bufio.go:241 +0x197 fp=0xc000a6fc28 sp=0xc000a6fbf0 pc=0x6d53b7
io.ReadAtLeast({0x2cd6200, 0xc000a729c0}, {0xc0001d0740, 0x9, 0x9}, 0x9)
        /usr/local/go/src/io/io.go:335 +0x90 fp=0xc000a6fc70 sp=0xc000a6fc28 pc=0x4895f0
io.ReadFull(...)
        /usr/local/go/src/io/io.go:354
golang.org/x/net/http2.readFrameHeader({0xc0001d0740, 0x9, 0xc001604cc0?}, {0x2cd6200?, 0xc000a729c0?})
        /go/pkg/mod/golang.org/x/net@v0.34.0/http2/frame.go:237 +0x65 fp=0xc000a6fcc0 sp=0xc000a6fc70 pc=0x940dc5
golang.org/x/net/http2.(*Framer).ReadFrame(0xc0001d0700)
        /go/pkg/mod/golang.org/x/net@v0.34.0/http2/frame.go:501 +0x85 fp=0xc000a6fd68 sp=0xc000a6fcc0 pc=0x941505
google.golang.org/grpc/internal/transport.(*http2Server).HandleStreams(0xc0000d0000, {0x2cfe9b0, 0xc000a4b260}, 0xc000a4b290)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/internal/transport/http2_server.go:640 +0x107 fp=0xc000a6fe88 sp=0xc000a6fd68 pc=0x14e5c67
google.golang.org/grpc.(*Server).serveStreams(0xc00013c600, {0x2cfea90?, 0x4ffa080?}, {0x2cff3c8, 0xc0000d0000}, {0x2d0a1d0?, 0xc0009ee000?})
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1024 +0x396 fp=0xc000a6ff70 sp=0xc000a6fe88 pc=0x1557bd6
google.golang.org/grpc.(*Server).handleRawConn.func1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:959 +0x56 fp=0xc000a6ffe0 sp=0xc000a6ff70 pc=0x1557376
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000a6ffe8 sp=0xc000a6ffe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).handleRawConn in goroutine 20
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:958 +0x1c6

goroutine 25 gp=0xc0006108c0 m=5 mp=0xc000791108 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc000465380)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc0012c9f30 sp=0xc0012c9ef8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc000e70d00?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc0012ca3b0 sp=0xc0012c9f30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc0012ca870, 0xc0012ca748, 0xc0012ca750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc0012ca6f8 sp=0xc0012ca3b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc0012ca870, 0xc0012ca748, 0xc0012ca750)
        <autogenerated>:1 +0x45 fp=0xc0012ca728 sp=0xc0012ca6f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc0012ca870 sp=0xc0012ca728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc0012ca970 sp=0xc0012ca870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc000dc2a78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc000dc2b48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc0012caa30 sp=0xc0012ca970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc000dc2b48?, 0xc000dc2b48?, 0xc000dc2bb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc0012caa88 sp=0xc0012caa30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972fc0)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc0012cac58 sp=0xc0012caa88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc00093f6b0, 0xc0006691a0, 0xc000bc7da0)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc0012cacc8 sp=0xc0012cac58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc000c3b220, {0xc000dc2e90, 0xe, 0xc00069f3b0?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc0012cad38 sp=0xc0012cacc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc00083dcc0)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc0012cafc0 sp=0xc0012cad38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc000dc7740?, 0x1bcedee?}, {0xc00067c960?, 0x5?}, {0x0, 0x0, 0x0}, 0xc000a3c140, 0xc00083c7e0, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc0012cb0b8 sp=0xc0012cafc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc000dc31d0, {0xc0005b7888?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc0012cb128 sp=0xc0012cb0b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc00083c780, {0xc0009efa10, 0x1, 0x0?}, 0xc000dc7740)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc0012cb280 sp=0xc0012cb128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc0007cdb90}, {0xc0009efa10, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc0012cb2e8 sp=0xc0012cb280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc0012cb740, 0x1, 0x1}, {0xc0012cb730, 0x1, 0x1}, {0xc0012cb720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc0012cb390 sp=0xc0012cb2e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc000dc3740, 0x1, 0x1}, {0xc000dc3730, 0x1, 0x1}, {0xc000dc3720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc0012cb3f8 sp=0xc0012cb390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc00008f8b8?}, 0xc0009b2960)
        /fn/fn.go:159 +0x1378 fp=0xc0012cb878 sp=0xc0012cb3f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc000d5a990}, 0xc000d52300, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc0012cb8c8 sp=0xc0012cb878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc000d5a900}, 0xc000a72c00, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc0012cbd98 sp=0xc0012cb8c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc000a72c00)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc0012cbf78 sp=0xc0012cbd98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc0012cbfe0 sp=0xc0012cbf78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc0012cbfe8 sp=0xc0012cbfe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

goroutine 41 gp=0xc000610a80 m=0 mp=0x4fccc80 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc000464000)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc000ecff30 sp=0xc000ecfef8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc00082d000?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc000ed03b0 sp=0xc000ecff30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc000ed0870, 0xc000ed0748, 0xc000ed0750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc000ed06f8 sp=0xc000ed03b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc000ed0870, 0xc000ed0748, 0xc000ed0750)
        <autogenerated>:1 +0x45 fp=0xc000ed0728 sp=0xc000ed06f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc000ed0870 sp=0xc000ed0728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc000ed0970 sp=0xc000ed0870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc000ed0a78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc000ed0b48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc000ed0a30 sp=0xc000ed0970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc000ed0b48?, 0xc000ed0b48?, 0xc000ed0bb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc000ed0a88 sp=0xc000ed0a30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972780)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc000ed0c58 sp=0xc000ed0a88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc001210138, 0xc00090e560, 0xc0009d47b0)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc000ed0cc8 sp=0xc000ed0c58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc000d93040, {0xc000ed0e90, 0xe, 0xc0006315e0?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc000ed0d38 sp=0xc000ed0cc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc00083de00)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc000ed0fc0 sp=0xc000ed0d38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc001896c40?, 0x1bcedee?}, {0xc000dda808?, 0x5?}, {0x0, 0x0, 0x0}, 0xc0013d4840, 0xc00083c920, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc000ed10b8 sp=0xc000ed0fc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc000ed11d0, {0xc001248ec8?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc000ed1128 sp=0xc000ed10b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc00083c8c0, {0xc00090ba08, 0x1, 0x0?}, 0xc001896c40)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc000ed1280 sp=0xc000ed1128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc000521c00}, {0xc00090ba08, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc000ed12e8 sp=0xc000ed1280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc000ed1740, 0x1, 0x1}, {0xc000ed1730, 0x1, 0x1}, {0xc000ed1720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc000ed1390 sp=0xc000ed12e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc000ed1740, 0x1, 0x1}, {0xc000ed1730, 0x1, 0x1}, {0xc000ed1720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc000ed13f8 sp=0xc000ed1390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc000a718b8?}, 0xc000a73500)
        /fn/fn.go:159 +0x1378 fp=0xc000ed1878 sp=0xc000ed13f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc000e65440}, 0xc0004e4300, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc000ed18c8 sp=0xc000ed1878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc000e653b0}, 0xc000a734a0, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc000ed1d98 sp=0xc000ed18c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc000a734a0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc000ed1f78 sp=0xc000ed1d98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc000ed1fe0 sp=0xc000ed1f78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000ed1fe8 sp=0xc000ed1fe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

goroutine 36 gp=0xc000de8fc0 m=10 mp=0xc000640308 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc000464d00)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc000585f30 sp=0xc000585ef8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc00069be80?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc0005863b0 sp=0xc000585f30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc000586870, 0xc000586748, 0xc000586750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc0005866f8 sp=0xc0005863b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc000586870, 0xc000586748, 0xc000586750)
        <autogenerated>:1 +0x45 fp=0xc000586728 sp=0xc0005866f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc000586870 sp=0xc000586728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc000586970 sp=0xc000586870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc000586a78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc000586b48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc000586a30 sp=0xc000586970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc000586b48?, 0xc000586b48?, 0xc000586bb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc000586a88 sp=0xc000586a30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972780)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc000586c58 sp=0xc000586a88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc0012102e8, 0xc00093d720, 0xc0006458f0)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc000586cc8 sp=0xc000586c58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc000954d20, {0xc000586e90, 0xe, 0xc00069eff0?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc000586d38 sp=0xc000586cc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc0004a4500)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc000586fc0 sp=0xc000586d38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc000e4ca40?, 0x1bcedee?}, {0xc000d04db8?, 0x5?}, {0x0, 0x0, 0x0}, 0xc000f52f80, 0xc0009feba0, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc0005870b8 sp=0xc000586fc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc0005871d0, {0xc00090bba0?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc000587128 sp=0xc0005870b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc0009feb40, {0xc0013b0cc0, 0x1, 0x0?}, 0xc000e4ca40)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc000587280 sp=0xc000587128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc00077e0e0}, {0xc0013b0cc0, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc0005872e8 sp=0xc000587280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc000587740, 0x1, 0x1}, {0xc000587730, 0x1, 0x1}, {0xc000587720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc000587390 sp=0xc0005872e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc000587740, 0x1, 0x1}, {0xc000587730, 0x1, 0x1}, {0xc000587720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc0005873f8 sp=0xc000587390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc000a6d8b8?}, 0xc0009b2000)
        /fn/fn.go:159 +0x1378 fp=0xc000587878 sp=0xc0005873f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc000e723c0}, 0xc000df4900, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc0005878c8 sp=0xc000587878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc000e72330}, 0xc0009b2b40, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc000587d98 sp=0xc0005878c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc0009b2b40)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc000587f78 sp=0xc000587d98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc000587fe0 sp=0xc000587f78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000587fe8 sp=0xc000587fe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

goroutine 35 gp=0xc000de8700 m=9 mp=0xc00063f508 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc000464c30)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc000d85f30 sp=0xc000d85ef8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc0013d8100?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc000d863b0 sp=0xc000d85f30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc000d86870, 0xc000d86748, 0xc000d86750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc000d866f8 sp=0xc000d863b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc000d86870, 0xc000d86748, 0xc000d86750)
        <autogenerated>:1 +0x45 fp=0xc000d86728 sp=0xc000d866f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc000d86870 sp=0xc000d86728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc000d86970 sp=0xc000d86870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc000d86a78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc000d86b48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc000d86a30 sp=0xc000d86970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc000d86b48?, 0xc000d86b48?, 0xc000d86bb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc000d86a88 sp=0xc000d86a30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972c00)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc000d86c58 sp=0xc000d86a88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc000f4e180, 0xc0006682a0, 0xc001056810)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc000d86cc8 sp=0xc000d86c58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc00106a5a0, {0xc000d86e90, 0xe, 0xc0007ca5f0?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc000d86d38 sp=0xc000d86cc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc0009ffcc0)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc000d86fc0 sp=0xc000d86d38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc0009fc340?, 0x1bcedee?}, {0xc00057bb10?, 0x5?}, {0x0, 0x0, 0x0}, 0xc00087fa40, 0xc0009fece0, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc000d870b8 sp=0xc000d86fc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc000d871d0, {0xc0005b76b8?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc000d87128 sp=0xc000d870b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc0009fec80, {0xc0009ef230, 0x1, 0x0?}, 0xc0009fc340)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc000d87280 sp=0xc000d87128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc000897dc0}, {0xc0009ef230, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc000d872e8 sp=0xc000d87280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc000d87740, 0x1, 0x1}, {0xc000d87730, 0x1, 0x1}, {0xc000d87720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc000d87390 sp=0xc000d872e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc000e3d740, 0x1, 0x1}, {0xc000e3d730, 0x1, 0x1}, {0xc000e3d720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc000d873f8 sp=0xc000d87390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc00008c8b8?}, 0xc0009b32c0)
        /fn/fn.go:159 +0x1378 fp=0xc000d87878 sp=0xc000d873f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc000d45d10}, 0xc000d35e00, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc000d878c8 sp=0xc000d87878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc000d45c80}, 0xc0009b2ae0, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc000d87d98 sp=0xc000d878c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc0009b2ae0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc000d87f78 sp=0xc000d87d98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc000d87fe0 sp=0xc000d87f78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000d87fe8 sp=0xc000d87fe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

goroutine 37 gp=0xc000de88c0 m=6 mp=0xc000791808 [syscall]:
runtime.cgocall(0x1b54fa0, 0xc000465c70)
        /usr/local/go/src/runtime/cgocall.go:167 +0x4b fp=0xc000d1df30 sp=0xc000d1def8 pc=0x46bf6b
github.com/ebitengine/purego.RegisterFunc.func1({0xc0004e5580?, 0x5?, 0x5?})
        /go/pkg/mod/github.com/ebitengine/purego@v0.7.1/func.go:302 +0xc65 fp=0xc000d1e3b0 sp=0xc000d1df30 pc=0x1b52645
reflect.callReflect(0xc0012b24b0, 0xc000d1e870, 0xc000d1e748, 0xc000d1e750)
        /usr/local/go/src/reflect/value.go:767 +0x53d fp=0xc000d1e6f8 sp=0xc000d1e3b0 pc=0x4de17d
reflect.callReflect(0xc0012b24b0, 0xc000d1e870, 0xc000d1e748, 0xc000d1e750)
        <autogenerated>:1 +0x45 fp=0xc000d1e728 sp=0xc000d1e6f8 pc=0x4f1485
reflect.makeFuncStub()
        /usr/local/go/src/reflect/asm_amd64.s:47 +0x6e fp=0xc000d1e870 sp=0xc000d1e728 pc=0x4ed74e
kcl-lang.io/lib/go/native.cApiCall[...](0xc0012aea48, {0x26d5a77, 0x18}, 0x1)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:96 +0x1dd fp=0xc000d1e970 sp=0xc000d1e870 pc=0x1b62d5d
kcl-lang.io/lib/go/native.(*NativeServiceClient).ExecProgram(...)
        /go/pkg/mod/kcl-lang.io/lib@v0.11.1/go/native/client.go:131
kcl-lang.io/kcl-go/pkg/kcl.runWithHooks({0xc000d1ea78, 0x0, 0x0}, {0x4f6a990, 0x1, 0x1}, {0xc000d1eb48, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:437 +0x186 fp=0xc000d1ea30 sp=0xc000d1e970 pc=0x1b63ee6
kcl-lang.io/kcl-go/pkg/kcl.run(...)
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:445
kcl-lang.io/kcl-go/pkg/kcl.RunWithOpts({0xc000d1eb48?, 0xc000d1eb48?, 0xc000d1ebb8?})
        /go/pkg/mod/kcl-lang.io/kcl-go@v0.11.1/pkg/kcl/api.go:372 +0x45 fp=0xc000d1ea88 sp=0xc000d1ea30 pc=0x1b638c5
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run.func1(0xc000972840)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:666 +0x3aa fp=0xc000d1ec58 sp=0xc000d1ea88 pc=0x1bc02aa
kcl-lang.io/kpm/pkg/visitor.(*PkgVisitor).Visit(0xc001211200, 0xc00078de00, 0xc0009b1b00)
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/visitor/visitor.go:60 +0xea fp=0xc000d1ecc8 sp=0xc000d1ec58 pc=0x1bb3c2a
kcl-lang.io/kpm/pkg/client.(*KpmClient).Run(0xc000c7d720, {0xc000d1ee90, 0xe, 0xc00069f950?})
        /go/pkg/mod/kcl-lang.io/kpm@v0.11.1/pkg/client/run.go:641 +0x20d fp=0xc000d1ed38 sp=0xc000d1ecc8 pc=0x1bbfe4d
kcl-lang.io/cli/pkg/options.(*RunOptions).Run(0xc0009ff540)
        /go/pkg/mod/kcl-lang.io/cli@v0.11.1/pkg/options/run.go:154 +0xa17 fp=0xc000d1efc0 sp=0xc000d1ed38 pc=0x1fe46f7
kcl-lang.io/krm-kcl/pkg/edit.RunKCLWithConfig({0xc000dc77c0?, 0x1bcedee?}, {0xc000d05540?, 0x5?}, {0x0, 0x0, 0x0}, 0xc00087e180, 0xc0009fe2e0, {0x4ffa080, ...})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/bootstrap.go:90 +0x2fb fp=0xc000d1f0b8 sp=0xc000d1efc0 pc=0x1fe647b
kcl-lang.io/krm-kcl/pkg/edit.(*SimpleTransformer).Transform(0xc000d1f1d0, {0xc00090bc70?, 0x26eeaf2?, 0x21?})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/edit/transformer.go:54 +0xc5 fp=0xc000d1f128 sp=0xc000d1f0b8 pc=0x1fe81a5
kcl-lang.io/krm-kcl/pkg/config.(*KCLRun).Transform(0xc0009fe280, {0xc0009eea28, 0x1, 0x0?}, 0xc000dc77c0)
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/config/config.go:211 +0x745 fp=0xc000d1f280 sp=0xc000d1f128 pc=0x2000645
kcl-lang.io/krm-kcl/pkg/kio.Filter.Filter({0xc00055c2a0}, {0xc0009eea28, 0x1, 0x1})
        /go/pkg/mod/kcl-lang.io/krm-kcl@v0.11.1/pkg/kio/filter.go:33 +0xfa fp=0xc000d1f2e8 sp=0xc000d1f280 pc=0x2000f1a
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.ExecuteWithCallback({{0xc000d1f740, 0x1, 0x1}, {0xc000d1f730, 0x1, 0x1}, {0xc000d1f720, 0x1, 0x1}, 0x0}, ...)
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:137 +0x25d fp=0xc000d1f390 sp=0xc000d1f2e8 pc=0x1bd339d
sigs.k8s.io/kustomize/kyaml/kio.Pipeline.Execute({{0xc000d1f740, 0x1, 0x1}, {0xc000d1f730, 0x1, 0x1}, {0xc000d1f720, 0x1, 0x1}, 0x0})
        /go/pkg/mod/sigs.k8s.io/kustomize/kyaml@v0.17.2/kio/kio.go:104 +0x3a fp=0xc000d1f3f8 sp=0xc000d1f390 pc=0x1bd311a
main.(*Function).RunFunction(0xc00068d560, {0x23845c0?, 0xc00008e8b8?}, 0xc0009b2c00)
        /fn/fn.go:159 +0x1378 fp=0xc000d1f878 sp=0xc000d1f3f8 pc=0x20e1198
github.com/crossplane/function-sdk-go/proto/v1._FunctionRunnerService_RunFunction_Handler({0x23845c0, 0xc00068d560}, {0x2cfe9b0, 0xc000c765a0}, 0xc0013d8c00, 0x0)
        /go/pkg/mod/github.com/crossplane/function-sdk-go@v0.4.0/proto/v1/run_function_grpc.pb.go:116 +0x1a6 fp=0xc000d1f8c8 sp=0xc000d1f878 pc=0x2004fc6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc00013c600, {0x2cfe9b0, 0xc000c76510}, 0xc0009b2ba0, 0xc000a4a8d0, 0x4f6d810, 0x0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1400 +0x103b fp=0xc000d1fd98 sp=0xc000d1f8c8 pc=0x155a31b
google.golang.org/grpc.(*Server).handleStream(0xc00013c600, {0x2cff3c8, 0xc0000d0000}, 0xc0009b2ba0)
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1810 +0xbaa fp=0xc000d1ff78 sp=0xc000d1fd98 pc=0x155f42a
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1030 +0x7f fp=0xc000d1ffe0 sp=0xc000d1ff78 pc=0x1557e3f
runtime.goexit({})
        /usr/local/go/src/runtime/asm_amd64.s:1700 +0x1 fp=0xc000d1ffe8 sp=0xc000d1ffe0 pc=0x47a501
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 23
        /go/pkg/mod/google.golang.org/grpc@v1.70.0/server.go:1041 +0x125

rax    0xf71
rbx    0x7f2dc8000020
rcx    0x7f2da43d3090
rdx    0x7f2da43d2f30
rdi    0x7f2e3001db80
rsi    0x164
rbp    0x165
rsp    0x7f2de18b67d0
r8     0x7f2da43d2f40
r9     0x3d3000
r10    0x180
r11    0x206
r12    0xd0
r13    0x1000
r14    0x7f2da43d2f30
r15    0x180
rip    0x7f2e2fed2153
rflags 0x10206
cs     0x33
fs     0x0
gs     0x0

@ytsarev
Copy link
Copy Markdown
Member

ytsarev commented May 13, 2025

FWIW, I managed to create Upbox 1-by-1 from example without the upboxset

k get upboxes
NAME                SYNCED   READY   COMPOSITION                       AGE
allianz-amitap      True     True    upboxes.aws.platform.upbound.io   102s
allianz-amjad       True     True    upboxes.aws.platform.upbound.io   36s
allianz-christoph   True     True    upboxes.aws.platform.upbound.io   7m40s
yury-allianz        True     True    upboxes.aws.platform.upbound.io   10m

@djeremiah djeremiah self-requested a review May 19, 2025 16:49
Comment thread README.md
Comment thread apis/upboxes/definition.yaml Outdated
Comment thread apis/upboxsets/definition.yaml Outdated
@kaessert kaessert force-pushed the tk/new-devex branch 5 times, most recently from f6daf9c to 4339977 Compare May 27, 2025 11:40
Comment thread apis/upboxes/definition.yaml
Comment thread apis/upboxes/definition.yaml
Comment thread apis/upboxes/definition.yaml
Comment thread apis/upboxes/definition.yaml
Comment thread apis/upboxes/composition.yaml
Comment thread apis/upboxsets/definition.yaml
Comment thread apis/upboxsets/definition.yaml
Comment thread apis/upboxsets/definition.yaml
Comment thread apis/upboxsets/composition.yaml
Comment thread apis/upboxsets/composition.yaml
@kaessert kaessert force-pushed the tk/new-devex branch 2 times, most recently from 1a207cd to 9ca8657 Compare May 27, 2025 12:59
Copy link
Copy Markdown

@djeremiah djeremiah left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ytsarev
Copy link
Copy Markdown
Member

ytsarev commented May 28, 2025

@kaessert unfortunately i can still reproduce the crash

$ up project run

$ up ctx .
Kubeconfig context "upbound": Upbound solutions/upbound-gcp-eu-west-3/default/configuration-upbox

$ task update-aws-creds ( from sa-up)

$ k apply -f providers/aws-config.yaml (from sa-up)


$ k apply -f examples/upboxset/example.yaml

I used slightly extended example with Allianz attendees:

apiVersion: aws.platform.upbound.io/v1alpha1
kind: UpboxSet
metadata:
  name: example
spec:
  parameters:
    company: upbound
    owner: team-solutions
    networkId: upbox-aws-network
    size: micro
    amiId: "ami-0b3d63e88dd60b19c"
    users:
      yury:
        publicKey: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMXbvrMf29K2T/ubkmMlA4ER5NxJ+GlTqAkjF5rX/Mv yury@upbound.io"
      tobias:
        publicKey: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKoZQbAbTmEQmFzsRwY1Qc9WEY3EPuryShqu1whWYCDt tobias.kasser@upbound.io"
      amitap:
        publicKey: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDrZoFoP4l9tol9uOJRhetnFJ31YS4Tpo8/ZYCCuSr+czkJSmP5NnuhiseSrF+PvMeJMpUlIADK5xH87yhWeTW1uH1bUd4sEGbeg84N3CYNL+uDayG/YKqyONgr30szyqWSa1HKPId1QmLv+sv0M9NwewV+tfvMbuu9Veju8p2yAW7c+oEyAvIfSAxAWExfErGH9kFxTx3cM486KXH+4G8cOQVeCWboW6Nj8tQKC+rpIn+sdyFtSxIQUj6442emjTO/mSS7YGmd7OvDp55346UAIeFIoEQXa3on0CumerrHiY+W4wLHOrF09hIbX0juZJJrY5iHtYlGIAJkaZnDusp7wNhAKKxm9sSKG1cTxxrOupPb/W1WpBBmv+MbwKAjU6p+LMD+PFHTp4o0x4qMCY3SNGpV3mNTHxUQa8EeHA4oM/vcSdwVAPg7LFrGBZYPtP3/juWQWry0cw/zrrJYquj0whPXF1MsYFUWiDsFpS6/O8DQgFJkNvFlq4EHK2ajm9kkWLR2t1a2sFsB0Lhy6FPSQkSFexhYhQmMEBi16iSUivyeSwaP4F3GdLuT55RZpvV4nrdvcKhY5nHlus+JknZiZZjVDLsz1I1x41v/5xsNLbDP4KTIjQk3YkXVel2IpL4XDL90LEQIOz89fwzM3ln+hbG/Xm/aurqJQT9k0Dicww== amitap.barve@allianz.de"
      amjad:
        publicKey: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDGlZUxWfOhaBwwDWTIBq1C4TB8kOMCQjEh7e0Zoz7g1G34cKyQ0tJ6YkXu7198fRozB4IpG/t6p7ZhM6Oay3myl6OvspB4bx0VFVMHBhq0zwQg/9twAgTuA6zPoNTBCkgVTFNaq4DAMAqihyg1kWwfvPxQoaSI19EhOGxj30v/lJT8V/CjazNDWmKndDwNCGMtKHALxkRx0+KGBcXAmkw9ETZwCJ57jz27Hk4K1fhJnWo2XbhVs2/OzpZZOnsohQ8B4zrcWlyM61Ul1wl2Zj5xy2HT8UQ1vG4tBqnBFpYmmsn49YobTQXxrWMn8Uhzawyje1okciBQdOTejDVbC2f96/BdRtfXGiq4pcuTgOGMnnDRiph63jVyjPhObtIT9WxrEnPCkqw/ItwofN9MCi5S9X9+ymWdHUjsXHG1WsCOm76y7ThKcimKozqzH01t1tNilSbYAQkf72Zzjodq0XmSxLu1nVRBkqibw3OmQcV+UT+/yJevrjt5KG2r+k/bmScSzvXklbJc0FPChfprhmUDhsoTims+CkcS5AhN/DEZGOAL951bOLPtxUNAdjGP/kq7/T/fJhxlDNO8Hf+k8gKruyNrWwqPFDz6LYGDZuFZY/wVlYcxYIU4G4Z1r9IegadsU59F+jA/obU4jXrZ6cTm1TqrHgjG1eN2ysWtZVf5BQ== ALLIANZDE+u9yp4em@XPE1-D60944"
      christoph:
        publicKey: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBm0rFpga7bm6ipiTqYI75uHcr9Xmf9Twc2YBXmIAPOm christoph25"
k describe -f examples/upboxset/example.yaml
...
Events:
  Type    Reason             Age                   From                                                             Message
  ----    ------             ----                  ----                                                             -------
  Normal  SelectComposition  23m                   defined/compositeresourcedefinition.apiextensions.crossplane.io  Successfully selected composition: upboxsets.aws.platform.upbound.io
  Normal  SelectComposition  23m                   defined/compositeresourcedefinition.apiextensions.crossplane.io  Selected composition revision: upboxsets.aws.platform.upbound.io-fe15c1b
  Normal  ComposeResources   23m (x5 over 23m)     defined/compositeresourcedefinition.apiextensions.crossplane.io  Composed resource "upbox-christoph" is not yet ready
  Normal  ComposeResources   17m (x16 over 23m)    defined/compositeresourcedefinition.apiextensions.crossplane.io  Composed resource "upbox-tobias" is not yet ready
  Normal  ComposeResources   12m (x26 over 23m)    defined/compositeresourcedefinition.apiextensions.crossplane.io  Composed resource "upbox-amitap" is not yet ready
  Normal  ComposeResources   8m18s (x35 over 23m)  defined/compositeresourcedefinition.apiextensions.crossplane.io  Composed resource "upbox-yury" is not yet ready
  Normal  ComposeResources   3m16s (x45 over 23m)  defined/compositeresourcedefinition.apiextensions.crossplane.io  Composed resource "upbox-amjad" is not yet ready
k get upboxes
NAME                               SYNCED   READY   COMPOSITION                       AGE
upbound-team-solutions-amitap      False            upboxes.aws.platform.upbound.io   23m
upbound-team-solutions-amjad       False            upboxes.aws.platform.upbound.io   23m
upbound-team-solutions-christoph   False            upboxes.aws.platform.upbound.io   23m
upbound-team-solutions-tobias      False            upboxes.aws.platform.upbound.io   23m
upbound-team-solutions-yury        False            upboxes.aws.platform.upbound.io   23m
k describe upbox upbound-team-solutions-amitap
...
  Warning  ComposeResources   2m30s (x7 over 18m)  defined/compositeresourcedefinition.apiextensions.crossplane.io  cannot compose resources: cannot run Composition pipeline step "upbox": cannot run Function "solutions-configuration-upboxupbox": rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection error: desc = "transport: Error while dialing: dial tcp 10.28.14.119:9443: connect: connection refused"; last resolver error: produced zero addresses
  Warning  ComposeResources   70s (x9 over 24m)    defined/compositeresourcedefinition.apiextensions.crossplane.io  cannot compose resources: cannot run Composition pipeline step "upbox": cannot run Function "solutions-configuration-upboxupbox": rpc error: code = Unavailable desc = error reading from server: EOF
k get functions
NAME                                     INSTALLED   HEALTHY   PACKAGE                                                                                                                          AGE
crossplane-contrib-function-auto-ready   True        True      xpkg.upbound.io/crossplane-contrib/function-auto-ready:v0.5.0                                                                    35m
solutions-configuration-upboxupbox       True        False     xpkg.upbound.io/solutions/configuration-upbox_upbox@sha256:5cda15ffe6d26b3bfff1111dc0263b0d9a9e366a248a6aa091c49192313657d0      35m
solutions-configuration-upboxupboxset    True        True      xpkg.upbound.io/solutions/configuration-upbox_upboxset@sha256:81d3abbc261dfeea6703b3bdfb0adffc5bf90657dae6313fbba3025ac48fc3ae   35m

Embedded function is crashed again

 k -n crossplane-system get pod
NAME                                                              READY   STATUS             RESTARTS       AGE
crossplane-7444ff8556-gx5x9                                       1/1     Running            0              36m
crossplane-contrib-function-auto-ready-35bfe51b9ce9-9758ffn7slq   1/1     Running            0              35m
crossplane-rbac-manager-7dbd59c947-l5vbf                          1/1     Running            0              36m
solutions-configuration-upboxupbox-5cda15ffe6d2-6b8b89665ct6ld9   0/1     CrashLoopBackOff   8 (119s ago)   35m
solutions-configuration-upboxupboxset-81d3abbc261d-85c9746q5f5l   1/1     Running            0              35m
upbound-provider-aws-ec2-52857f6d6c68-75b674b7bd-mz5k5            1/1     Running            0              35m
upbound-provider-family-aws-be381b76ab0b-7cb8c84895-qn2t5         1/1     Running            0              35m

@kaessert
Copy link
Copy Markdown
Collaborator Author

kaessert commented Jun 3, 2025

@ytsarev the culprit seems to be this pretty code https://github.com/ebitengine/purego/blob/main/func.go. There seems to be a problem handling the memory on arm architectures. The problem does not appear on our aws space.

Copy link
Copy Markdown
Member

@ytsarev ytsarev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kaessert should we merge it but document the potential failure?

@kaessert kaessert merged commit e42dfa0 into main Jul 21, 2025
3 checks passed
@kaessert kaessert deleted the tk/new-devex branch July 21, 2025 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Convert to new Devex

3 participants