mirror of https://github.com/google/oss-fuzz.git
51 lines
1.9 KiB
Groovy
51 lines
1.9 KiB
Groovy
// Copyright 2016 Google Inc.
|
|
//
|
|
// 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.
|
|
//
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Jenkins build script for base images.
|
|
|
|
def dockerOptions="--no-cache"
|
|
|
|
// Flattens all intermediate layers of the image.
|
|
// Usefull when image has lots of deleted files.
|
|
def flattenDockerImage(image) {
|
|
def containerName = image.replaceAll('/', '_') + "-tmp";
|
|
sh "echo ${image} ${containerName}"
|
|
sh "docker rm -f ${containerName} || true"
|
|
sh "docker run --name ${containerName} ${image} /bin/true"
|
|
sh "docker export ${containerName} | docker import - ${image}"
|
|
}
|
|
|
|
node {
|
|
git url: 'https://github.com/google/oss-fuzz/'
|
|
|
|
stage name: 'Build ossfuzz/base', concurrency: 1
|
|
sh "docker build $dockerOptions --pull -t ossfuzz/base infra/base-images/base"
|
|
|
|
stage name: 'Build ossfuzz/base-clang', concurrency: 1
|
|
sh "docker build $dockerOptions -t ossfuzz/base-clang infra/base-images/base-clang"
|
|
|
|
// flattenDockerImage("ossfuzz/base-clang")
|
|
|
|
stage name: 'Build ossfuzz/base-libfuzzer', concurrency: 1
|
|
sh "docker build $dockerOptions -t ossfuzz/base-libfuzzer infra/base-images/base-libfuzzer"
|
|
|
|
stage name: 'Build ossfuzz/libfuzzer-runner', concurrency: 1
|
|
sh "docker build $dockerOptions -t ossfuzz/libfuzzer-runner infra/base-images/libfuzzer-runner"
|
|
|
|
// Show docker images tree
|
|
sh "docker run --rm -v /var/run/docker.sock:/var/run/docker.sock nate/dockviz images -t"
|
|
}
|