File tree Expand file tree Collapse file tree 3 files changed +48
-4
lines changed
Expand file tree Collapse file tree 3 files changed +48
-4
lines changed Original file line number Diff line number Diff line change 1+ name : Build and publish cfssl docker image
2+
3+ on :
4+ push :
5+ tags :
6+ - ' v*.*.*'
7+
8+ jobs :
9+ build-and-push-image :
10+ runs-on : ubuntu-latest
11+ permissions :
12+ contents : read
13+ packages : write
14+ steps :
15+ - name : Checkout repository
16+ uses : actions/checkout@v3
17+ with :
18+ fetch-depth : 0
19+
20+ - name : Get tag
21+ id : cfssl
22+ run : echo "::set-output name=tag::$(git describe --tags HEAD)"
23+
24+ - name : Set up QEMU
25+ uses : docker/setup-qemu-action@v2
26+
27+ - name : Set up Docker Buildx
28+ uses : docker/setup-buildx-action@v2
29+
30+ - name : Log in to the Docker hub
31+ uses : docker/login-action@v2
32+ with :
33+ username : ${{ secrets.DOCKERHUB_USERNAME }}
34+ password : ${{ secrets.DOCKERHUB_TOKEN }}
35+
36+ - name : Build and push
37+ uses : docker/build-push-action@v3
38+ with :
39+ context : .
40+ platforms : linux/amd64,linux/arm64,linux/s390x
41+ push : true
42+ tags : cfssl:${{ steps.cfssl.outputs.tag }}
Original file line number Diff line number Diff line change 1- FROM golang:1.16.15@sha256:35fa3cfd4ec01a520f6986535d8f70a5eeef2d40fb8019ff626da24989bdd4f1
1+ FROM --platform=${BUILDPLATFORM} golang:1.19.3@sha256:d388153691a825844ebb3586dd04d1c60a2215522cc445701424205dffc8a83e
2+
3+ ARG TARGETOS TARGETARCH
24
35WORKDIR /workdir
46COPY . /workdir
57
68RUN git clone https://github.com/cloudflare/cfssl_trust.git /etc/cfssl && \
79 make clean && \
8- make all && cp bin/* /usr/bin/
10+ GOOS=${TARGETOS} GOARCH=${TARGETARCH} make all && cp bin/* /usr/bin/
911
1012EXPOSE 8888
1113
Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ all: bin/cfssl bin/cfssl-bundle bin/cfssl-certinfo bin/cfssl-newkey bin/cfssl-sc
99
1010bin/% : $(shell find . -type f -name '* .go')
1111 @mkdir -p $(dir $@ )
12- go build -ldflags $(LDFLAGS ) -o $@ ./cmd/$(@F )
12+ GOOS= $( TARGETOS ) GOARCH= $( TARGETARCH ) go build -ldflags $(LDFLAGS ) -o $@ ./cmd/$(@F )
1313
1414.PHONY : install
1515install : install-cfssl install-cfssl-bundle install-cfssl-certinfo install-cfssl-newkey install-cfssl-scan install-cfssljson install-mkbundle install-multirootca
2525
2626bin/goose : $(shell find vendor -type f -name '* .go')
2727 @mkdir -p $(dir $@ )
28- go build -o $@ ./vendor/bitbucket.org/liamstask/goose/cmd/goose
28+ GOOS= $( TARGETOS ) GOARCH= $( TARGETARCH ) go build -o $@ ./vendor/bitbucket.org/liamstask/goose/cmd/goose
2929
3030.PHONY : clean
3131clean :
You can’t perform that action at this time.
0 commit comments