gocd에서 gradle build 하기 / ci/cd
GoCD 에서 gradle build
Releases page에서 jar을 download 할 수 있다. 이 jar을 $GO_SERVER_HOME/plugins/external
에 copy 해 넣고, 서버를 restart 하면 된다.
GoCD agent 에 JDK 설치
위의 plugin 을 설치하면 그냥 될 것이라 봤는데, 여전히 JAVA_HOME 설정이 필요하다. 즉, jdk 를 설치해야 한다. 그럴거면, 굳이 저 gradle plugin 을 쓸 필요가 있나 싶긴 하다.
여하튼 그래서 see also 1. 만드는 container 에서는 agent 가 jdk를 가지고 있지 않다. 그래서 아래처럼 Dockerfile
을 만들고, 기존 image 대신에 아래 Dockerfile 로 build 한 이미지를 쓰자.
FROM gocd/gocd-agent-alpine-3.14:v21.3.0
LABEL maintainer "i5on9i <gaedduck@duck.go>"
USER root
RUN apk update \
&& apk upgrade \
&& apk add ca-certificates \
&& update-ca-certificates \
&& apk add --update coreutils && rm -rf /var/cache/apk/* \
&& apk add --update openjdk11 tzdata curl unzip bash \
&& apk add --no-cache nss \
&& rm -rf /var/cache/apk/*
ENTRYPOINT ["/docker-entrypoint.sh"]
USER go
compose.yml
을 아래처럼 변경하고, docker compose up --build
을 하면 된다.
# compose.yml
version: "3"
services:
server:
container_name: gocd-server
hostname: gocdserver
ports:
- 8153:8153
image: gocd/gocd-server:v21.3.0
volumes:
- ./godata:/godata
environment:
- MSG_TIME=0
agent:
build: .
# 이부분 대신에 build
# image: gocd/gocd-agent-alpine-3.14:v21.3.0
environment:
- GO_SERVER_URL=http://gocdserver:8153/go
depends_on:
- server
networks:
gocdnet:
댓글 없음:
댓글 쓰기