This is an automated email from the ASF dual-hosted git repository. kingsword09 pushed a commit to branch etcd-tls in repository https://gitbox.apache.org/repos/asf/opendal.git
commit bbab40c4cf30817ce4b98bcb5f34ab34483c73f5 Author: Kingsword <kingswor...@gmail.com> AuthorDate: Thu Sep 4 09:01:44 2025 +0800 chore: switches etcd image to official etcd image --- fixtures/etcd/docker-compose-standalone-tls.yml | 45 ++++++++++++++++++++----- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/fixtures/etcd/docker-compose-standalone-tls.yml b/fixtures/etcd/docker-compose-standalone-tls.yml index bb1096595..315a9d718 100644 --- a/fixtures/etcd/docker-compose-standalone-tls.yml +++ b/fixtures/etcd/docker-compose-standalone-tls.yml @@ -17,22 +17,49 @@ services: etcd: - image: docker.io/bitnamilegacy/etcd:3.6.4-debian-12-r0 + image: gcr.io/etcd-development/etcd:v3.6.4 ports: - "2379:2379" - "2380:2380" volumes: - - ./ca.pem:/opt/bitnami/etcd/conf/ca.pem - - ./server.pem:/opt/bitnami/etcd/conf/server.pem - - ./server-key.pem:/opt/bitnami/etcd/conf/server-key.pem - - ./client-key.pem:/opt/bitnami/etcd/client-key.pem - - ./client.pem:/opt/bitnami/etcd/client.pem + - ./ca.pem:/certs/ca.pem + - ./server.pem:/certs/server.pem + - ./server-key.pem:/certs/server-key.pem + - ./client-key.pem:/certs/client-key.pem + - ./client.pem:/certs/client.pem environment: ETCD_NAME: etcd ETCD_ROOT_PASSWORD: opendal ETCD_LISTEN_CLIENT_URLS: https://0.0.0.0:2379 ETCD_ADVERTISE_CLIENT_URLS: https://etcd:2379 ETCD_MAX_REQUEST_BYTES: 10485760 - ETCD_TRUSTED_CA_FILE: /opt/bitnami/etcd/conf/ca.pem - ETCD_KEY_FILE: /opt/bitnami/etcd/conf/server-key.pem - ETCD_CERT_FILE: /opt/bitnami/etcd/conf/server.pem + ETCD_TRUSTED_CA_FILE: /certs/ca.pem + ETCD_KEY_FILE: /certs/server-key.pem + ETCD_CERT_FILE: /certs/server.pem + ETCDCTL_API: "3" + ETCDCTL_ENDPOINTS: https://127.0.0.1:2379 + ETCDCTL_CACERT: /certs/ca.pem + ETCDCTL_CERT: /certs/client.pem + ETCDCTL_KEY: /certs/client-key.pem + command: >- + sh -c ' + set -euo pipefail + etcd \ + --name "${ETCD_NAME}" \ + --listen-client-urls "${ETCD_LISTEN_CLIENT_URLS}" \ + --advertise-client-urls "${ETCD_ADVERTISE_CLIENT_URLS}" \ + --max-request-bytes "${ETCD_MAX_REQUEST_BYTES}" \ + --client-cert-auth=true \ + --trusted-ca-file="${ETCD_TRUSTED_CA_FILE}" \ + --cert-file="${ETCD_CERT_FILE}" \ + --key-file="${ETCD_KEY_FILE}" & + pid=$! + for i in $(seq 1 60); do + if etcdctl endpoint health; then break; fi + sleep 1 + done + etcdctl user add root --interactive=false --password "${ETCD_ROOT_PASSWORD}" || true + etcdctl user grant-role root root || true + etcdctl auth enable || true + wait "$pid" + '