graphql-engine/.circleci/cli-builder.dockerfile
Kali Vara Purushotham Santhati 4edc723d64 cli: codesign the cli binaries
closes https://github.com/hasura/graphql-engine/issues/7147

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2100
Co-authored-by: Aravind K P <8335904+scriptonist@users.noreply.github.com>
GitOrigin-RevId: 1816493b6cdf1b00b267ee8852c7b8a7c5fc3ee9
2021-12-02 10:21:30 +00:00

32 lines
1.8 KiB
Docker

FROM golang:1.16
ARG upx_version="3.96"
# install go dependencies
RUN go get github.com/mitchellh/gox \
&& go get github.com/tcnksm/ghr \
&& go get github.com/golangci/golangci-lint/cmd/golangci-lint@v1.41.1
# install UPX, netcat and gcloud cli
RUN apt-get update && apt-get install -y \
xz-utils netcat libpq5 postgresql-client jq zip build-essential pkg-config libssl-dev libcurl4-openssl-dev \
&& wget https://github.com/mtrojnar/osslsigncode/releases/download/2.2/osslsigncode-2.2.0.tar.gz \
&& tar -xzf osslsigncode-2.2.0.tar.gz \
&& cd osslsigncode-2.2.0 \
&& ./configure && make install && cd .. \
&& rm -rf osslsigncode* \
&& wget http://archive.ubuntu.com/ubuntu/pool/main/g/glibc/multiarch-support_2.27-3ubuntu1.4_amd64.deb \
&& apt-get install ./multiarch-support_2.27-3ubuntu1.4_amd64.deb \
&& curl -s https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list \
&& curl -s https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
&& echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list \
&& curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - \
&& apt-get update \
&& ACCEPT_EULA=Y apt-get install -y ca-certificates libkrb5-3 libpq5 libnuma1 unixodbc-dev msodbcsql17 apt-transport-https gnupg google-cloud-sdk hub \
&& curl -Lo /tmp/upx-${upx_version}.tar.xz https://github.com/upx/upx/releases/download/v${upx_version}/upx-${upx_version}-amd64_linux.tar.xz \
&& xz -d -c /tmp/upx-${upx_version}.tar.xz \
| tar -xOf - upx-${upx_version}-amd64_linux/upx > /bin/upx \
&& chmod a+x /bin/upx \
&& apt-get -y auto-remove \
&& rm -rf /var/lib/apt/lists/*