@@ -29,12 +29,14 @@ jobs:
 | 
				
			|||||||
        - make .gitvalidation
 | 
					        - make .gitvalidation
 | 
				
			||||||
        - make verify
 | 
					        - make verify
 | 
				
			||||||
        - make binaries
 | 
					        - make binaries
 | 
				
			||||||
 | 
					        - make release
 | 
				
			||||||
      go: 1.8.x
 | 
					      go: 1.8.x
 | 
				
			||||||
    - script:
 | 
					    - script:
 | 
				
			||||||
        - make install.tools
 | 
					        - make install.tools
 | 
				
			||||||
        - make .gitvalidation
 | 
					        - make .gitvalidation
 | 
				
			||||||
        - make verify
 | 
					        - make verify
 | 
				
			||||||
        - make binaries
 | 
					        - make binaries
 | 
				
			||||||
 | 
					        - make release
 | 
				
			||||||
      go: tip
 | 
					      go: tip
 | 
				
			||||||
    - stage: Test
 | 
					    - stage: Test
 | 
				
			||||||
      script:
 | 
					      script:
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										8
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										8
									
								
								Makefile
									
									
									
									
									
								
							@@ -23,6 +23,7 @@ BUILD_DIR ?= _output
 | 
				
			|||||||
VERSION := $(shell git describe --tags --dirty)
 | 
					VERSION := $(shell git describe --tags --dirty)
 | 
				
			||||||
# strip the first char of the tag if it's a `v`
 | 
					# strip the first char of the tag if it's a `v`
 | 
				
			||||||
VERSION := $(VERSION:v%=%)
 | 
					VERSION := $(VERSION:v%=%)
 | 
				
			||||||
 | 
					TARBALL ?= cri-containerd-$(VERSION).tar.gz
 | 
				
			||||||
BUILD_TAGS:= -ldflags '-X $(PROJECT)/pkg/version.criContainerdVersion=$(VERSION)'
 | 
					BUILD_TAGS:= -ldflags '-X $(PROJECT)/pkg/version.criContainerdVersion=$(VERSION)'
 | 
				
			||||||
SOURCES := $(shell find . -name '*.go')
 | 
					SOURCES := $(shell find . -name '*.go')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -36,6 +37,7 @@ help:
 | 
				
			|||||||
	@echo " * 'install'        - Install binaries to system locations"
 | 
						@echo " * 'install'        - Install binaries to system locations"
 | 
				
			||||||
	@echo " * 'binaries'       - Build cri-containerd"
 | 
						@echo " * 'binaries'       - Build cri-containerd"
 | 
				
			||||||
	@echo " * 'static-binaries - Build static cri-containerd"
 | 
						@echo " * 'static-binaries - Build static cri-containerd"
 | 
				
			||||||
 | 
						@echo " * 'release'        - Build release tarball"
 | 
				
			||||||
	@echo " * 'test'           - Test cri-containerd"
 | 
						@echo " * 'test'           - Test cri-containerd"
 | 
				
			||||||
	@echo " * 'test-cri'       - Test cri-containerd with cri validation test"
 | 
						@echo " * 'test-cri'       - Test cri-containerd with cri validation test"
 | 
				
			||||||
	@echo " * 'test-e2e-node'  - Test cri-containerd with Kubernetes node e2e test"
 | 
						@echo " * 'test-e2e-node'  - Test cri-containerd with Kubernetes node e2e test"
 | 
				
			||||||
@@ -92,6 +94,11 @@ install: binaries
 | 
				
			|||||||
uninstall:
 | 
					uninstall:
 | 
				
			||||||
	rm -f $(BINDIR)/cri-containerd
 | 
						rm -f $(BINDIR)/cri-containerd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(BUILD_DIR)/$(TARBALL): $(BUILD_DIR)/cri-containerd hack/versions
 | 
				
			||||||
 | 
						@BUILD_DIR=$(BUILD_DIR) TARBALL=$(TARBALL) ./hack/release.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					release: $(BUILD_DIR)/$(TARBALL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.PHONY: install.deps
 | 
					.PHONY: install.deps
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install.deps:
 | 
					install.deps:
 | 
				
			||||||
@@ -121,6 +128,7 @@ install.tools: .install.gitvalidation .install.gometalinter
 | 
				
			|||||||
.PHONY: \
 | 
					.PHONY: \
 | 
				
			||||||
	binaries \
 | 
						binaries \
 | 
				
			||||||
	static-binaries \
 | 
						static-binaries \
 | 
				
			||||||
 | 
						release \
 | 
				
			||||||
	boiler \
 | 
						boiler \
 | 
				
			||||||
	clean \
 | 
						clean \
 | 
				
			||||||
	default \
 | 
						default \
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -30,10 +30,27 @@ set -o pipefail
 | 
				
			|||||||
ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/..
 | 
					ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/..
 | 
				
			||||||
. ${ROOT}/hack/versions
 | 
					. ${ROOT}/hack/versions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# DESTDIR is the dest path to install dependencies.
 | 
				
			||||||
 | 
					DESTDIR=${DESTDIR:-"/"}
 | 
				
			||||||
 | 
					# Convert to absolute path if it's relative.
 | 
				
			||||||
 | 
					if [[ ${DESTDIR} != /* ]]; then
 | 
				
			||||||
 | 
					  DESTDIR=${ROOT}/${DESTDIR}
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# NOSUDO indicates not to use sudo during installation.
 | 
				
			||||||
 | 
					NOSUDO=${NOSUDO:-false}
 | 
				
			||||||
 | 
					sudo="sudo"
 | 
				
			||||||
 | 
					if ${NOSUDO}; then
 | 
				
			||||||
 | 
					  sudo=""
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					CONTAINERD_DIR=${DESTDIR}/usr/local
 | 
				
			||||||
 | 
					RUNC_DIR=${DESTDIR}
 | 
				
			||||||
 | 
					CNI_DIR=${DESTDIR}/opt/cni
 | 
				
			||||||
 | 
					CNI_CONFIG_DIR=${DESTDIR}/etc/cni/net.d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUNC_PKG=github.com/opencontainers/runc
 | 
					RUNC_PKG=github.com/opencontainers/runc
 | 
				
			||||||
CNI_PKG=github.com/containernetworking/plugins
 | 
					CNI_PKG=github.com/containernetworking/plugins
 | 
				
			||||||
CNI_DIR=/opt/cni
 | 
					 | 
				
			||||||
CNI_CONFIG_DIR=/etc/cni/net.d
 | 
					 | 
				
			||||||
CONTAINERD_PKG=github.com/containerd/containerd
 | 
					CONTAINERD_PKG=github.com/containerd/containerd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Check GOPATH
 | 
					# Check GOPATH
 | 
				
			||||||
@@ -52,8 +69,7 @@ git fetch --all
 | 
				
			|||||||
git checkout ${RUNC_VERSION}
 | 
					git checkout ${RUNC_VERSION}
 | 
				
			||||||
BUILDTAGS=${BUILDTAGS:-seccomp apparmor}
 | 
					BUILDTAGS=${BUILDTAGS:-seccomp apparmor}
 | 
				
			||||||
make BUILDTAGS="$BUILDTAGS"
 | 
					make BUILDTAGS="$BUILDTAGS"
 | 
				
			||||||
sudo make install
 | 
					${sudo} make install -e DESTDIR=${RUNC_DIR}
 | 
				
			||||||
which runc
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Install cni
 | 
					# Install cni
 | 
				
			||||||
go get -d ${CNI_PKG}/...
 | 
					go get -d ${CNI_PKG}/...
 | 
				
			||||||
@@ -61,10 +77,10 @@ cd ${GOPATH}/src/${CNI_PKG}
 | 
				
			|||||||
git fetch --all
 | 
					git fetch --all
 | 
				
			||||||
git checkout ${CNI_VERSION}
 | 
					git checkout ${CNI_VERSION}
 | 
				
			||||||
./build.sh
 | 
					./build.sh
 | 
				
			||||||
sudo mkdir -p ${CNI_DIR}
 | 
					${sudo} mkdir -p ${CNI_DIR}
 | 
				
			||||||
sudo cp -r ./bin ${CNI_DIR}
 | 
					${sudo} cp -r ./bin ${CNI_DIR}
 | 
				
			||||||
sudo mkdir -p ${CNI_CONFIG_DIR}
 | 
					${sudo} mkdir -p ${CNI_CONFIG_DIR}
 | 
				
			||||||
sudo bash -c 'cat >'${CNI_CONFIG_DIR}'/10-containerd-net.conflist <<EOF
 | 
					${sudo} bash -c 'cat >'${CNI_CONFIG_DIR}'/10-containerd-net.conflist <<EOF
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    "cniVersion": "0.3.1",
 | 
					    "cniVersion": "0.3.1",
 | 
				
			||||||
    "name": "containerd-net",
 | 
					    "name": "containerd-net",
 | 
				
			||||||
@@ -96,6 +112,4 @@ cd ${GOPATH}/src/${CONTAINERD_PKG}
 | 
				
			|||||||
git fetch --all
 | 
					git fetch --all
 | 
				
			||||||
git checkout ${CONTAINERD_VERSION}
 | 
					git checkout ${CONTAINERD_VERSION}
 | 
				
			||||||
make
 | 
					make
 | 
				
			||||||
sudo make install
 | 
					${sudo} make install -e DESTDIR=${CONTAINERD_DIR}
 | 
				
			||||||
which containerd
 | 
					 | 
				
			||||||
which containerd-shim
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										38
									
								
								hack/release.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										38
									
								
								hack/release.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Copyright 2017 The Kubernetes Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#     http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set -o errexit
 | 
				
			||||||
 | 
					set -o nounset
 | 
				
			||||||
 | 
					set -o pipefail
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/..
 | 
				
			||||||
 | 
					cd ${ROOT}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# BUILD_DIR is the directory to generate release tar.
 | 
				
			||||||
 | 
					# TARBALL is the name of the release tar.
 | 
				
			||||||
 | 
					BUILD_DIR=${BUILD_DIR:-"_output"}
 | 
				
			||||||
 | 
					TARBALL=${TARBALL:-"cri-containerd.tar.gz"}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					destdir=${BUILD_DIR}/release-stage
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Install dependencies into release stage.
 | 
				
			||||||
 | 
					NOSUDO=true DESTDIR=${destdir} ./hack/install-deps.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Install cri-containerd into release stage.
 | 
				
			||||||
 | 
					make install -e DESTDIR=${destdir}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Create release tar
 | 
				
			||||||
 | 
					tar -zcvf ${BUILD_DIR}/${TARBALL} -C ${destdir} .
 | 
				
			||||||
		Reference in New Issue
	
	Block a user