1#!/bin/bash 2# Copyright 2019 Google Inc. 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16################################################################################ 17 18set -o nounset 19set -o pipefail 20set -o errexit 21set -x 22 23# Compile kOps fuzzers 24( 25cd kops 26./tests/fuzz/build.sh 27) 28 29# Compile Kubernetes fuzzers 30cd $SRC/kubernetes 31 32function compile_fuzzer { 33 local pkg=$1 34 local function=$2 35 local fuzzer="${pkg}_${function}" 36 37 compile_go_fuzzer "k8s.io/kubernetes/test/fuzz/${pkg}" $function $fuzzer 38} 39 40compile_fuzzer "yaml" "FuzzDurationStrict" 41compile_fuzzer "yaml" "FuzzMicroTimeStrict" 42compile_fuzzer "yaml" "FuzzSigYaml" 43compile_fuzzer "yaml" "FuzzTimeStrict" 44compile_fuzzer "yaml" "FuzzYamlV2" 45compile_fuzzer "json" "FuzzStrictDecode" 46compile_fuzzer "json" "FuzzNonStrictDecode" 47