FROM golang:1.16.3-alpine

RUN apk update --no-cache && \
    apk add --no-cache ca-certificates git alpine-sdk bash sed && \
    mkdir -p /go/src/github.com/goreleaser && \
    cd /go/src/github.com/goreleaser && \
    git clone https://github.com/goreleaser/goreleaser.git && \
    cd goreleaser && \
    git checkout v0.141.0 && \
    go install . && \
    mkdir -p /go/src/github.com/mitchellh && \
    cd /go/src/github.com/mitchellh && \
    git clone https://github.com/mitchellh/golicense.git && \
    cd golicense && \
    git checkout v0.2.0 && \
    go install . && \
    mkdir -p /go/src/github.com/confluentinc/cli && \
    cd /go/src/github.com/confluentinc/cli

COPY . /go/src/github.com/confluentinc/cli/

COPY .netrc /root/.netrc
RUN chmod 600 /root/.netrc

RUN cd /go/src/github.com/confluentinc/cli && \
    make gorelease-alpine ; \
    for file in dist/ccloud/*linux*; do mv -v "$file" "${file/linux/alpine}"; done ; \
    for file in dist/confluent/*linux*; do mv -v "$file" "${file/linux/alpine}"; done ; \
    for file in dist/ccloud/*.txt; do mv -v "$file" "${file/checksums/checksums_alpine}"; done; \
    for file in dist/ccloud/*.txt; do sed -i 's/linux/alpine/g' $file ; done; \
    for file in dist/confluent/*.txt; do mv -v "$file" "${file/checksums/checksums_alpine}"; done; \
    for file in dist/confluent/*.txt; do sed -i 's/linux/alpine/g' $file ; done
