Build a cargo test image.
Some checks failed
semver Build semver has succeeded
cargo-fmt Build cargo-fmt has succeeded
cargo-test Build cargo-test has failed
build-cargo-fmt Build build-cargo-fmt has succeeded
build-cargo-test Build build-cargo-test has succeeded

We need this because the build fails missing crti.o.
This commit is contained in:
Tom Alexander 2023-07-12 23:14:22 -04:00
parent 8134a35368
commit a2267a5569
Signed by: talexander
GPG Key ID: D3A179C9A53C0EDE
3 changed files with 72 additions and 0 deletions

View File

@ -122,3 +122,37 @@ spec:
value: docker/cargo_fmt/ value: docker/cargo_fmt/
- name: path-to-dockerfile - name: path-to-dockerfile
value: docker/cargo_fmt/Dockerfile value: docker/cargo_fmt/Dockerfile
- name: build-cargo-test
agent: tekton-pipeline
branches:
- "^v[0-9]+\\.[0-9]+\\.[0-9]+$"
context: build-docker
max_concurrency: 1
# Override https-based url from lighthouse events.
clone_uri: "git@code.fizz.buzz:talexander/organic.git"
pipeline_run_spec:
serviceAccountName: build-bot
pipelineRef:
name: build-docker-pipeline
namespace: lighthouse
workspaces:
- name: git-source
volumeClaimTemplate:
spec:
storageClassName: "nfs-client"
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
subPath: git-source
- name: docker-credentials
secret:
secretName: harbor-plain
params:
- name: image-name
value: "harbor.fizz.buzz/private/cargo-test"
- name: path-to-image-context
value: docker/cargo_test/
- name: path-to-dockerfile
value: docker/cargo_test/Dockerfile

View File

@ -0,0 +1,3 @@
FROM harbor.fizz.buzz/dockerhub/rustlang/rust:nightly-alpine3.17
RUN apk add --no-cache musl-dev

View File

@ -0,0 +1,35 @@
IMAGE_NAME:=cargo-test
# REMOTE_REPO:=harbor.fizz.buzz/private
.PHONY: all
all: build push
.PHONY: build
build:
docker build -t $(IMAGE_NAME) -f Dockerfile ../
.PHONY: push
push:
ifdef REMOTE_REPO
docker tag $(IMAGE_NAME) $(REMOTE_REPO)/$(IMAGE_NAME)
docker push $(REMOTE_REPO)/$(IMAGE_NAME)
else
@echo "REMOTE_REPO not defined, not pushing to a remote repo."
endif
.PHONY: clean
clean:
docker rmi $(IMAGE_NAME)
ifdef REMOTE_REPO
docker rmi $(REMOTE_REPO)/$(IMAGE_NAME)
else
@echo "REMOTE_REPO not defined, not removing from remote repo."
endif
.PHONY: run
run:
docker run --rm -i -t $(IMAGE_NAME)
.PHONY: shell
shell:
docker run --rm -i -t --entrypoint /bin/bash $(IMAGE_NAME)