Skip to content

Commit 9e24ecd

Browse files
committed
Fix firecracker-clean target
entrypoint.sh assumes that the parameters are for "cargo build ...", which doesn't work with firecracker-clean target. Instead of fixing the shell script, this change makes the container itself more neutral by accepting any arbitrary commands. Signed-off-by: Kazuyoshi Kato <[email protected]>
1 parent 3a8f736 commit 9e24ecd

File tree

4 files changed

+13
-11
lines changed

4 files changed

+13
-11
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ jailer-*
55
vmlinux
66
root-drive.img
77
TestPID.img
8+
build/
9+

Makefile

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,12 @@ check-kvm:
4444
@test -w /dev/kvm || \
4545
(echo "In order to run firecracker, $(shell whoami) must have write permission to /dev/kvm"; false)
4646

47-
generate build clean:
47+
generate build clean::
4848
go $@ $(EXTRAGOARGS)
4949

50+
clean::
51+
rm -fr build/
52+
5053
distclean: clean
5154
rm -rf $(testdata_objects)
5255
docker volume rm -f $(CARGO_CACHE_VOLUME_NAME)
@@ -65,21 +68,25 @@ tools/firecracker-builder-stamp: tools/docker/Dockerfile
6568
docker build \
6669
-t localhost/$(FIRECRACKER_BUILDER_NAME):$(DOCKER_IMAGE_TAG) \
6770
-f tools/docker/Dockerfile \
68-
.
71+
tools/docker
6972
touch $@
7073

7174
.PHONY: test-images
7275
test-images: $(FIRECRACKER_BIN) $(JAILER_BIN)
7376

7477
$(FIRECRACKER_BIN) $(JAILER_BIN): tools/firecracker-builder-stamp
78+
mkdir -p build
7579
docker run --rm -it \
7680
--user $(UID):$(GID) \
77-
--volume $(CURDIR)/testdata:/artifacts \
81+
--volume $(CURDIR)/build:/artifacts \
7882
--volume $(CARGO_CACHE_VOLUME_NAME):/usr/local/cargo/registry \
7983
-e HOME=/tmp \
8084
--workdir=/firecracker \
8185
localhost/$(FIRECRACKER_BUILDER_NAME):$(DOCKER_IMAGE_TAG) \
82-
$(FIRECRACKER_TARGET)
86+
cargo build --release \
87+
--target-dir=/artifacts --target $(FIRECRACKER_TARGET)
88+
cp build/$(FIRECRACKER_TARGET)/release/firecracker $(FIRECRACKER_BIN)
89+
cp build/$(FIRECRACKER_TARGET)/release/jailer $(JAILER_BIN)
8390

8491
.PHONY: firecracker-clean
8592
firecracker-clean:

tools/docker/Dockerfile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,4 @@ RUN mkdir --mode=0777 --parents /usr/local/cargo/registry
2525
VOLUME /usr/local/cargo/registry
2626

2727
RUN git clone https://github.com/firecracker-microvm/firecracker.git
28-
COPY tools/docker/entrypoint.sh /usr/local/bin
2928
WORKDIR firecracker
30-
ENTRYPOINT ["entrypoint.sh"]

tools/docker/entrypoint.sh

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

0 commit comments

Comments
 (0)