From 2e7d491dbc03d7cf02b87cdc490c16366de2d96c Mon Sep 17 00:00:00 2001 From: Krish Date: Wed, 12 Aug 2026 19:43:02 +0000 Subject: [PATCH 1/3] CI/CD improvements --- .github/workflows/block-needs-review.yml | 12 +++++++ .github/workflows/check-abi.yml | 41 ++++++++++++++++++++++++ .github/workflows/release.yml | 40 +++++++++++++++++++++++ CMakeLists.txt | 1 + VERSION | 1 + 5 files changed, 95 insertions(+) create mode 100644 .github/workflows/block-needs-review.yml create mode 100644 .github/workflows/check-abi.yml create mode 100644 .github/workflows/release.yml create mode 100644 VERSION diff --git a/.github/workflows/block-needs-review.yml b/.github/workflows/block-needs-review.yml new file mode 100644 index 00000000..01412050 --- /dev/null +++ b/.github/workflows/block-needs-review.yml @@ -0,0 +1,12 @@ +name: Block needs-review merges + +on: + pull_request: + types: [opened, synchronize, reopened, labeled, unlabeled] + +permissions: + pull-requests: read + +jobs: + gate: + uses: awslabs/aws-crt-builder/.github/workflows/block-needs-review-label.yml@main diff --git a/.github/workflows/check-abi.yml b/.github/workflows/check-abi.yml new file mode 100644 index 00000000..e100b4bf --- /dev/null +++ b/.github/workflows/check-abi.yml @@ -0,0 +1,41 @@ +name: Check ABI compliance + +on: + pull_request: + types: [opened, synchronize, reopened] + +concurrency: + group: check-abi-${{ github.event.pull_request.number }} + cancel-in-progress: true + +env: + PACKAGE_NAME: aws-c-mqtt + CRT_CI_ROLE: ${{ secrets.CRT_CI_ROLE_ARN }} + AWS_DEFAULT_REGION: us-east-1 + +permissions: + id-token: write + contents: read + pull-requests: write + +jobs: + check-abi: + name: check-abi + runs-on: ubuntu-24.04 + steps: + - uses: aws-actions/configure-aws-credentials@v4 + with: + role-to-assume: ${{ env.CRT_CI_ROLE }} + aws-region: ${{ env.AWS_DEFAULT_REGION }} + + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Check ABI + uses: awslabs/aws-crt-builder/.github/actions/check-abi@main + with: + lib-name: ${{ env.PACKAGE_NAME }} + builder-version: latest + builder-source: releases diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..669b58c7 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,40 @@ +name: Release + +on: + workflow_dispatch: + inputs: + dry-run: + description: 'Compute and summarize the bump/version but do not commit, tag, or publish anything.' + required: false + default: 'false' + +env: + PACKAGE_NAME: aws-c-mqtt + CRT_CI_ROLE: ${{ secrets.CRT_CI_ROLE_ARN }} + AWS_DEFAULT_REGION: us-east-1 + +permissions: + id-token: write + contents: write + pull-requests: read + +jobs: + release: + name: release + runs-on: ubuntu-24.04 + steps: + - uses: aws-actions/configure-aws-credentials@v4 + with: + role-to-assume: ${{ env.CRT_CI_ROLE }} + aws-region: ${{ env.AWS_DEFAULT_REGION }} + + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Release + uses: awslabs/aws-crt-builder/.github/actions/auto-release@main + with: + lib-name: ${{ env.PACKAGE_NAME }} + dry-run: ${{ inputs.dry-run }} diff --git a/CMakeLists.txt b/CMakeLists.txt index 56a98381..980c2c73 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -68,6 +68,7 @@ aws_check_headers(${PROJECT_NAME} ${AWS_MQTT_HEADERS} ${AWS_MQTT5_HEADERS}) aws_add_sanitizers(${PROJECT_NAME}) # We are not ABI stable yet +# TODO: switch to VERSION derived from the VERSION file (via aws_get_version) once SOVERSION is set explicitly, to avoid changing the SONAME. set_target_properties(${PROJECT_NAME} PROPERTIES VERSION 1.0.0) target_include_directories(${PROJECT_NAME} PUBLIC diff --git a/VERSION b/VERSION new file mode 100644 index 00000000..04a373ef --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.16.0 From 3dbc70cffdf459b0155f206a75b44c75e6845b98 Mon Sep 17 00:00:00 2001 From: Krish Date: Fri, 14 Aug 2026 17:14:02 +0000 Subject: [PATCH 2/3] Bump VERSION to 0.16.1 --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 04a373ef..2a0970ca 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.16.0 +0.16.1 From dd6dd10f6bcd2156e06600cdd5fd858aa4ad3dfa Mon Sep 17 00:00:00 2001 From: Krish Date: Fri, 14 Aug 2026 21:53:24 +0000 Subject: [PATCH 3/3] Serialize release runs --- .github/workflows/release.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 669b58c7..250f77e7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -8,6 +8,10 @@ on: required: false default: 'false' +concurrency: + group: ${{ github.workflow }} + cancel-in-progress: false + env: PACKAGE_NAME: aws-c-mqtt CRT_CI_ROLE: ${{ secrets.CRT_CI_ROLE_ARN }}