Hello,
I tried to setup a drone agent on my Raspberry 4 (at home) linked to my drone server on my VPS in the cloud. I found build very slow so i tried to add a second agent, an ARM vps on the cloud too. I can see that build on two vps are very fast, but on my raspberry it takes more than 2 minutes (against <10 secondes for others).
Server : VPS on cloud ( 1 vCPU - 2GB ram)
Linux 4.9.0-9-amd64 #1 SMP Debian 4.9.168-1+deb9u3 x86_64 GNU/Linux
Agent 1 : Raspberry PI 4
Linux 4.19.66-v7l+ #1253 SMP armv7l GNU/Linux
Agent 2 : VPS on cloud (ARM64-2GB)
Linux 4.4.127-mainline-rev1 #1 SMP aarch64 aarch64 aarch64 GNU/Linux
My drone.yml
---
kind: pipeline
type: docker
name: linux-amd64
platform:
arch: amd64
os: linux
steps:
- name: deploy
image: docker
volumes:
- name: docker-sock
path: /var/run/docker.sock
commands:
- echo "Salut ça va ?"
- echo "Bonjour"
- hostname
- apk update && apk add curl
- curl 'https://api.ipify.org?format=json'
- sleep 30
volumes:
- name: docker-sock
host:
path: /var/run/docker.sock
---
kind: pipeline
type: docker
name: linux-arm
platform:
arch: arm
os: linux
steps:
- name: deploy
image: docker
volumes:
- name: docker-sock
path: /var/run/docker.sock
commands:
- echo "Salut ça va ?"
- echo "Bonjour"
- hostname
- apk update && apk add curl
- curl 'https://api.ipify.org?format=json'
- sleep 30
volumes:
- name: docker-sock
host:
path: /var/run/docker.sock
---
kind: pipeline
type: docker
name: linux-arm64
platform:
arch: arm64
os: linux
steps:
- name: deploy
image: docker
volumes:
- name: docker-sock
path: /var/run/docker.sock
commands:
- echo "Salut ça va ?"
- echo "Bonjour"
- hostname
- apk update && apk add curl
- curl 'https://api.ipify.org?format=json'
- sleep 30
volumes:
- name: docker-sock
host:
path: /var/run/docker.sock
Arm64 is handled by the server, arm64 is handled by agent 2 and arm is handled by agent 2.
With this specific pipeline, build time are
My agent docker:
docker run -d \
--name drone-worker-prod-1 \
--volume /var/run/docker.sock:/var/run/docker.sock \
-e DRONE_RPC_PROTO=https \
-e DRONE_RPC_HOST= \
-e DRONE_RPC_SECRET= \
-e DRONE_OPEN=true \
-e DRONE_RPC_DEBUG=true \
-e DRONE_RUNNER_NAME=${HOSTNAME} \
-p 3001:3000 \
drone/agent:1.4.0
I would like to understand why it takes 6 more time on my raspberry to make theses easy tasks.
Thank you