// 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" node { stage name: 'Build Docker Images', concurrency: 1 git url: 'https://github.com/google/oss-fuzz/' sh "docker build $dockerOptions --pull -t ossfuzz/base infra/base-images/base" sh "docker build $dockerOptions -t ossfuzz/base-clang infra/base-images/base-clang" sh "docker build $dockerOptions -t ossfuzz/base-libfuzzer infra/base-images/base-libfuzzer" stage name: 'Push Docker Images', concurrency: 1 // login into docker def username = readFile('/var/secrets/dockerhub-login/username') def password = readFile('/var/secrets/dockerhub-login/password') def email = readFile('/var/secrets/dockerhub-login/email') // #! is important here to disable default -x. sh "#!/bin/bash -e\ndocker info\ndocker version\ndocker login -u='${username}' -p='${password}' -e='${email}' https://index.docker.io/v1/" sh "docker push ossfuzz/base" sh "docker push ossfuzz/base-clang" sh "docker push ossfuzz/base-libfuzzer" }