From 4d98b6ff5de517cfb6c2064bfe95d11544ae4c76 Mon Sep 17 00:00:00 2001 From: pasha Date: Mon, 27 Jan 2025 00:16:33 +0300 Subject: [PATCH 01/12] Legacy build logic removed --- .github/workflows/build-and-push.yml | 69 ++++++++++++++++++++++++++++ .github/workflows/cd.yml | 34 -------------- .github/workflows/ci.yml | 46 ------------------- .github/workflows/lint.yml | 14 ------ .github/workflows/pr.yml | 47 ------------------- .github/workflows/tag.yml | 38 --------------- 6 files changed, 69 insertions(+), 179 deletions(-) create mode 100644 .github/workflows/build-and-push.yml delete mode 100644 .github/workflows/cd.yml delete mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/lint.yml delete mode 100644 .github/workflows/pr.yml delete mode 100644 .github/workflows/tag.yml diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml new file mode 100644 index 0000000..a724299 --- /dev/null +++ b/.github/workflows/build-and-push.yml @@ -0,0 +1,69 @@ +name: Check for new RouterOS versions, build and push containers + +on: + workflow_dispatch: + schedule: + - cron: '0 0 * * *' # Every day at midnight + +jobs: + check-and-build: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Install dependencies + run: sudo apt-get install -y curl jq + + - name: Get latest RouterOS version + id: get_routeros_version + run: | + VERSION=$( + curl https://mikrotik.com/download/archive -o - 2>/dev/null | \ + grep -o '> $GITHUB_OUTPUT + + - name: Get Docker Hub tags + id: docker_hub_tags + run: | + OWNER="evilfreelancer" + REPO="docker-routeros" + URL="https://registry.hub.docker.com/v2/repositories/${OWNER}/${REPO}/tags/" + TAGS=$(curl -s "$URL" | jq -r '.results[].name' | grep -v "latest") + echo "tags=$(echo $TAGS | tr '\n' ' ')" >> $GITHUB_OUTPUT + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and test if new version + if: ${{ !contains(steps.docker_hub_tags.outputs.tags, steps.get_routeros_version.outputs.version) }} + run: | + VERSION="${{ steps.get_routeros_version.outputs.version }}" + OWNER="evilfreelancer" + REPO="docker-routeros" + + # Set up Docker Buildx + docker buildx create --use --name routeros_builder + + # Build and push images + docker buildx build --push \ + --platform linux/amd64 \ + --tag $OWNER/$REPO:$VERSION \ + --tag $OWNER/$REPO:latest \ + --build-arg ROUTEROS_VERSION=$VERSION . + + - name: Skip build + if: ${{ contains(steps.docker_hub_tags.outputs.tags, steps.get_routeros_version.outputs.version) }} + run: echo "Version ${{ steps.get_routeros_version.outputs.version }} already exists. Skipping build." \ No newline at end of file diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml deleted file mode 100644 index b2ef7d0..0000000 --- a/.github/workflows/cd.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: "Build docker image and push to DockerHub when a tag is pushed" - -on: - workflow_dispatch: - push: - tags: - - '*' - -jobs: - build: - name: "Build images" - runs-on: "ubuntu-latest" - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - name: Docker metadata from Git - id: meta - uses: docker/metadata-action@v5 - with: - images: evilfreelancer/docker-routeros - - name: Login to DockerHub - if: ${{ !env.ACT }} - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Build with Docker - uses: docker/build-push-action@v6 - with: - context: . - push: ${{ !env.ACT }} - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} - \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index 8ad2c72..0000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,46 +0,0 @@ -name: "Continuous Integration Tests" - -on: - push: - pull_request: - workflow_dispatch: - workflow_call: - -jobs: - test: - name: "Build & Test images" - runs-on: "ubuntu-latest" - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Download docker-compose when using act - run: | - sudo curl -L "https://github.com/docker/compose/releases/download/v2.29.6/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose - sudo chmod +x /usr/local/bin/docker-compose - - - name: Test with Docker - run: | - # start the container - docker-compose -f docker-compose.dist.yml up --build -d routeros-local - # wait for the container to start - sleep 5 - DOCKERID=$(docker ps --format '{{.ID}}.{{.Names}}.{{.Image}}'|grep evilfreelancer/docker-routeros|cut -f 1 -d '.') - echo "Watching $DOCKERID for Mikrotik login..." - while true - do - if docker logs "$DOCKERID" 2>&1|grep 'MikroTik' - then - break - fi - echo "Not found yet, sleeping..." - sleep 5 - done - # display logs - echo "Container logs:" - docker logs "$DOCKERID" - # download resource and check platform is Mikrotik - curl --retry 12 --retry-all-errors -k -u admin: http://127.0.0.1:7777/rest/system/resource | jq .platform |grep -i mikrotik - - - name: Stop container - run: docker-compose -f docker-compose.dist.yml down diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index dbb13a9..0000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: Lint github-action - -on: [ 'pull_request' ] - -jobs: - lint: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Lint - uses: docker://rhysd/actionlint:1.6.26 - with: - args: -color diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml deleted file mode 100644 index 07256ab..0000000 --- a/.github/workflows/pr.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: "Check for update on Mikrotik website and generate a PR if necessary" - -on: - workflow_dispatch: - schedule: - - cron: "0 4 * * *" - -jobs: - routeros: - name: "Build & Test images" - runs-on: "ubuntu-latest" - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: '1' - - - name: Check new release - id: check_release - run: | - LAST_MIKROTIK_RELEASE=$( curl https://mikrotik.com/download/archive -o - 2>/dev/null | grep -o ' "$GITHUB_OUTPUT" - echo "new=true" >> "$GITHUB_OUTPUT" - else - echo "No new version found" - echo "new=false" >> "$GITHUB_OUTPUT" - fi - - - name: Edit Dockerfile - if: ${{ steps.check_release.outputs.new == 'true' }} - run: | - sed -r "s/(ROUTEROS_VERSION=\")(.*)(\")/\1${{ steps.check_release.outputs.release }}\3/g" -i Dockerfile - git diff - - - name: Create Pull Request - if: ${{ steps.check_release.outputs.new == 'true' && !env.ACT }} - uses: peter-evans/create-pull-request@v7 - with: - commit-message: "Update RouterOS version to ${{ steps.check_release.outputs.release }}" - committer: "GitHub Actions" - body: 'Created by Github action' - title: 'Update RouterOS version to ${{ steps.check_release.outputs.release }}' - branch: update-routeros diff --git a/.github/workflows/tag.yml b/.github/workflows/tag.yml deleted file mode 100644 index 6cfad76..0000000 --- a/.github/workflows/tag.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: "Tag master with new version of RouterOS when CI pass" - -on: - push: - branches: - - "master" - -permissions: - contents: write - pull-requests: read - -jobs: - call_test: - uses: EvilFreelancer/docker-routeros/.github/workflows/ci.yml@master - - tag: - name: "Add a tag to git" - runs-on: "ubuntu-latest" - needs: call_test - if: always() && needs.call_test.result == 'success' - steps: - - name: Checkout repository - uses: actions/checkout@v4 - with: - fetch-depth: '0' - - - name: Add new tag on git - id: tag - run: | - NEW_TAG=$(grep 'ROUTEROS_VERSION="' Dockerfile |cut -d '"' -f 2) - git config user.name 'GitHub Actions' - git config user.email 'github-actions@users.noreply.github.com' - git tag "$NEW_TAG" - echo "new_tag=$NEW_TAG" >> "$GITHUB_OUTPUT" - - - name: Push new tag to git - if: ${{ !env.ACT }} - run: git push origin ${{ steps.tag.outputs.new_tag }} From 89b36db462ad065294236acbd621cf6c0df67a40 Mon Sep 17 00:00:00 2001 From: pasha Date: Mon, 27 Jan 2025 00:19:10 +0300 Subject: [PATCH 02/12] Version added --- .github/workflows/build-and-push.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml index a724299..c7c5b6e 100644 --- a/.github/workflows/build-and-push.yml +++ b/.github/workflows/build-and-push.yml @@ -59,7 +59,7 @@ jobs: # Build and push images docker buildx build --push \ - --platform linux/amd64 \ + --platform linux/amd64,linux/arm64,linux/arm/v7 \ --tag $OWNER/$REPO:$VERSION \ --tag $OWNER/$REPO:latest \ --build-arg ROUTEROS_VERSION=$VERSION . From 63c948b6e100091c0c1de3f913b3a623ed2e87d2 Mon Sep 17 00:00:00 2001 From: pasha Date: Mon, 27 Jan 2025 00:23:47 +0300 Subject: [PATCH 03/12] Small tunes of version in Dockerfile --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index ce1330e..0c69820 100644 --- a/Dockerfile +++ b/Dockerfile @@ -17,7 +17,8 @@ RUN set -xe \ bridge-utils iptables jq bash python3 # Environments which may be change -ENV ROUTEROS_VERSION="7.17" +ARG ROUTEROS_VERSION +ENV ROUTEROS_VERSION=${ROUTEROS_VERSION} ENV ROUTEROS_IMAGE="chr-${ROUTEROS_VERSION}.vdi" ENV ROUTEROS_PATH="https://cdn.mikrotik.com/routeros/${ROUTEROS_VERSION}/${ROUTEROS_IMAGE}.zip" From 6face9e8b5ce275d96b35840d5d2fa3686717df0 Mon Sep 17 00:00:00 2001 From: Jason Jafari Date: Mon, 3 Feb 2025 18:49:25 -0500 Subject: [PATCH 04/12] Test 1 --- .github/FUNDING.yml | 3 --- .github/workflows/build-and-push.yml | 4 ++-- .gitignore | 1 + Dockerfile | 10 ++++++---- docker-compose.dist.yml | 6 +++--- scripts/entrypoint.sh | 6 ++++++ 6 files changed, 18 insertions(+), 12 deletions(-) delete mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index 811883a..0000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1,3 +0,0 @@ -# These are supported funding model platforms - -custom: [https://pay.cloudtips.ru/p/937f48ac, https://boosty.to/evilfreelancer] diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml index c7c5b6e..1275c3b 100644 --- a/.github/workflows/build-and-push.yml +++ b/.github/workflows/build-and-push.yml @@ -35,7 +35,7 @@ jobs: - name: Get Docker Hub tags id: docker_hub_tags run: | - OWNER="evilfreelancer" + OWNER="jafarijason" REPO="docker-routeros" URL="https://registry.hub.docker.com/v2/repositories/${OWNER}/${REPO}/tags/" TAGS=$(curl -s "$URL" | jq -r '.results[].name' | grep -v "latest") @@ -51,7 +51,7 @@ jobs: if: ${{ !contains(steps.docker_hub_tags.outputs.tags, steps.get_routeros_version.outputs.version) }} run: | VERSION="${{ steps.get_routeros_version.outputs.version }}" - OWNER="evilfreelancer" + OWNER="jafarijason" REPO="docker-routeros" # Set up Docker Buildx diff --git a/.gitignore b/.gitignore index 42efebe..178ed4b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /.idea/ /*.vdi /docker-compose.yml +build.txt \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 0c69820..477e6d6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,6 +9,8 @@ EXPOSE 1194 1701 1723 1812/udp 1813/udp 21 22 23 443 4500/udp 50 500/udp 51 2021 # Change work dir (it will also create this folder if is not exist) WORKDIR /routeros +RUN mkdir -p /routeros_source + # Install dependencies RUN set -xe \ && apk add --no-cache --update \ @@ -23,11 +25,11 @@ ENV ROUTEROS_IMAGE="chr-${ROUTEROS_VERSION}.vdi" ENV ROUTEROS_PATH="https://cdn.mikrotik.com/routeros/${ROUTEROS_VERSION}/${ROUTEROS_IMAGE}.zip" # Download VDI image from remote site -RUN wget "$ROUTEROS_PATH" -O "/routeros/${ROUTEROS_IMAGE}.zip" && \ - unzip "/routeros/${ROUTEROS_IMAGE}.zip" -d "/routeros" && \ - rm -f "/routeros/${ROUTEROS_IMAGE}.zip" +RUN wget "$ROUTEROS_PATH" -O "/routeros_source/${ROUTEROS_IMAGE}.zip" && \ + unzip "/routeros_source/${ROUTEROS_IMAGE}.zip" -d "/routeros_source" && \ + rm -f "/routeros_source/${ROUTEROS_IMAGE}.zip" # Copy script to routeros folder -ADD ["./scripts", "/routeros"] +ADD ["./scripts", "/routeros_source"] ENTRYPOINT ["/routeros/entrypoint.sh"] diff --git a/docker-compose.dist.yml b/docker-compose.dist.yml index 83031c6..f2356b1 100644 --- a/docker-compose.dist.yml +++ b/docker-compose.dist.yml @@ -2,7 +2,7 @@ version: "3" services: routeros-6-48: - image: evilfreelancer/docker-routeros:6.48.4 + image: jafarijason/docker-routeros:6.48.4 restart: unless-stopped cap_add: - NET_ADMIN @@ -16,7 +16,7 @@ services: - "18729:8729" routeros-latest: - image: evilfreelancer/docker-routeros:latest + image: jafarijason/docker-routeros:latest restart: unless-stopped cap_add: - NET_ADMIN @@ -33,7 +33,7 @@ services: - "28729:8729" routeros-local: - image: evilfreelancer/docker-routeros:latest + image: jafarijason/docker-routeros:latest build: context: . dockerfile: Dockerfile diff --git a/scripts/entrypoint.sh b/scripts/entrypoint.sh index 7240d84..ac3a2c5 100755 --- a/scripts/entrypoint.sh +++ b/scripts/entrypoint.sh @@ -1,5 +1,11 @@ #!/usr/bin/env bash +if [[ ! -e "/routeros/generate-dhcpd-conf.py" ]]; then + + cp -r /routeros_source/. /routeros +fi + + QEMU_BRIDGE_ETH1='qemubr1' default_dev1='eth0' From d2ee32092baf1a32c585812481682fa24c8e3ca0 Mon Sep 17 00:00:00 2001 From: Jason Jafari Date: Mon, 3 Feb 2025 19:10:28 -0500 Subject: [PATCH 05/12] WIP --- Dockerfile | 2 +- scripts/entrypoint.sh | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 477e6d6..cbfab52 100644 --- a/Dockerfile +++ b/Dockerfile @@ -32,4 +32,4 @@ RUN wget "$ROUTEROS_PATH" -O "/routeros_source/${ROUTEROS_IMAGE}.zip" && \ # Copy script to routeros folder ADD ["./scripts", "/routeros_source"] -ENTRYPOINT ["/routeros/entrypoint.sh"] +ENTRYPOINT ["/routeros_source/entrypoint.sh"] diff --git a/scripts/entrypoint.sh b/scripts/entrypoint.sh index ac3a2c5..12bb7b4 100755 --- a/scripts/entrypoint.sh +++ b/scripts/entrypoint.sh @@ -6,6 +6,8 @@ if [[ ! -e "/routeros/generate-dhcpd-conf.py" ]]; then fi +cd /routeros + QEMU_BRIDGE_ETH1='qemubr1' default_dev1='eth0' From 3ac118eaf96602c964ef6afab186666c46f52020 Mon Sep 17 00:00:00 2001 From: Jason Jafari Date: Mon, 3 Feb 2025 19:40:19 -0500 Subject: [PATCH 06/12] Bring back docker repository --- .github/FUNDING.yml | 3 +++ .github/workflows/build-and-push.yml | 4 ++-- docker-compose.dist.yml | 6 +++--- 3 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..4a1afef --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,3 @@ +# These are supported funding model platforms + +custom: [https://pay.cloudtips.ru/p/937f48ac, https://boosty.to/evilfreelancer] \ No newline at end of file diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml index 1275c3b..c7c5b6e 100644 --- a/.github/workflows/build-and-push.yml +++ b/.github/workflows/build-and-push.yml @@ -35,7 +35,7 @@ jobs: - name: Get Docker Hub tags id: docker_hub_tags run: | - OWNER="jafarijason" + OWNER="evilfreelancer" REPO="docker-routeros" URL="https://registry.hub.docker.com/v2/repositories/${OWNER}/${REPO}/tags/" TAGS=$(curl -s "$URL" | jq -r '.results[].name' | grep -v "latest") @@ -51,7 +51,7 @@ jobs: if: ${{ !contains(steps.docker_hub_tags.outputs.tags, steps.get_routeros_version.outputs.version) }} run: | VERSION="${{ steps.get_routeros_version.outputs.version }}" - OWNER="jafarijason" + OWNER="evilfreelancer" REPO="docker-routeros" # Set up Docker Buildx diff --git a/docker-compose.dist.yml b/docker-compose.dist.yml index f2356b1..83031c6 100644 --- a/docker-compose.dist.yml +++ b/docker-compose.dist.yml @@ -2,7 +2,7 @@ version: "3" services: routeros-6-48: - image: jafarijason/docker-routeros:6.48.4 + image: evilfreelancer/docker-routeros:6.48.4 restart: unless-stopped cap_add: - NET_ADMIN @@ -16,7 +16,7 @@ services: - "18729:8729" routeros-latest: - image: jafarijason/docker-routeros:latest + image: evilfreelancer/docker-routeros:latest restart: unless-stopped cap_add: - NET_ADMIN @@ -33,7 +33,7 @@ services: - "28729:8729" routeros-local: - image: jafarijason/docker-routeros:latest + image: evilfreelancer/docker-routeros:latest build: context: . dockerfile: Dockerfile From f55bdcb19d2cddff3fbbbd02d39c52424bf7a6e7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Feb 2025 05:26:47 +0000 Subject: [PATCH 07/12] Bump alpine from 3.21.2 to 3.21.3 Bumps alpine from 3.21.2 to 3.21.3. --- updated-dependencies: - dependency-name: alpine dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 0c69820..e5fa1f7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.21.2 +FROM alpine:3.21.3 # For access via VNC EXPOSE 5900 From b264d35ad55f8057facdb8809cc3fea069c81102 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Jun 2025 05:59:46 +0000 Subject: [PATCH 08/12] Bump alpine from 3.21.3 to 3.22.0 Bumps alpine from 3.21.3 to 3.22.0. --- updated-dependencies: - dependency-name: alpine dependency-version: 3.22.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index e2f0e7e..91cf876 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.21.3 +FROM alpine:3.22.0 # For access via VNC EXPOSE 5900 From 1338176e9af97a14f12ba7cd4b86dd4a259132a4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 07:01:15 +0000 Subject: [PATCH 09/12] Bump alpine from 3.22.0 to 3.22.1 Bumps alpine from 3.22.0 to 3.22.1. --- updated-dependencies: - dependency-name: alpine dependency-version: 3.22.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 91cf876..fe8f4e5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.22.0 +FROM alpine:3.22.1 # For access via VNC EXPOSE 5900 From 0f332e0580097b8e6e3f6b9d7af7688b4b9a14f6 Mon Sep 17 00:00:00 2001 From: Bishaka Samuel Date: Sun, 17 Aug 2025 05:20:29 +0300 Subject: [PATCH 10/12] Fallback to default qemu64 emulation when KVM not available This fixes the `qemu-system-x86_64: unable to find CPU model 'host'` error when trying to run the docker image on m1 macs --- scripts/entrypoint.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/entrypoint.sh b/scripts/entrypoint.sh index 12bb7b4..8701ef8 100755 --- a/scripts/entrypoint.sh +++ b/scripts/entrypoint.sh @@ -49,13 +49,14 @@ KVM_OPTS="" if [ -e /dev/kvm ]; then if grep -q -e vmx -e svm /proc/cpuinfo; then echo "Enabling KVM" - CPU_FEATURES=",kvm=on" + CPU_FEATURES="host,kvm=on" KVM_OPTS="-machine accel=kvm -enable-kvm" fi fi if [ "$CPU_FEATURES" = "" ]; then echo "KVM not available, running in emulation mode. This will be slow." + CPU_FEATURES="qemu64" fi # And run the VM! A brief explanation of the options here: @@ -70,7 +71,7 @@ exec qemu-system-x86_64 \ -nographic \ -m 512 \ -smp 4,sockets=1,cores=4,threads=1 \ - -cpu host$CPU_FEATURES \ + -cpu $CPU_FEATURES \ $KVM_OPTS \ -nic tap,id=qemu1,mac=54:05:AB:CD:12:31,script=$QEMU_IFUP,downscript=$QEMU_IFDOWN \ "$@" \ From 4feb3983f7cea1aa8f1c7f8d89e437e710840620 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Aug 2025 07:54:39 +0000 Subject: [PATCH 11/12] Bump actions/checkout from 4 to 5 Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/build-and-push.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml index c7c5b6e..a509e67 100644 --- a/.github/workflows/build-and-push.yml +++ b/.github/workflows/build-and-push.yml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Install dependencies run: sudo apt-get install -y curl jq From 4db197ad1a5603987c168fe9cd793eeafd7d702d Mon Sep 17 00:00:00 2001 From: Pavel Zloi Date: Tue, 26 Aug 2025 12:18:30 +0300 Subject: [PATCH 12/12] Update build-and-push.yml --- .github/workflows/build-and-push.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml index a509e67..3e51da4 100644 --- a/.github/workflows/build-and-push.yml +++ b/.github/workflows/build-and-push.yml @@ -59,11 +59,11 @@ jobs: # Build and push images docker buildx build --push \ - --platform linux/amd64,linux/arm64,linux/arm/v7 \ + --platform linux/amd64,linux/arm64 \ --tag $OWNER/$REPO:$VERSION \ --tag $OWNER/$REPO:latest \ --build-arg ROUTEROS_VERSION=$VERSION . - name: Skip build if: ${{ contains(steps.docker_hub_tags.outputs.tags, steps.get_routeros_version.outputs.version) }} - run: echo "Version ${{ steps.get_routeros_version.outputs.version }} already exists. Skipping build." \ No newline at end of file + run: echo "Version ${{ steps.get_routeros_version.outputs.version }} already exists. Skipping build."