Skip to content

Support the project deployment lifecycle through the Shopware PaaS CLI #1558

Description

@shyim

Parent: #1553 (under #1009).

User story

As a developer deploying to Shopware PaaS, I want to create builds and activate them through the same project deployment commands, so that switching hosting models does not require a separate lifecycle workflow.

Dependencies and current status

Use the executor lifecycle contract from #1554 and shared history/rollback policy from #1557. The concrete PaaS backend is not implemented yet.

Acceptance criteria

  • Add/select a PaaS project environment without changing existing local, Docker or SSH behavior; document the required target configuration.
  • deployment create proxies sw-paas application build create and returns the resulting application-build ID as an opaque deployment reference.
  • deployment rollout <reference> proxies sw-paas application deployment create --application-build-id <reference> and returns an application-deployment ID as the rollout reference.
  • Use machine-readable PaaS CLI output to obtain references/history; do not parse human-formatted tables.
  • Expose successful rollouts newest first with their application-build IDs and active state via the optional history capability.
  • Reuse the command-layer rollback selection to create a new application deployment for an earlier application-build ID; do not rebuild the application.
  • Discover the external sw-paas executable and give actionable errors when it is missing or unauthenticated. Reuse its authentication mechanism without copying credentials into project configuration.
  • Forward cancellation and failures correctly, preserving useful diagnostics and keeping reference output distinguishable from CLI logs.
  • Tests with a fake PaaS CLI cover argument mapping, references, malformed output, history, rollback and error/cancellation behavior without requiring a live PaaS account.
  • Document whether the returned rollout reference indicates acceptance or completed activation; do not equate command acceptance with a healthy rollout.

Out of scope

A PaaS SDK embedded in shopware-cli, archive upload through the SSH backend, database rollback, and application-specific health/worker orchestration.

Readiness checklist

  • Acceptance criteria are defined.
  • Backward compatibility: deployment commands remain experimental behind the deployment build tag.
  • User-facing help/documentation reviewed.
  • Tests added or adjusted and reviewed.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    Fields

    No fields configured for Story.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions