This repo is intended to work as a git submodule within other repos, such as our adobe-commerce sandbox or our Adobe Commerce Storefront repos as a convienent way for developers to run commerce apps in all the various local development scenerios. This repo contains a manifest file with all the commerce apps, as well as a bin/ directory full of shell scripts that can help ease jumping into projects.
| App | Production | Staging | PaaS |
|---|---|---|---|
| Shipstation | |||
| Bazaarvoice | |||
| Yotpo | |||
| Store Locator |
| Environment | Status | Frontend | Admin | Project |
|---|---|---|---|---|
| Master | Frontend | Admin | Console | |
| Production (App Builder) | Frontend | Admin | Console | |
| Staging (Evergreen) | Frontend | Admin | Console | |
| Enablement (Training) | Frontend | Admin | Console |
Manage SaaS Instances from Adobe Commerce Instances Panel
| Environment | Admin | Production | Staging | Content | Code |
|---|---|---|---|---|---|
| Evergreen | Admin | aem.live | aem.page | da.live | github |
| Environment | Status | Production | Staging | Code | Content | Notes |
|---|---|---|---|---|---|---|
| blueacornici.shop | aem.live | aem.page | github | da.live | user: blueacorn pass: pass4blueacorn |
| Service | Status |
|---|---|
| apps.blueacorn.shop | |
| Guides |
The bin/ directory contains several utility scripts to streamline AIO commerce app development. These tools are intended to be run from the devcontainer or codespace environment and are available in the PATH, so they can be invoked directly by their command name without the ./bin/ prefix:
Clones all commerce apps listed in the manifest file. Reads the manifest file and clones each repository into its designated directory.
Usage:
aio-cloneDeploys an AIO app by running the complete deployment pipeline. This script:
- Runs
aio-pegto set up authentication and workspace context - Installs npm dependencies
- Executes
aio app deployto deploy the application
Usage:
aio-deployPackages an AIO app and uploads it as a release asset to GitHub. This script:
- Creates an app package using
aio app pack - Determines the repository and latest git tag
- Renames the package to include the directory name and tag
- Uploads the package to the corresponding GitHub release
Requirements: Requires GITHUB_TOKEN environment variable to be set.
Usage:
aio-packSets up Adobe I/O CLI authentication and workspace context. This script automates the Adobe I/O CLI setup process by:
- Loading environment variables from
.envfile if present - Logging into Adobe I/O CLI
- Selecting organization, project, and workspace using environment variables:
$AIO_ORGID- Adobe I/O Organization ID (set in workspace root .env file)$AIO_PROJECT- Project name (set in app .env file)$AIO_WORKSPACE- Workspace name (set in workspace root .env file as a personal workspace name to not clobber changes i.efirstlastname)
- Running
aio app useto set the current app context
This tool can be used in conjunction with .env variables to auto-select the org, project and workspace.
Usage:
aio-peg
aio-peg --help # Show detailed usage informationWe automate app deployments to production and staging workspaces, so these should not be used for local development. Each developer should create their own unique personal app workspace to not clobber their work. When selecting Apps in the Adobe Commerce Admin UI SDK, you can provide this personal workspace name.
Developers will manually have to go into the App Builder Developer Console and create this workspace within the project. Use aio app use to use an existing workspace, then when you aio app use to the new workspace you should be able to sync the configurations.
A comprehensive release tool that automates the versioning and release process for AIO apps. This script:
- Updates version numbers in
package.json,extension-manifest.json, andblocks/package.json(if present) - Creates a git commit with the version changes
- Creates a git tag for the release
- Optionally pushes changes and tags to the remote repository
Features:
- Validates semantic versioning format (x.y.z)
- Supports dry-run mode to preview changes
- Option to skip pushing to remote
- Colorized output with emojis for better readability
- Automatically finds project directories with required files
Usage:
aio-release 1.0.2 # Release version 1.0.2
aio-release 1.0.2 --dry-run # Preview what would be done
aio-release 1.0.2 --no-push # Don't push to remote
aio-release --help # Show detailed usage informationHandles npm authentication for GitHub packages. Sets up npm login for scoped packages hosted on GitHub Package Registry.
Usage:
github-npm-authThe manifest file is a simple text file that defines which commerce app repositories should be cloned and their target directory names. Each line contains a Git repository URL followed by the desired local directory name. This allows the aio-clone tool to automatically set up all required commerce apps in the correct structure.
We are currently considering migrating from this manifest-based approach to npm-based package management for better dependency resolution and version control.