Skip to content

Commit fc41e75

Browse files
authored
Merge pull request #44 from Azure/development
Added containerized build
2 parents 78ddd44 + 1c21dca commit fc41e75

File tree

4 files changed

+26
-16
lines changed

4 files changed

+26
-16
lines changed

Dockerfile

Lines changed: 0 additions & 12 deletions
This file was deleted.

Dockerfile.build

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
FROM golang:1.7.4
2+
3+
RUN go get -d golang.org/x/sys/unix
4+
RUN go get -d github.com/containernetworking/cni/pkg/skel
5+
6+
WORKDIR /go/src/github.com/Azure/azure-container-networking

Makefile

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,12 @@ CNIFILES = \
2525
$(COREFILES)
2626

2727
CNMDIR = cnm/plugin
28-
2928
CNIDIR = cni/plugin
30-
3129
OUTPUTDIR = out
30+
REPO_PATH = /go/src/github.com/Azure/azure-container-networking
31+
32+
BUILD_CONTAINER_IMAGE = acn-build
33+
BUILD_USER ?= $(shell id -u)
3234

3335
VERSION ?= $(shell git describe --tags --always --dirty)
3436

@@ -37,6 +39,7 @@ ENSURE_OUTPUTDIR_EXISTS := $(shell mkdir -p $(OUTPUTDIR))
3739
# Shorthand target names for convenience.
3840
azure-cnm-plugin: $(OUTPUTDIR)/azure-cnm-plugin
3941
azure-cni-plugin: $(OUTPUTDIR)/azure-cni-plugin
42+
all-binaries: azure-cnm-plugin azure-cni-plugin
4043

4144
# Clean all build artifacts.
4245
.PHONY: clean
@@ -51,5 +54,16 @@ $(OUTPUTDIR)/azure-cnm-plugin: $(CNMFILES)
5154
$(OUTPUTDIR)/azure-cni-plugin: $(CNIFILES)
5255
go build -v -o $(OUTPUTDIR)/azure-cni-plugin -ldflags "-X main.version=$(VERSION) -s -w" $(CNIDIR)/*.go
5356

54-
install:
55-
go install github.com/Azure/azure-container-networking/cnm
57+
# Build all binaries in a container.
58+
.PHONY: build-containerized
59+
build-containerized:
60+
docker build -f Dockerfile.build -t $(BUILD_CONTAINER_IMAGE):$(VERSION) .
61+
docker run --rm \
62+
-v ${PWD}:$(REPO_PATH):ro \
63+
-v ${PWD}/$(OUTPUTDIR):$(REPO_PATH)/$(OUTPUTDIR) \
64+
$(BUILD_CONTAINER_IMAGE):$(VERSION) \
65+
bash -c '\
66+
make all-binaries && \
67+
chown -R $(BUILD_USER):$(BUILD_USER) $(OUTPUTDIR) \
68+
'
69+

build/build.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#!/usr/bin/env bash
2+
make build-containerized

0 commit comments

Comments
 (0)