diff --git a/get-magento-version/action.yml b/get-magento-version/action.yml index 2ad1e52..e5fcf94 100644 --- a/get-magento-version/action.yml +++ b/get-magento-version/action.yml @@ -15,6 +15,9 @@ outputs: project: description: 'The Magento project package name (e.g. magento/project-community-edition)' value: ${{ steps.get-magento-version.outputs.project }} + supported_version_project: + description: 'The `project` value to pass to the supported-version action (e.g. `magento-open-source`, `mage-os`, `mage-os-minimal`). Empty when no Magento project is detected.' + value: ${{ steps.get-magento-version.outputs.supported_version_project }} runs: using: "composite" diff --git a/get-magento-version/get-magento-version.sh b/get-magento-version/get-magento-version.sh index 9f1f9da..f847a43 100644 --- a/get-magento-version/get-magento-version.sh +++ b/get-magento-version/get-magento-version.sh @@ -16,5 +16,13 @@ PRODUCT=$(echo "${RESULT:-}" | awk '{print $1}') VERSION=$(echo "${RESULT:-}" | awk '{print $2}' | sed 's/^v//') PROJECT=$(echo "$PRODUCT" | sed 's/product-/project-/') +case "$PROJECT" in + magento/*) SUPPORTED_VERSION_PROJECT="magento-open-source" ;; + mage-os/project-community-edition) SUPPORTED_VERSION_PROJECT="mage-os" ;; + mage-os/project-minimal-edition) SUPPORTED_VERSION_PROJECT="mage-os-minimal" ;; + *) SUPPORTED_VERSION_PROJECT="" ;; +esac + echo "version=\"$VERSION\"" echo "project=$PROJECT" +echo "supported_version_project=$SUPPORTED_VERSION_PROJECT" diff --git a/get-magento-version/test.sh b/get-magento-version/test.sh index 4de23b2..2f3d88b 100644 --- a/get-magento-version/test.sh +++ b/get-magento-version/test.sh @@ -24,35 +24,42 @@ field() { } OUT=$(bash "$SCRIPT" "$FIXTURES/store-lock") -assert_eq "store lock: version" '"2.4.7"' "$(field "$OUT" version)" -assert_eq "store lock: project" "magento/project-community-edition" "$(field "$OUT" project)" +assert_eq "store lock: version" '"2.4.7"' "$(field "$OUT" version)" +assert_eq "store lock: project" "magento/project-community-edition" "$(field "$OUT" project)" +assert_eq "store lock: supported_version_project" "magento-open-source" "$(field "$OUT" supported_version_project)" OUT=$(bash "$SCRIPT" "$FIXTURES/store-v-prefix") assert_eq "store v-prefix: version" '"2.4.6"' "$(field "$OUT" version)" OUT=$(bash "$SCRIPT" "$FIXTURES/enterprise") -assert_eq "enterprise: version" '"2.4.7-p1"' "$(field "$OUT" version)" -assert_eq "enterprise: project" "magento/project-enterprise-edition" "$(field "$OUT" project)" +assert_eq "enterprise: version" '"2.4.7-p1"' "$(field "$OUT" version)" +assert_eq "enterprise: project" "magento/project-enterprise-edition" "$(field "$OUT" project)" +assert_eq "enterprise: supported_version_project" "magento-open-source" "$(field "$OUT" supported_version_project)" OUT=$(bash "$SCRIPT" "$FIXTURES/mage-os") -assert_eq "mage-os: version" '"1.0.0"' "$(field "$OUT" version)" -assert_eq "mage-os: project" "mage-os/project-community-edition" "$(field "$OUT" project)" +assert_eq "mage-os: version" '"1.0.0"' "$(field "$OUT" version)" +assert_eq "mage-os: project" "mage-os/project-community-edition" "$(field "$OUT" project)" +assert_eq "mage-os: supported_version_project" "mage-os" "$(field "$OUT" supported_version_project)" OUT=$(bash "$SCRIPT" "$FIXTURES/mage-os-minimal") -assert_eq "mage-os-minimal: version" '"3.0.0"' "$(field "$OUT" version)" -assert_eq "mage-os-minimal: project" "mage-os/project-minimal-edition" "$(field "$OUT" project)" +assert_eq "mage-os-minimal: version" '"3.0.0"' "$(field "$OUT" version)" +assert_eq "mage-os-minimal: project" "mage-os/project-minimal-edition" "$(field "$OUT" project)" +assert_eq "mage-os-minimal: supported_version_project" "mage-os-minimal" "$(field "$OUT" supported_version_project)" OUT=$(bash "$SCRIPT" "$FIXTURES/store-json") -assert_eq "store json: version" '"2.4.6-p1"' "$(field "$OUT" version)" -assert_eq "store json: project" "magento/project-community-edition" "$(field "$OUT" project)" +assert_eq "store json: version" '"2.4.6-p1"' "$(field "$OUT" version)" +assert_eq "store json: project" "magento/project-community-edition" "$(field "$OUT" project)" +assert_eq "store json: supported_version_project" "magento-open-source" "$(field "$OUT" supported_version_project)" OUT=$(bash "$SCRIPT" "$FIXTURES/extension") -assert_eq "extension: version" '""' "$(field "$OUT" version)" -assert_eq "extension: project" "" "$(field "$OUT" project)" +assert_eq "extension: version" '""' "$(field "$OUT" version)" +assert_eq "extension: project" "" "$(field "$OUT" project)" +assert_eq "extension: supported_version_project" "" "$(field "$OUT" supported_version_project)" OUT=$(bash "$SCRIPT" "$FIXTURES/empty") -assert_eq "empty dir: version" '""' "$(field "$OUT" version)" -assert_eq "empty dir: project" "" "$(field "$OUT" project)" +assert_eq "empty dir: version" '""' "$(field "$OUT" version)" +assert_eq "empty dir: project" "" "$(field "$OUT" project)" +assert_eq "empty dir: supported_version_project" "" "$(field "$OUT" supported_version_project)" echo "" echo "$PASS passed, $FAIL failed"