#!/bin/bash

if [ -n "$DEBUG" ]; then
  set -x
fi

set -o errexit
set -o nounset
set -o pipefail

ROOT_DIR=$(cd $(dirname "${BASH_SOURCE}") && pwd -P)/../../
COMPONENTS_DIR=$ROOT_DIR/components

# include protoc bash functions
source $ROOT_DIR/scripts/protoc-generator.sh

install_dependencies
go_protoc $COMPONENTS_DIR
typescript_protoc $COMPONENTS_DIR

# cd go
pushd go

# source mode does not always work for gRPC: see https://github.com/golang/mock/pull/163
mockgen \
    -package mock \
    github.com/gitpod-io/gitpod/ws-manager/api WorkspaceManager_SubscribeServer,WorkspaceManagerServer,WorkspaceManager_SubscribeClient,WorkspaceManagerClient > mock/mock.go

# return to previous directory
popd

pushd typescript/src
node $COMPONENTS_DIR/content-service-api/typescript/patch-grpc-js.ts
popd

update_license
