From d66574df1e1fa25b346e92fa8532c21b5ec0f6f2 Mon Sep 17 00:00:00 2001 From: Nick Franck <46548427+CyMule@users.noreply.github.com> Date: Thu, 1 Oct 2026 23:27:50 -0400 Subject: [PATCH 1/2] perf(ci): Publish Docker manifests without pulling layers --- .github/workflows/docker-publish.yml | 32 ++++++++++++---------------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index d009281616..74acb5dc8c 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -83,25 +83,21 @@ jobs: registry: quay.io username: ${{ secrets.QUAY_IO_ROBOT_USERNAME }} password: ${{ secrets.QUAY_IO_ROBOT_TOKEN }} - - name: Pull AMD image + - name: Publish architecture cache tags run: | - docker pull $DOCKER_BUILD_REPOSITORY:amd64-$SHORT_SHA - - name: Pull ARM image - run: | - docker pull $DOCKER_BUILD_REPOSITORY:arm64-$SHORT_SHA - - name: Push latest build tags for AMD and ARM - run: | - # these are used to construct the final manifest but also cache-from in subsequent runs - docker tag $DOCKER_BUILD_REPOSITORY:amd64-$SHORT_SHA $DOCKER_BUILD_REPOSITORY:amd64 - docker push $DOCKER_BUILD_REPOSITORY:amd64 - docker tag $DOCKER_BUILD_REPOSITORY:arm64-$SHORT_SHA $DOCKER_BUILD_REPOSITORY:arm64 - docker push $DOCKER_BUILD_REPOSITORY:arm64 + # Retag the tested images directly in Quay; publication does not need + # either architecture's layers on the runner. + for ARCH in amd64 arm64; do + docker buildx imagetools create --prefer-index=false \ + --tag "$DOCKER_BUILD_REPOSITORY:$ARCH" \ + "$DOCKER_BUILD_REPOSITORY:$ARCH-$SHORT_SHA" + done - name: Push multiarch manifest run: | - docker manifest create ${DOCKER_REPOSITORY}:latest $DOCKER_BUILD_REPOSITORY:amd64 $DOCKER_BUILD_REPOSITORY:arm64 - docker manifest push $DOCKER_REPOSITORY:latest - docker manifest create ${DOCKER_REPOSITORY}:$SHORT_SHA $DOCKER_BUILD_REPOSITORY:amd64 $DOCKER_BUILD_REPOSITORY:arm64 - docker manifest push $DOCKER_REPOSITORY:$SHORT_SHA VERSION=$(grep -Po '(?<=__version__ = ")[^"]*' unstructured/__version__.py) - docker manifest create ${DOCKER_REPOSITORY}:$VERSION $DOCKER_BUILD_REPOSITORY:amd64 $DOCKER_BUILD_REPOSITORY:arm64 - docker manifest push $DOCKER_REPOSITORY:$VERSION + docker buildx imagetools create \ + --tag "$DOCKER_REPOSITORY:latest" \ + --tag "$DOCKER_REPOSITORY:$SHORT_SHA" \ + --tag "$DOCKER_REPOSITORY:$VERSION" \ + "$DOCKER_BUILD_REPOSITORY:amd64-$SHORT_SHA" \ + "$DOCKER_BUILD_REPOSITORY:arm64-$SHORT_SHA" From 04c519ce0be823e1b55b71ea387a6d1e30ac6eaa Mon Sep 17 00:00:00 2001 From: Nick Franck <46548427+CyMule@users.noreply.github.com> Date: Fri, 2 Oct 2026 09:22:05 -0400 Subject: [PATCH 2/2] chore(ci): Start the next development version after 0.27.12 Keep the released-version guard intact while validating CI maintenance. Use the existing next-patch dev0 convention without declaring a stable release. --- CHANGELOG.md | 6 ++++++ unstructured/__version__.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7662b7980b..376d205f11 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## 0.27.13-dev0 + +### Maintenance + +- **Start the next development cycle after 0.27.12.** CI maintenance uses development metadata rather than reusing an already released package version. This does not declare a stable package release. + ## 0.27.12 ### Fixes diff --git a/unstructured/__version__.py b/unstructured/__version__.py index f1527a87a7..50443fd88a 100644 --- a/unstructured/__version__.py +++ b/unstructured/__version__.py @@ -1 +1 @@ -__version__ = "0.27.12" # pragma: no cover +__version__ = "0.27.13-dev0" # pragma: no cover