diff --git a/.circleci/Dockerfile b/.circleci/Dockerfile index 0dda01cfef..2b0c09d6f2 100644 --- a/.circleci/Dockerfile +++ b/.circleci/Dockerfile @@ -21,7 +21,6 @@ ENV GOROOT="/opt/go" ENV PATH="/opt/go/bin:${PATH}" RUN useradd -c "OneCloud Builder" --create-home --home-dir /home/build --shell /bin/bash build -USER build ENV HOME /home/build WORKDIR /home/build diff --git a/.drone.yml b/.drone.yml index cfb684a334..88ee7c2d32 100644 --- a/.drone.yml +++ b/.drone.yml @@ -2,49 +2,131 @@ kind: pipeline name: build +clone: + depth: 1 + workspace: - base: /go + base: /home/build/go path: src/yunion.io/x/onecloud steps: - name: build - image: d3lx/golang:yunion + image: yunion/onecloud-ci:latest commands: - - make - when: - event: - - pull_request - - tag + - CGO_ENABLED=0 make -j 4 cmd/apigateway cmd/baremetal-agent cmd/climc cmd/keystone + - CGO_ENABLED=0 make -j 4 cmd/logger cmd/region cmd/scheduler cmd/webconsole + - CGO_ENABLED=0 make -j 4 cmd/yunionconf cmd/glance cmd/torrent -trigger: - event: - - pull_request - - tag - ---- -kind: pipeline -name: release - -steps: -- name: release-img +- name: image-baremetal-agent image: plugins/docker settings: - repo: registry.cn-beijing.aliyuncs.com/yunionio/onecloud + repo: registry.cn-beijing.aliyuncs.com/yunionio/baremetal-agent registry: registry.cn-beijing.aliyuncs.com - tags: "{DRONE_TAG}" + dockerfile: build/docker/Dockerfile.baremetal-agent + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-climc + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/climc + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.climc + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-keystone + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/keystone + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.keystone + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-logger + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/logger + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.logger + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-region + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/region + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.region + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-scheduler + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/scheduler + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.scheduler + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-yunionconf + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/yunionconf + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.yunionconf + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-apigateway + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/apigateway + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.apigateway + tags: "${DRONE_TAG}" + username: + from_secret: docker_username + password: + from_secret: docker_password + +- name: image-glance + image: plugins/docker + settings: + repo: registry.cn-beijing.aliyuncs.com/yunionio/glance + registry: registry.cn-beijing.aliyuncs.com + dockerfile: build/docker/Dockerfile.glance + tags: "${DRONE_TAG}" username: from_secret: docker_username password: from_secret: docker_password - when: - event: - - tag trigger: event: - tag status: - success - -depends_on: -- build diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index ebc6dfb639..0000000000 --- a/Dockerfile +++ /dev/null @@ -1,20 +0,0 @@ -FROM alpine:3.8 - -MAINTAINER "Zexi Li " - -ENV TZ Asia/Shanghai - -# Fix binary file not found, see: -# https://stackoverflow.com/questions/34729748/installed-go-binary-not-found-in-path-on-alpine-linux-docker -RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2 - -RUN mkdir -p /opt/yunion/bin - -ADD ./_output/bin/climc /opt/yunion/bin/climc -ADD ./_output/bin/cloudir /opt/yunion/bin/cloudir -ADD ./_output/bin/glance /opt/yunion/bin/glance -ADD ./_output/bin/region /opt/yunion/bin/region -ADD ./_output/bin/region-dns /opt/yunion/bin/region-dns -ADD ./_output/bin/scheduler /opt/yunion/bin/scheduler -ADD ./_output/bin/webconsole /opt/yunion/bin/webconsole -ADD ./_output/bin/yunionconf /opt/yunion/bin/yunionconf diff --git a/build/docker/Dockerfile.apigateway b/build/docker/Dockerfile.apigateway new file mode 100644 index 0000000000..30248c75aa --- /dev/null +++ b/build/docker/Dockerfile.apigateway @@ -0,0 +1,16 @@ +FROM alpine:3.8 + +MAINTAINER "Zexi Li " + +ENV TZ Asia/Shanghai + +RUN mkdir -p /opt/yunion/bin + +RUN apk update && \ + apk add --no-cache tzdata && \ + rm -rf /var/cache/apk/* + +RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +ADD ./_output/bin/apigateway /opt/yunion/bin/apigateway + diff --git a/build/docker/Dockerfile.climc b/build/docker/Dockerfile.climc index 6283147c1e..9b788b5efd 100644 --- a/build/docker/Dockerfile.climc +++ b/build/docker/Dockerfile.climc @@ -4,7 +4,7 @@ MAINTAINER "Zexi Li " ENV TZ Asia/Shanghai -RUN apk add --no-cache bash bash-completion && \ +RUN apk add --no-cache bash bash-completion tzdata && \ rm -rf /var/cache/apk/* RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime