Skip to content

Commit 29a09ba

Browse files
authored
build: Refactor Dockerfile and local-build script to use build arguments for base image and agent version (#36)
Validated
1 parent f66accb commit 29a09ba

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

Dockerfile

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
ARG ARG_UBUNTU_BASE_IMAGE="ubuntu"
12
ARG ARG_UBUNTU_BASE_IMAGE_TAG="20.04"
23

3-
FROM ubuntu:${ARG_UBUNTU_BASE_IMAGE_TAG}
4+
FROM ${ARG_UBUNTU_BASE_IMAGE}:${ARG_UBUNTU_BASE_IMAGE_TAG}
45
WORKDIR /azp
5-
ENV TARGETARCH=linux-x64
6-
ENV VSTS_AGENT_VERSION=4.251.0
6+
ARG ARG_TARGETARCH=linux-x64
7+
ARG ARG_VSTS_AGENT_VERSION=4.251.0
78

89

910
# To make it easier for build and release pipelines to run apt-get,
@@ -30,8 +31,8 @@ RUN apt-get update && apt-get -y upgrade
3031

3132
# Download and extract the Azure DevOps Agent
3233
RUN printenv \
33-
&& echo "Downloading Azure DevOps Agent version ${VSTS_AGENT_VERSION} for ${TARGETARCH}"
34-
RUN curl -LsS https://vstsagentpackage.azureedge.net/agent/${VSTS_AGENT_VERSION}/vsts-agent-${TARGETARCH}-${VSTS_AGENT_VERSION}.tar.gz | tar -xz
34+
&& echo "Downloading Azure DevOps Agent version ${ARG_VSTS_AGENT_VERSION} for ${ARG_TARGETARCH}"
35+
RUN curl -LsS https://vstsagentpackage.azureedge.net/agent/${ARG_VSTS_AGENT_VERSION}/vsts-agent-${ARG_TARGETARCH}-${ARG_VSTS_AGENT_VERSION}.tar.gz | tar -xz
3536

3637

3738

local-build.sh

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,17 @@ set -euo pipefail
44
REGISTRY="${REGISTRY:-btungut}"
55
TAG="${TAG:-latest}"
66

7+
UBUNTU_BASE_IMAGE="${UBUNTU_BASE_IMAGE:-ubuntu}"
8+
UBUNTU_BASE_IMAGE_TAG="${UBUNTU_BASE_IMAGE_TAG:-20.04}"
9+
TARGETARCH="${TARGETARCH:-linux-x64}"
10+
VSTS_AGENT_VERSION="${VSTS_AGENT_VERSION:-4.251.0}"
11+
712
docker build ./src \
13+
--build-arg ARG_UBUNTU_BASE_IMAGE=${UBUNTU_BASE_IMAGE} \
14+
--build-arg ARG_UBUNTU_BASE_IMAGE_TAG=${UBUNTU_BASE_IMAGE_TAG} \
15+
--build-arg ARG_TARGETARCH=${TARGETARCH} \
16+
--build-arg ARG_VSTS_AGENT_VERSION=${VSTS_AGENT_VERSION} \
817
-f ./Dockerfile \
918
-t ${REGISTRY}/azure-devops-agent:${TAG} \
10-
--progress=plain
19+
--progress=plain \
20+
"$@"

0 commit comments

Comments
 (0)