Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Unable to deploy app with Flow extensions #4894

Open
2 tasks done
patryk-smc opened this issue Nov 20, 2024 · 0 comments
Open
2 tasks done

[Bug]: Unable to deploy app with Flow extensions #4894

patryk-smc opened this issue Nov 20, 2024 · 0 comments
Labels
Area: @shopify/app @shopify/app package issues Type: Bug Something isn't working

Comments

@patryk-smc
Copy link

Please confirm that you have:

  • Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
  • Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?

Extension

Expected behavior

It should deploy.

Actual behavior

I recently started experimenting with Flow extensions and ran into an issue. Initially, I created an extension with a handle longer than 30 characters, unaware of the character limit. I deployed it to my staging environment, which failed, but oddly enough, the app version was released without the extension.

I then shortened the handle and redeployed to staging. Unfortunately, since then, I’ve been encountering errors like the following.

I tried deploying directly from my computer in the staging environment, and it worked fine. I was hopeful that it would now work in CI, but after retrying the release phase, the same error persists.

Next, I deleted the extension folder and redeployed to staging, and everything worked as expected - Flow extension was gone. However, when I reverted the commit that removed the folder, I’m back to encountering the same error.

Verbose output

> shopify app deploy --force --verbose "--config" "shopify.app.staging.toml" "--message=v1100 - Deploy 2b01d91f" "--source-control-url=[redacted]"
2024-11-20T16:51:40.452Z: Checking if there's a version of @shopify/cli newer than 3.70.0
2024-11-20T16:51:40.453Z: Getting the latest version of NPM package: @shopify/cli
2024-11-20T16:51:40.530Z: Running command app deploy
2024-11-20T16:51:40.536Z: No cached notifications found. Fetching them...
2024-11-20T16:51:40.596Z: Request to https://cdn.shopify.com/static/cli/notifications.json completed in 60 ms
With response headers:
 - cache-control: public, max-age=86400
 - content-type: application/json
 - server-timing: imagery;dur=107.192, imageryFetch;dur=105.561, cfRequestDuration;dur=37.999868
 - x-request-id: 3bd2f85c-2adb-4a2e-bc57-60992c2dfd63-1732016109
    
2024-11-20T16:51:40.681Z: Notifications to show: 0
2024-11-20T16:51:40.694Z: Reading cached app information for directory /app...
2024-11-20T16:51:40.695Z: Reading the content of file at shopify.app.staging.toml...
2024-11-20T16:51:40.699Z: Reading the content of file at shopify.app.staging.toml...
2024-11-20T16:51:40.702Z: Reading cached app information for directory /app...
2024-11-20T16:51:40.702Z: Reading the content of file at shopify.app.staging.toml...
2024-11-20T16:51:40.703Z: Reading the content of file at shopify.app.staging.toml...
2024-11-20T16:51:40.705Z: Ensuring that the user is authenticated with the Partners API with the following scopes:
[]
2024-11-20T16:51:40.706Z: Sending POST request to URL https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=271e16d403dfa18082ffb3d197bd2b5f4479c3fc32736d69296829cbb28d41a6&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fpartners.app.cli.access&subject_token=****
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
2024-11-20T16:51:40.938Z: Request to https://accounts.shopify.com/oauth/token?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Atoken-exchange&requested_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&subject_token_type=urn%3Aietf%3Aparams%3Aoauth%3Atoken-type%3Aaccess_token&client_id=fbdb2649-e327-4907-8f67-908d24cfd7e3&audience=271e16d403dfa18082ffb3d197bd2b5f4479c3fc32736d69296829cbb28d41a6&scope=https%3A%2F%2Fapi.shopify.com%2Fauth%2Fpartners.app.cli.access&subject_token=**** completed in 232 ms
With response headers:
 - cache-control: no-cache, no-store, private, must-revalidate, max-age=0
 - content-type: application/json; charset=utf-8
 - etag: W/"e84d04b1b03bec370a4c061d5b5b27e5"
 - server-timing: processing;dur=42, socket_queue;dur=1.964, edge;dur=2.015, util;dur=0.05, cfRequestDuration;dur=191.999912
 - x-request-id: 07e84edf-6dcd-4e55-b258-c63641436a1b-1732121500
    
2024-11-20T16:51:40.946Z: Sending "Partners" GraphQL request:
  query currentAccountInfo {
    currentAccountInfo {
      __typename
      ... on ServiceAccount {
        orgName
      }
      ... on UserAccount {
        email
      }
    }
  }
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
to https://partners.shopify.com/api/cli/graphql
2024-11-20T16:51:41.262Z: Request to https://partners.shopify.com/api/cli/graphql completed in 316 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"5f653425fd0f400f1c352fcb2515814e"
 - server-timing: processing;dur=122, socket_queue;dur=2.777, util;dur=0.6, cfRequestDuration;dur=256.999969
 - x-request-id: cf2bdd11-9edb-4b44-a002-97435c736ba4-1732121501
    
2024-11-20T16:51:41.342Z: Sending "Partners" GraphQL request:
  query FindApp($apiKey: String!) {
    app(apiKey: $apiKey) {
      id
      title
      apiKey
      organizationId
      apiSecretKeys {
        secret
      }
      appType
      grantedScopes
      applicationUrl
      redirectUrlWhitelist
      requestedAccessScopes
      webhookApiVersion
      embedded
      posEmbedded
      preferencesUrl
      gdprWebhooks {
        customerDeletionUrl
        customerDataRequestUrl
        shopDeletionUrl
      }
      appProxy {
        subPath
        subPathPrefix
        url
      }
      developmentStorePreviewEnabled
      disabledFlags
    }
  }
With variables:
{
  "apiKey": "*****"
}
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
to https://partners.shopify.com/api/cli/graphql
2024-11-20T16:51:41.986Z: Request to https://partners.shopify.com/api/cli/graphql completed in 644 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"ee7f8bfa0bbe343666d69e80ff586239"
 - server-timing: processing;dur=496, socket_queue;dur=2.192, util;dur=0.4, cfRequestDuration;dur=627.000093
 - x-request-id: c289e5e1-e582-4d45-b512-fac1cd273ea9-1732121501
    
2024-11-20T16:51:41.990Z: Sending "Partners" GraphQL request:
  query FindOrganization($id: ID!) {
    organizations(id: $id, first: 1) {
      nodes {
        id
        businessName
      }
    }
  }
With variables:
{
  "id": "693759"
}
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
to https://partners.shopify.com/api/cli/graphql
2024-11-20T16:51:42.208Z: Request to https://partners.shopify.com/api/cli/graphql completed in 218 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"5cffef5636920992ce65dd335d906c72"
 - server-timing: processing;dur=83, socket_queue;dur=2.191, util;dur=0.5, cfRequestDuration;dur=203.999996
 - x-request-id: 25619705-ba5c-448f-9ec2-d2836db21bd4-1732121502
    
2024-11-20T16:51:42.215Z: Sending "Partners" GraphQL request:
  query fetchSpecifications($api_key: String!) {
    extensionSpecifications(apiKey: $api_key) {
      name
      externalName
      externalIdentifier
      identifier
      gated
      experience
      options {
        managementExperience
        registrationLimit
      }
      features {
        argo {
          surface
        }
      }
      validationSchema {
        jsonSchema
      }
    }
  }
With variables:
{
  "api_key": "[redacted]"
}
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
to https://partners.shopify.com/api/cli/graphql
2024-11-20T16:51:42.461Z: Request to https://partners.shopify.com/api/cli/graphql completed in 246 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"13fe689d1191dc8864cfd658646d5359"
 - server-timing: processing;dur=110, socket_queue;dur=1.576, util;dur=0.4, cfRequestDuration;dur=230.999947
 - x-request-id: e9ec3b81-d1bb-460f-be02-6b12bce3381b-1732121502
    
2024-11-20T16:51:42.473Z: The following extension specifications were defined locally but not found in the remote specifications: data, payments_extension, tax_calculation
2024-11-20T16:51:42.477Z: Reading the content of file at shopify.app.dev.toml...
2024-11-20T16:51:42.478Z: Reading the content of file at shopify.app.production.toml...
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
[redacted]
2024-11-20T16:51:42.514Z: Reading the content of file at package.json...
2024-11-20T16:51:42.515Z: Reading the content of file at package.json...
2024-11-20T16:51:42.524Z: 
Running system process:
  · Command: npm prefix
  · Working directory: /app
2024-11-20T16:51:42.637Z: Obtaining the dependency manager in directory /app...
2024-11-20T16:51:42.644Z: 
Running system process:
  · Command: npm list @shopify/cli
  · Working directory: /app
2024-11-20T16:51:43.777Z: 
Running system process:
  · Command: shopify version
  · Working directory: /app
╭─ info ───────────────────────────────────────────────────────────────────────╮
│                                                                              │
│  Two Shopify CLI installations found – using local dependency                │
│                                                                              │
│  A global installation (v3.70.0) and a local dependency (v3.70.0) were       │
│  detected.                                                                   │
│  We recommend removing the @shopify/cli and @shopify/app dependencies from   │
│  your package.json, unless you want to use different versions across         │
│  multiple apps.                                                              │
│                                                                              │
│  See Shopify CLI documentation. [1]                                          │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
[1] https://shopify.dev/docs/apps/build/cli-for-apps#switch-to-a-global-executab
le-or-local-dependency
2024-11-20T16:51:45.726Z: Reading the content of file at package.json...
2024-11-20T16:51:45.727Z: Notifications to show: 0
2024-11-20T16:51:45.729Z: Unable to decide project type as no web backend
2024-11-20T16:51:45.730Z: Reading cached app information for directory /app...
2024-11-20T16:51:45.730Z: Storing app information for directory /app:{
  "appId": "0cdce4d1b60e25b5c082fb890b284cd1",
  "title": "Atlas Pickup Points Staging",
  "directory": "/app",
  "orgId": "693759"
}
2024-11-20T16:51:45.738Z: Sending "Partners" GraphQL request:
  query activeAppVersion($apiKey: String!) {
    app(apiKey: $apiKey) {
      activeAppVersion {
        appModuleVersions {
          registrationId
          registrationUuid
          registrationTitle
          type
          config
          specification {
            identifier
            name
            experience
            options {
              managementExperience
            }
          }
        }
      }
    }
  }
With variables:
{
  "apiKey": "*****"
}
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
to https://partners.shopify.com/api/cli/graphql
2024-11-20T16:51:46.631Z: Request to https://partners.shopify.com/api/cli/graphql completed in 893 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"48425fa81aac7fb7a1fb59c9d63881f8"
 - server-timing: processing;dur=469, socket_queue;dur=2.809, util;dur=0.3, cfRequestDuration;dur=612.999916
 - x-request-id: a533477e-5ed4-498e-bb89-d24233fade30-1732121505
    
╭─ info ───────────────────────────────────────────────────────────────────────╮
│                                                                              │
│  Using shopify.app.staging.toml for default values:                          │
│                                                                              │
│    • Org:             Tale Commerce                                          │
│    • App:             Atlas Pickup Points Staging                            │
│    • Include config:  Yes                                                    │
│                                                                              │
│   You can pass  `--reset`  to your command to reset your app configuration.  │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
2024-11-20T16:51:46.647Z: Sending "Partners" GraphQL request:
  query allAppExtensionRegistrations($apiKey: String!) {
    app(apiKey: $apiKey) {
      extensionRegistrations {
        id
        uuid
        title
        type
        draftVersion {
          config
          context
        }
        activeVersion {
          config
          context
        }
      }
      configurationRegistrations {
        id
        uuid
        title
        type
        draftVersion {
          config
          context
        }
        activeVersion {
          config
          context
        }
      }
      dashboardManagedExtensionRegistrations {
        id
        uuid
        title
        type
        activeVersion {
          config
          context
        }
        draftVersion {
          config
          context
        }
      }
    }
  }
With variables:
{
  "apiKey": "*****"
}
With request headers:
 - User-Agent: Shopify CLI; v=3.70.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: linux
 - Content-Type: application/json
to https://partners.shopify.com/api/cli/graphql
2024-11-20T16:51:48.508Z: Request to https://partners.shopify.com/api/cli/graphql completed in 1861 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"d5a6e1505422ad22f1d0d2ace2c5c43e"
 - server-timing: processing;dur=1445, socket_queue;dur=1.9, util;dur=0.5, cfRequestDuration;dur=1621.000051
 - x-request-id: 5ac36de5-65b5-44a2-a6d2-0d8ad57b6fb7-1732121506
    
╭─ error ──────────────────────────────────────────────────────────────────────╮
│                                                                              │
│  Failed to prompt:                                                           │
│                                                                              │
│  Match pickup-point-selected (local name) with                               │
│  flow-trigger-pickup-point-selected (name on Shopify Partners, ID:           │
│  870283771905)?                                                              │
│                                                                              │
│  This usually happens when running a command non-interactively, for example  │
│   in a CI environment, or when piping to or from another process.            │
│                                                                              │
│  To resolve this, specify the option in the command, or run the command in   │
│  an interactive environment such as your local terminal.                     │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯
2024-11-20T16:51:48.530Z: 
Running system process:
  · Command: npm prefix
  · Working directory: /app
2024-11-20T16:51:48.626Z: Obtaining the dependency manager in directory /app...
2024-11-20T16:51:48.852Z: Request to https://monorail-edge.shopifysvc.com/v1/produce completed in 223 ms
With response headers:
 - x-request-id: b87a8327-979e-4cb2-8245-0f721ba495da
    
2024-11-20T16:51:48.852Z: Analytics event sent: {
  "command": "app deploy",
  "time_start": 1732121500530,
  "time_end": 1732121508521,
  "total_time": 7991,
  "success": false,
  "cli_version": "3.70.0",
  "ruby_version": "",
  "node_version": "20.18.0",
  "is_employee": false,
  "uname": "linux amd64",
  "env_ci": false,
  "env_plugin_installed_any_custom": false,
  "env_plugin_installed_shopify": "[\"@shopify/cli\"]",
  "env_shell": "bash",
  "env_device_id": "26101e5dc8d55c2954b12fd6716bdb90971e79b2",
  "env_cloud": "localhost",
  "env_package_manager": "pnpm",
  "env_is_global": false,
  "env_auth_method": "partners_token",
  "cmd_app_warning_api_key_deprecation_displayed": false,
  "cmd_deploy_flag_message_used": true,
  "cmd_deploy_flag_version_used": false,
  "cmd_deploy_flag_source_url_used": true,
  "cmd_app_all_configs_any": true,
  "cmd_app_all_configs_clients": "{\"shopify.app.dev.toml\":\"6c8eb4f24f4eb0cfbc63299435c7a02f\",\"shopify.app.production.toml\":\"d42b615271f9ee25c66e75ab7e7801c5\",\"shopify.app.staging.toml\":\"0cdce4d1b60e25b5c082fb890b284cd1\"}",
  "cmd_app_linked_config_used": true,
  "cmd_app_linked_config_name": "shopify.app.staging.toml",
  "cmd_app_linked_config_git_tracked": false,
  "cmd_app_linked_config_source": "flag",
  "cmd_app_linked_config_uses_cli_managed_urls": false,
  "app_extensions_any": true,
  "app_extensions_breakdown": "{\"ui_extension\":6,\"function\":1,\"flow_trigger\":1}",
  "app_extensions_count": 8,
  "app_extensions_custom_layout": true,
  "app_extensions_function_any": true,
  "app_extensions_function_count": 1,
  "app_extensions_theme_any": false,
  "app_extensions_theme_count": 0,
  "app_extensions_ui_any": true,
  "app_extensions_ui_count": 6,
  "app_name_hash": "133adaf1ab47e5b68c93c96ae82cbc065433db03",
  "app_path_hash": "0c35eebf403cf91fe77a64921d76aa1ca6411d20",
  "app_scopes": "[redacted]",
  "app_web_backend_any": false,
  "app_web_backend_count": 0,
  "app_web_custom_layout": false,
  "app_web_frontend_any": false,
  "app_web_frontend_count": 0,
  "env_package_manager_workspaces": false,
  "partner_id": 693759,
  "api_key": "****",
  "cmd_app_reset_used": false,
  "cmd_all_timing_network_ms": 4615,
  "cmd_all_timing_prompts_ms": 0,
  "cmd_all_launcher": "pnpm",
  "cmd_all_topic": "app",
  "cmd_all_plugin": "@shopify/app",
  "cmd_all_force": true,
  "cmd_all_verbose": true,
  "cmd_all_path_override": true,
  "cmd_all_path_override_hash": "0c35eebf403cf91fe77a64921d76aa1ca6411d20",
  "cmd_all_last_graphql_request_id": "5ac36de5-65b5-44a2-a6d2-0d8ad57b6fb7-1732121506",
  "cmd_all_timing_active_ms": 3375,
  "cmd_all_exit": "expected_error",
  "user_id": "cfedeabc-3315-860a-9671-eabce4bab1f8c7848998",
  "args": "--force --verbose --config shopify.app.staging.toml --message=v1100 - Deploy 2b01d91f --source-control-url=[redacted]",
  "error_message": "Failed to prompt:\n\nMatch pickup-point-selected (local name) with flow-trigger-pickup-point-selected (name on Shopify Partners, ID: 870283771905)?\n\nThis usually happens when running a command non-interactively, for example in a CI environment, or when piping to or from another process.",
  "app_name": "atlas-pickup-points",
  "env_plugin_installed_all": "[\"@shopify/cli\"]",
  "metadata": "{\"extraPublic\":{},\"extraSensitive\":{}}"
}
2024-11-20T16:51:48.860Z: Reporting handled error to Bugsnag: Failed to prompt:
Match pickup-point-selected (local name) with flow-trigger-pickup-point-selected (name on Shopify Partners, ID: 870283771905)?
This usually happens when running a command non-interactively, for example in a CI environment, or when piping to or from another process.
2024-11-20T16:51:49.459Z: 
Running system process:
  · Command: npm prefix
  · Working directory: /app
2024-11-20T16:51:49.559Z: Obtaining the dependency manager in directory /app...
 ELIFECYCLE  Command failed with exit code 1.

Reproduction steps

See above

Operating System

Heroku CI

Shopify CLI version (check your project's package.json if you're not sure)

3.70

Shell

No response

Node version (run node -v if you're not sure)

20.x

What language and version are you using in your application?

No response

@patryk-smc patryk-smc added the Type: Bug Something isn't working label Nov 20, 2024
@jamesmengo jamesmengo added the Area: @shopify/app @shopify/app package issues label Nov 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: @shopify/app @shopify/app package issues Type: Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants