Merge pull request #4580 from dmcgowan/move-release-build-makefile
Move CRI release logic to Makefile
This commit is contained in:
commit
efc67b192d
30
.github/workflows/release.yml
vendored
30
.github/workflows/release.yml
vendored
@ -126,46 +126,22 @@ jobs:
|
|||||||
name: containerd-binaries-${{ matrix.os }}
|
name: containerd-binaries-${{ matrix.os }}
|
||||||
path: src/github.com/containerd/containerd/*.tar.gz*
|
path: src/github.com/containerd/containerd/*.tar.gz*
|
||||||
|
|
||||||
- name: Install cri-containerd dependencies
|
- name: Make cri-containerd tar
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
RUNC_FLAVOR: runc
|
RUNC_FLAVOR: runc
|
||||||
DESTDIR: ${{ github.workspace }}/cri-release
|
|
||||||
run: |
|
run: |
|
||||||
mkdir ${DESTDIR}
|
|
||||||
if [[ "${OS}" == "linux" ]]; then
|
if [[ "${OS}" == "linux" ]]; then
|
||||||
sudo install -d ${DESTDIR}/usr/local/bin
|
|
||||||
sudo install -D -m 755 bin/* ${DESTDIR}/usr/local/bin
|
|
||||||
sudo install -d ${DESTDIR}/opt/containerd/cluster
|
|
||||||
sudo cp -r contrib/gce ${DESTDIR}/opt/containerd/cluster/
|
|
||||||
sudo install -d ${DESTDIR}/etc/systemd/system
|
|
||||||
sudo install -m 644 containerd.service ${DESTDIR}/etc/systemd/system
|
|
||||||
echo "CONTAINERD_VERSION: '${RELEASE_VER#v}'" | sudo tee ${DESTDIR}/opt/containerd/cluster/version
|
|
||||||
|
|
||||||
sudo PATH=$PATH script/setup/install-seccomp
|
sudo PATH=$PATH script/setup/install-seccomp
|
||||||
USESUDO=true script/setup/install-runc
|
|
||||||
script/setup/install-cni
|
|
||||||
script/setup/install-critools
|
|
||||||
elif [[ "${OS}" == "windows" ]]; then
|
|
||||||
script/setup/install-cni-windows
|
|
||||||
cp bin/* ${DESTDIR}/
|
|
||||||
fi
|
fi
|
||||||
|
make cri-cni-release
|
||||||
working-directory: src/github.com/containerd/containerd
|
working-directory: src/github.com/containerd/containerd
|
||||||
|
|
||||||
- name: Make cri-containerd tar
|
|
||||||
shell: bash
|
|
||||||
run: |
|
|
||||||
TARFILE="cri-containerd-cni-${RELEASE_VER#v}-${OS}-amd64.tar.gz"
|
|
||||||
[[ "${OS}" == "linux" ]] && tar czf ${TARFILE} etc usr opt
|
|
||||||
[[ "${OS}" == "windows" ]] && tar czf ${TARFILE} *
|
|
||||||
sha256sum ${TARFILE} >${TARFILE}.sha256sum
|
|
||||||
working-directory: cri-release
|
|
||||||
|
|
||||||
- name: Save cri-containerd binaries
|
- name: Save cri-containerd binaries
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: cri-containerd-binaries-${{ matrix.os }}
|
name: cri-containerd-binaries-${{ matrix.os }}
|
||||||
path: cri-release/cri-containerd-cni-*.tar.gz*
|
path: src/github.com/containerd/containerd/releases/cri-containerd-cni-*.tar.gz*
|
||||||
|
|
||||||
release:
|
release:
|
||||||
name: Create containerd Release
|
name: Create containerd Release
|
||||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -4,4 +4,7 @@ coverage.txt
|
|||||||
profile.out
|
profile.out
|
||||||
containerd.test
|
containerd.test
|
||||||
_site/
|
_site/
|
||||||
|
releases/*.tar.gz
|
||||||
|
releases/*.tar.gz.sha256sum
|
||||||
|
_output/
|
||||||
.vagrant/
|
.vagrant/
|
||||||
|
60
Makefile
60
Makefile
@ -65,6 +65,8 @@ WHALE = "🇩"
|
|||||||
ONI = "👹"
|
ONI = "👹"
|
||||||
|
|
||||||
RELEASE=containerd-$(VERSION:v%=%).${GOOS}-${GOARCH}
|
RELEASE=containerd-$(VERSION:v%=%).${GOOS}-${GOARCH}
|
||||||
|
CRIRELEASE=cri-containerd-$(VERSION:v%=%)-${GOOS}-${GOARCH}
|
||||||
|
CRICNIRELEASE=cri-containerd-cni-$(VERSION:v%=%)-${GOOS}-${GOARCH}
|
||||||
|
|
||||||
PKG=github.com/containerd/containerd
|
PKG=github.com/containerd/containerd
|
||||||
|
|
||||||
@ -120,7 +122,10 @@ BINARIES=$(addprefix bin/,$(COMMANDS))
|
|||||||
TESTFLAGS ?= $(TESTFLAGS_RACE) $(EXTRA_TESTFLAGS)
|
TESTFLAGS ?= $(TESTFLAGS_RACE) $(EXTRA_TESTFLAGS)
|
||||||
TESTFLAGS_PARALLEL ?= 8
|
TESTFLAGS_PARALLEL ?= 8
|
||||||
|
|
||||||
.PHONY: clean all AUTHORS build binaries test integration generate protos checkprotos coverage ci check help install uninstall vendor release mandir install-man genman
|
OUTPUTDIR = $(join $(ROOTDIR), _output)
|
||||||
|
CRIDIR=$(OUTPUTDIR)/cri
|
||||||
|
|
||||||
|
.PHONY: clean all AUTHORS build binaries test integration generate protos checkprotos coverage ci check help install uninstall vendor release mandir install-man genman install-cri-deps cri-release cri-cni-release
|
||||||
.DEFAULT: default
|
.DEFAULT: default
|
||||||
|
|
||||||
all: binaries
|
all: binaries
|
||||||
@ -245,13 +250,64 @@ releases/$(RELEASE).tar.gz: $(BINARIES)
|
|||||||
@tar -czf releases/$(RELEASE).tar.gz -C releases/$(RELEASE) bin
|
@tar -czf releases/$(RELEASE).tar.gz -C releases/$(RELEASE) bin
|
||||||
@rm -rf releases/$(RELEASE)
|
@rm -rf releases/$(RELEASE)
|
||||||
|
|
||||||
release: $(BINARIES) releases/$(RELEASE).tar.gz
|
release: releases/$(RELEASE).tar.gz
|
||||||
@echo "$(WHALE) $@"
|
@echo "$(WHALE) $@"
|
||||||
@cd releases && sha256sum $(RELEASE).tar.gz >$(RELEASE).tar.gz.sha256sum
|
@cd releases && sha256sum $(RELEASE).tar.gz >$(RELEASE).tar.gz.sha256sum
|
||||||
|
|
||||||
|
ifeq ($(GOOS),windows)
|
||||||
|
install-cri-deps: $(BINARIES)
|
||||||
|
mkdir -p $(CRIDIR)
|
||||||
|
DESTDIR=$(CRIDIR) script/setup/install-cni-windows
|
||||||
|
cp bin/* $(CRIDIR)
|
||||||
|
else
|
||||||
|
install-cri-deps: $(BINARIES)
|
||||||
|
@sudo rm -rf ${CRIDIR}
|
||||||
|
@sudo install -d ${CRIDIR}/usr/local/bin
|
||||||
|
@sudo install -D -m 755 bin/* ${CRIDIR}/usr/local/bin
|
||||||
|
@sudo install -d ${CRIDIR}/opt/containerd/cluster
|
||||||
|
@sudo cp -r contrib/gce ${CRIDIR}/opt/containerd/cluster/
|
||||||
|
@sudo install -d ${CRIDIR}/etc/systemd/system
|
||||||
|
@sudo install -m 644 containerd.service ${CRIDIR}/etc/systemd/system
|
||||||
|
echo "CONTAINERD_VERSION: '$(VERSION:v%=%)'" | sudo tee ${CRIDIR}/opt/containerd/cluster/version
|
||||||
|
|
||||||
|
DESTDIR=$(CRIDIR) USESUDO=true script/setup/install-runc
|
||||||
|
DESTDIR=$(CRIDIR) script/setup/install-cni
|
||||||
|
DESTDIR=$(CRIDIR) script/setup/install-critools
|
||||||
|
|
||||||
|
@sudo install -d $(CRIDIR)/bin
|
||||||
|
@sudo install $(BINARIES) $(CRIDIR)/bin
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(GOOS),windows)
|
||||||
|
releases/$(CRIRELEASE).tar.gz: install-cri-deps
|
||||||
|
@echo "$(WHALE) $@"
|
||||||
|
@cd $(CRIDIR) && tar -czf ../../releases/$(CRIRELEASE).tar.gz *
|
||||||
|
|
||||||
|
releases/$(CRICNIRELEASE).tar.gz: install-cri-deps
|
||||||
|
@echo "$(WHALE) $@"
|
||||||
|
@cd $(CRIDIR) && tar -czf ../../releases/$(CRICNIRELEASE).tar.gz *
|
||||||
|
else
|
||||||
|
releases/$(CRIRELEASE).tar.gz: install-cri-deps
|
||||||
|
@echo "$(WHALE) $@"
|
||||||
|
@tar -czf releases/$(CRIRELEASE).tar.gz -C $(CRIDIR) etc/crictl.yaml etc/systemd usr opt/containerd
|
||||||
|
|
||||||
|
releases/$(CRICNIRELEASE).tar.gz: install-cri-deps
|
||||||
|
@echo "$(WHALE) $@"
|
||||||
|
@tar -czf releases/$(CRICNIRELEASE).tar.gz -C $(CRIDIR) etc usr opt
|
||||||
|
endif
|
||||||
|
|
||||||
|
cri-release: releases/$(CRIRELEASE).tar.gz
|
||||||
|
@echo "$(WHALE) $@"
|
||||||
|
@cd releases && sha256sum $(CRIRELEASE).tar.gz >$(CRIRELEASE).tar.gz.sha256sum
|
||||||
|
|
||||||
|
cri-cni-release: releases/$(CRICNIRELEASE).tar.gz
|
||||||
|
@echo "$(WHALE) $@"
|
||||||
|
@cd releases && sha256sum $(CRICNIRELEASE).tar.gz >$(CRICNIRELEASE).tar.gz.sha256sum
|
||||||
|
|
||||||
clean: ## clean up binaries
|
clean: ## clean up binaries
|
||||||
@echo "$(WHALE) $@"
|
@echo "$(WHALE) $@"
|
||||||
@rm -f $(BINARIES)
|
@rm -f $(BINARIES)
|
||||||
|
@if [[ -d $(OUTPUTDIR) ]]; then sudo rm -rf $(OUTPUTDIR); fi
|
||||||
|
|
||||||
clean-test: ## clean up debris from previously failed tests
|
clean-test: ## clean up debris from previously failed tests
|
||||||
@echo "$(WHALE) $@"
|
@echo "$(WHALE) $@"
|
||||||
|
Loading…
Reference in New Issue
Block a user