#
# Copyright 2019-present Open Networking Foundation
# Copyright (c) 2019 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

FROM alpine:3.12 as onos-classic-helm-utils
RUN apk --no-cache add --update curl ca-certificates bash jq gettext sed

RUN curl -LO https://dl.k8s.io/release/v1.20.0/bin/linux/amd64/kubectl \
        && install kubectl -m 755 /usr/local/bin/ \
        && curl -kfsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 \
        && chmod 700 get_helm.sh \
        && VERIFY_CHECKSUM=false ./get_helm.sh \
        && curl -LO https://github.com/josephburnett/jd/releases/download/v1.4.0/jd-amd64-linux \
        && install jd-amd64-linux -m 755 /usr/local/bin/jd

COPY entrypoint.sh ./
ENTRYPOINT ["/bin/bash", "./entrypoint.sh"]
