diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 8f0ffb4..a3b3bcb 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -16,19 +16,18 @@ jobs: include: - platform: 'macos-latest' # for Arm based macs (M1 and above). args: '--target aarch64-apple-darwin' - docker_platform: 'linux/arm64,linux/amd64' - platform: 'macos-latest' # for Intel based macs. args: '--target x86_64-apple-darwin' - docker_platform: 'linux/arm64,linux/amd64' - platform: 'ubuntu-22.04' args: '' - docker_platform: 'linux/amd64' - - platform: 'ubuntu-22.04' #ARM64 + - platform: 'ubuntu-22.04-arm' args: '' docker_platform: 'linux/arm64' + - platform: 'ubuntu-22.04' + args: '' + docker_platform: 'linux/amd64' - platform: 'windows-latest' args: '' - docker_platform: 'windows/amd64' # adjust based on your image build support runs-on: ${{ matrix.platform }} @@ -41,7 +40,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: install dependencies (ubuntu only) - if: matrix.platform == 'ubuntu-22.04' # This must match the platform value defined above. + if: startsWith(matrix.platform, 'ubuntu-22.04') run: | sudo apt-get update sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf @@ -84,10 +83,16 @@ jobs: args: ${{ matrix.args }} - name: Package Linux binary - if: matrix.platform == 'ubuntu-22.04' + if: startsWith(matrix.platform, 'ubuntu-22.04') id: package-linux run: | - BIN_NAME=agent_runner_${RELEASE_VERSION}_amd64 + ARCH="$(uname -m)" + if [ "$ARCH" = "aarch64" ]; then + SUFFIX="arm64" + else + SUFFIX="amd64" + fi + BIN_NAME="agent_runner_${RELEASE_VERSION}_${SUFFIX}" TAR_NAME=${BIN_NAME}.tar.gz cp ./src-tauri/target/release/agent_runner $BIN_NAME @@ -96,7 +101,7 @@ jobs: echo "file=third_party/agent_runner/${TAR_NAME}" >> $GITHUB_OUTPUT - name: Upload Linux binary to GitHub release - if: matrix.platform == 'ubuntu-22.04' + if: startsWith(matrix.platform, 'ubuntu-22.04') uses: softprops/action-gh-release@v1 with: tag_name: ${{ env.RELEASE_VERSION }} @@ -111,6 +116,7 @@ jobs: RELEASE_VERSION: 0.1.21 IMAGE_NAME: ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO_NAME }} + # Needed strategy: fail-fast: false @@ -130,6 +136,7 @@ jobs: args: '--target aarch64-unknown-linux-gnu' docker_platform: 'linux/arm64' tag_suffix: 'linux-arm64' + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -145,13 +152,13 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - name: Build platform specific image using buildx - run: | - export PLATFORM_TAG=$(echo ${{ matrix.docker_platform }} | tr '/' '-') - docker buildx build \ - --platform=${{ matrix.docker_platform }} \ - --tag $IMAGE_NAME:${RELEASE_VERSION} \ - --tag $IMAGE_NAME:latest \ - --push \ - . - shell: bash + - name: Build & push multi-arch + uses: docker/build-push-action@v6 + with: + context: . + push: true + platforms: linux/amd64,linux/arm64 + tags: | + ${{ env.IMAGE_NAME }}:${{ env.RELEASE_VERSION }} + ${{ env.IMAGE_NAME }}:latest + diff --git a/poetry.lock b/poetry.lock index fb2b3be..5ff4417 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1162,28 +1162,32 @@ test = ["pytest"] [[package]] name = "connectorx" -version = "0.4.2" +version = "0.4.3" description = "" optional = false python-versions = ">=3.10" groups = ["main"] files = [ - {file = "connectorx-0.4.2-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:fcb1dc988efbb2491375b36024a0123e8316f494bac3d4704ed6bd9eaf2df03c"}, - {file = "connectorx-0.4.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ed234727049008c5bfa4a956714fff874cc210f03bfa1ac3e2dbe6a21128d497"}, - {file = "connectorx-0.4.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:90673abfc30bc540088fd08e4e9b9c50a6ab85044609a1556c9f8905f4aed895"}, - {file = "connectorx-0.4.2-cp310-none-win_amd64.whl", hash = "sha256:05933ef59456786d0428d4d3e201579cedc8e09338ef44cd7f82ddf4ffad4c08"}, - {file = "connectorx-0.4.2-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:22415c1dc6efb132409822f91ab90111535a507560b616f5bf1f88a64ae9c046"}, - {file = "connectorx-0.4.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5e7c8c0b8fd6b1a1e341c873256d995cd255fedfec6b84c79c0e89864866e75f"}, - {file = "connectorx-0.4.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:327dd33f11fa75e7c48195bea1702aafd0f59173d5798c8c9e2c487a7e0ebd98"}, - {file = "connectorx-0.4.2-cp311-none-win_amd64.whl", hash = "sha256:1896d86d2397c1205a0d6adb2d8fbabc5fa0cc953a973c587c410efd04b1d09a"}, - {file = "connectorx-0.4.2-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:0e23c5afcfba05cf841d5cca3f5bced4962be428eff50aefbdaa31778c7280c0"}, - {file = "connectorx-0.4.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0f2eb4d52552f2d660ad8803243015b35869b705db6b4d560874850b9699e6ed"}, - {file = "connectorx-0.4.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:61ff8b1d4d9fa80f246e6874f89221f64d6a8a8723cbbb4ac83ff1417416a0e4"}, - {file = "connectorx-0.4.2-cp312-none-win_amd64.whl", hash = "sha256:ff3fad383d95fd3b8b45a9156895172cbed9f622ee9e957294df4ec22e3fe34c"}, - {file = "connectorx-0.4.2-cp313-cp313-macosx_10_7_x86_64.whl", hash = "sha256:190bb9426bd46acb22d98ddaa7c362474338557f72e9c8fcf0a998d7aecb0ef5"}, - {file = "connectorx-0.4.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e6bdef6046a7e41de6fe1282024bb990a40281d1e104b803d82a928a443bb49a"}, - {file = "connectorx-0.4.2-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:b337b44740fb68caff4c3c3ae667c09939ab9e5a2920ca675d9726f2321b8b9b"}, - {file = "connectorx-0.4.2-cp313-none-win_amd64.whl", hash = "sha256:c33245810eac8abad05d6d089b89584013b8e03ac6f02dd50fb3655123eefa7b"}, + {file = "connectorx-0.4.3-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:0873df0741da01dfff101895b426a9cd0f84a98d87aba1c5873233ab134cda53"}, + {file = "connectorx-0.4.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:900c5af9d566399cb42fa808b0ea03817b654d106e25b6e530393ce55193e21a"}, + {file = "connectorx-0.4.3-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:fb767647e1de4835b975a5627d0eadaa8de774ba6f123d455c058bdbcd8f8c0a"}, + {file = "connectorx-0.4.3-cp310-cp310-manylinux_2_35_aarch64.whl", hash = "sha256:4af1a106d0e21d60ee783d11008e76d5c9af3665c85689544083a9655945bf16"}, + {file = "connectorx-0.4.3-cp310-none-win_amd64.whl", hash = "sha256:d31ddc124309f3bc642970684abc912dab51bd5bb521246df8e021c487a6d938"}, + {file = "connectorx-0.4.3-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:5ffb92d51116a67a57d75c7427505e102b5ab8e71d96df2bbf5a0f0073284241"}, + {file = "connectorx-0.4.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1fe7e4426982f91dcba74a0937696a339287f198e8c55d3186784b2ced2bff01"}, + {file = "connectorx-0.4.3-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:34fa1c734ec670087ac9c2f4e2f66f594ae783773bc87f55324b26cf8521e4a3"}, + {file = "connectorx-0.4.3-cp311-cp311-manylinux_2_35_aarch64.whl", hash = "sha256:40ea58bd899d8d2cb37776dae53226a98e698587d8f9e37dbcf3a6e37e2209f8"}, + {file = "connectorx-0.4.3-cp311-none-win_amd64.whl", hash = "sha256:241b84cf5a866f175f3ed204bf4c17bcbdfe50c05d745a48d193d7f164a32ae2"}, + {file = "connectorx-0.4.3-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:a461fa210f69419a04a21f596fe593ed104c5d22100c468042ee55b15219d3bd"}, + {file = "connectorx-0.4.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ba7afa7749a28d13ef4c0ca7cbd0e118d367db77f576c8a1fba42694dc9e3534"}, + {file = "connectorx-0.4.3-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:be944d72a8f64443efee5a0a992479d5d59608d36c348f24770b32a3b92537cf"}, + {file = "connectorx-0.4.3-cp312-cp312-manylinux_2_35_aarch64.whl", hash = "sha256:a347c22fe4b8d4f37f478ad3b8f2fa7dd2eccd9cc42c5493a2e4246221df3218"}, + {file = "connectorx-0.4.3-cp312-none-win_amd64.whl", hash = "sha256:58906d50564b059086dd2283e975b6a8874ce78edfb2672623f2d003ed987675"}, + {file = "connectorx-0.4.3-cp313-cp313-macosx_10_7_x86_64.whl", hash = "sha256:bcae0f740ec17d14692692fb66b9beb32e1d9112c7940d1cee48efc52eb8c441"}, + {file = "connectorx-0.4.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2713f737f8cc8768598d287a5807c34588fef63a572750b54c49400be6e8aa8e"}, + {file = "connectorx-0.4.3-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:2fcf42c9577e314d21caac0fa532ce485404ce3be082642e02543344ee0ca3b0"}, + {file = "connectorx-0.4.3-cp313-cp313-manylinux_2_35_aarch64.whl", hash = "sha256:152746a662fec8bfbe520f127d2ca77a780fdc70ad1c199aadd7544612b291cc"}, + {file = "connectorx-0.4.3-cp313-none-win_amd64.whl", hash = "sha256:b9408ee082985a66fedbf12328c655dc2a8d86e4c5127666ffcd81d0c79c4b76"}, ] [[package]] @@ -6677,4 +6681,4 @@ cffi = ["cffi (>=1.11)"] [metadata] lock-version = "2.1" python-versions = ">=3.10,<3.12" -content-hash = "bbd3a20ce62d2215da4da8b02e1404dad5770cc54189307d8acbf5ecd65fc560" +content-hash = "228b384888bb3b8c309aeed193c313a95ef10b8bf8dce85142391de8031b7807" diff --git a/pyproject.toml b/pyproject.toml index 4ede060..60d0916 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,6 +26,7 @@ autonomy-dev = {version = "==0.2.153", extras = ["all"]} paradigm-flood = "^0.3.1" lxml = {extras = ["html-clean"], version = "^5.3.1"} aioprometheus = "^23.12.0" +connectorx = "^0.4.3" [tool.poetry.group.dev.dependencies]