ci: link the published Composer package to this repository
This commit is contained in:
@@ -21,8 +21,10 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
VERSION=$(grep -m1 '"version"' composer.json | sed -E 's/.*"version"[[:space:]]*:[[:space:]]*"([^"]+)".*/\1/')
|
VERSION=$(grep -m1 '"version"' composer.json | sed -E 's/.*"version"[[:space:]]*:[[:space:]]*"([^"]+)".*/\1/')
|
||||||
|
PACKAGE_NAME=$(grep -m1 '"name"' composer.json | sed -E 's/.*"name"[[:space:]]*:[[:space:]]*"([^"]+)".*/\1/')
|
||||||
TAG="v${VERSION}"
|
TAG="v${VERSION}"
|
||||||
echo "version=${VERSION}" >> "$GITHUB_OUTPUT"
|
echo "version=${VERSION}" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "package_name=${PACKAGE_NAME}" >> "$GITHUB_OUTPUT"
|
||||||
echo "tag=${TAG}" >> "$GITHUB_OUTPUT"
|
echo "tag=${TAG}" >> "$GITHUB_OUTPUT"
|
||||||
if git ls-remote --tags origin "refs/tags/${TAG}" | grep -q "${TAG}"; then
|
if git ls-remote --tags origin "refs/tags/${TAG}" | grep -q "${TAG}"; then
|
||||||
echo "skip=true" >> "$GITHUB_OUTPUT"
|
echo "skip=true" >> "$GITHUB_OUTPUT"
|
||||||
@@ -98,3 +100,13 @@ jobs:
|
|||||||
echo "Unexpected HTTP status $STATUS publishing to the Composer registry"
|
echo "Unexpected HTTP status $STATUS publishing to the Composer registry"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
- name: Link Composer package to this repository
|
||||||
|
if: steps.version.outputs.skip == 'false'
|
||||||
|
run: |
|
||||||
|
ENCODED_NAME=$(printf '%s' "${{ steps.version.outputs.package_name }}" | sed 's#/#%2F#g')
|
||||||
|
STATUS=$(curl -s -o /dev/null -w "%{http_code}" -u "haylan:${{ secrets.RELEASE_TOKEN }}" -X POST "https://git.arthurerlich.de/api/v1/packages/haylan/composer/${ENCODED_NAME}/-/link/AeonDumpManager")
|
||||||
|
echo "link status: $STATUS"
|
||||||
|
if [ "$STATUS" != "201" ]; then
|
||||||
|
echo "::warning::Failed to link the Composer package to this repository (HTTP $STATUS) - not fatal, release already published"
|
||||||
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user