Skip to content

Add repo setup orchestration commands#176

Open
kyle-schellen wants to merge 1 commit into
ks-shared-storefront-envfrom
ks-dev-workspace-setup
Open

Add repo setup orchestration commands#176
kyle-schellen wants to merge 1 commit into
ks-shared-storefront-envfrom
ks-dev-workspace-setup

Conversation

@kyle-schellen
Copy link
Copy Markdown
Contributor

@kyle-schellen kyle-schellen commented May 20, 2026

Depends on #175.

Closes issue #908.

Stack position

This PR wires the shared storefront configuration from #175 into the developer workflow. It adds repo-owned setup orchestration around the existing DevHub provisioning model, without making platform-local setup pretend to replace full dev up provisioning.

What changes

  • Replaces the long list of individual repo-owned up steps in dev.yml with one scripts/setup_dev_workspace invocation.
  • Adds dev bootstrap to rerun Checkout Kit repo-owned setup without rerunning DevHub native provisioning.
  • Adds dev <platform> setup / dev <platform> up for Android, Swift, React Native, and Web platform-local setup.
  • Adds dev storefront-env sync and dev storefront-env check as the root command surface for sample storefront config.
  • Makes setup continue across independent platform steps, print a final pass/fail summary, and exit non-zero if any requested step fails.
  • Adds warnings for platform-local setup explaining that shared tools still come from full repo dev up provisioning.
  • Adds Web command coverage for build, test, lint, format, verify, sample build, sample preview, clean, and license-header checks.
  • Keeps root dev check focused on setup validation, license headers, lint, and existing test checks instead of adding build-heavy Web/protocol steps.
  • Updates contributor and platform docs to describe dev up, dev bootstrap, platform-local setup, and the root .env flow.
  • Cleans up Web sample build artifacts by ignoring sample/dist, excluding it from oxlint/format, and removing it in pnpm clean.

Review notes

dev up still owns full native provisioning through DevHub. Platform-local setup only runs Checkout Kit repo-owned steps for the requested platform, so it is useful after the base environment exists or when recovering from one platform's setup failure.

For automation, dev up / dev bootstrap use --skip-optional-prompts, so missing optional Apple Pay and Customer Account API values stay blank. Developers can run dev storefront-env sync --prompt-optional when they want to fill those interactively.

Root dev check intentionally does not run Web builds, Web package verification, Web sample builds, or protocol builds; those remain available through dev web check, dev web build, dev web verify, dev web sample build, and dev protocol check.

How to test

  • bash -n scripts/setup_dev_workspace scripts/setup_storefront_env scripts/test_setup_storefront_env
  • ruby -ryaml -e 'YAML.load_file("dev.yml")'
  • dev help android
  • dev storefront-env check
  • dev bootstrap --check all
  • dev android setup --check
  • dev swift setup --check
  • dev react-native setup --check
  • dev web setup --check
  • dev web check license-headers
  • dev web check

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 platforms/swift/ShopifyCheckoutKit.podspec
  • I have bumped the version in platforms/swift/Sources/ShopifyCheckoutKit/ShopifyCheckoutKit.swift
  • I have updated platforms/swift/CHANGELOG.md
  • I have updated the SwiftPM/CocoaPods version snippets in platforms/swift/README.md (major version only)
Releasing a new Android version?
  • I have bumped the versionName in platforms/android/lib/build.gradle
  • I have updated platforms/android/CHANGELOG.md
  • 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

kyle-schellen commented May 20, 2026

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 20, 2026

Web — Coverage Report

Lines Statements Branches Functions
Coverage: 98%
98.96% (571/577) 90.41% (151/167) 100% (55/55)

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 20, 2026

React Native — Coverage Report

Lines Statements Branches Functions
Coverage: 95%
95.52% (192/201) 92.3% (108/117) 100% (60/60)

@kyle-schellen kyle-schellen force-pushed the ks-shared-storefront-env branch from d2be551 to e86923e Compare May 20, 2026 23:46
@kyle-schellen kyle-schellen force-pushed the ks-dev-workspace-setup branch 2 times, most recently from aef7cdc to ddc5f30 Compare May 20, 2026 23:59
@kyle-schellen kyle-schellen force-pushed the ks-shared-storefront-env branch from e86923e to 06f9f45 Compare May 20, 2026 23:59
@kyle-schellen kyle-schellen force-pushed the ks-dev-workspace-setup branch from ddc5f30 to 3f74a95 Compare May 21, 2026 00:36
@kyle-schellen kyle-schellen force-pushed the ks-shared-storefront-env branch from 06f9f45 to 0e9dc0f Compare May 21, 2026 00:36
@kyle-schellen kyle-schellen marked this pull request as ready for review May 21, 2026 01:07
@kyle-schellen kyle-schellen requested a review from a team as a code owner May 21, 2026 01:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant