Skip to content

Read E2E credentials from e2e/.env instead of the root .env - #581

Draft
kieran-osgood-shopify wants to merge 1 commit into
kieran-osgood/ejson-generate-env-filesfrom
kieran-osgood/ejson-run-maestro-e2e-env
Draft

Read E2E credentials from e2e/.env instead of the root .env#581
kieran-osgood-shopify wants to merge 1 commit into
kieran-osgood/ejson-generate-env-filesfrom
kieran-osgood/ejson-run-maestro-e2e-env

Conversation

@kieran-osgood-shopify

Copy link
Copy Markdown
Contributor

What changes are you making?

How to test


Before you merge

Important

  • I've added tests to support my implementation
  • I have read and agree with the Contribution Guidelines
  • I have read and agree with the Code of Conduct
  • I've updated the relevant platform README (platforms/swift/README.md and/or platforms/android/README.md)

Releasing a new Swift version?
  • I have bumped the version in ShopifyCheckoutKit.podspec
  • I have bumped the version in platforms/swift/Sources/ShopifyCheckoutKit/ShopifyCheckoutKit.swift
  • I have updated the SwiftPM/CocoaPods version snippets in platforms/swift/README.md (major version only)
Releasing a new Embedded Checkout Protocol version?
  • I have bumped embeddedCheckoutProtocolAndroid in platforms/android/gradle/libs.versions.toml
  • I have updated protocol/languages/kotlin/embedded-checkout-protocol/api/embedded-checkout-protocol.api if the public API changed
Releasing a new Android version?
  • I have bumped checkoutKitAndroid in platforms/android/gradle/libs.versions.toml
  • I have updated the Gradle/Maven version snippets in platforms/android/README.md

Tip

See the Contributing documentation for the full release process per platform.

Copy link
Copy Markdown
Contributor Author

The root .env belongs to the sample apps and their demo store, so reading it
here ran the E2E suite against whichever store a developer was using by hand.
run_maestro now reads e2e/.env, which generate_env_files writes from
config/secrets/e2e.ejson, plus an optional e2e/.env.local that overrides it.

ejson2env shell-quotes every value it writes, so the reader strips the outer
quotes. Without that, every account flow fails on an email wrapped in literal
apostrophes.

Later file wins, and within a file the later line wins, which matches
setup_storefront_env and makes a commented-out block predictable to edit.

e2e/scripts/test_run_maestro puts a fake maestro on PATH and asserts the argv,
so the environment contract has tests without needing a device.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Assisted-By: devx/252dfd24-6c25-4bb4-8463-27702ec564eb
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/ejson-run-maestro-e2e-env branch from a8cf7ad to b2235cf Compare August 5, 2026 12:33
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/ejson-generate-env-files branch from acf432e to 6195b88 Compare August 5, 2026 12:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50662 Rebase Checkout Kit on UCP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant