# Copyright 2019 Google LLC # # 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 # # https://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. steps: - name: 'bash' args: ['bash', '-c', 'mkdir -p upstream/'] # Clone the upstream repos - name: 'gcr.io/cloud-builders/git' args: ['clone', 'https://github.com/google/gvisor.git'] dir: 'upstream' - name: 'gcr.io/cloud-builders/git' args: ['clone', 'https://gvisor.googlesource.com/community'] dir: 'upstream' # Build runsc - name: 'gcr.io/cloud-builders/bazel' args: - 'build' - '--show_timestamps' - '--test_output=errors' - '--keep_going' - '--verbose_failures' - 'runsc' dir: 'upstream/gvisor' # Build the compatibility doc generator tool - name: 'golang' env: ['GO111MODULE=on'] args: - 'go' - 'build' - '-o' - 'bin/generate-syscall-docs' - 'gvisor.dev/website/cmd/generate-syscall-docs' # Generate compatibility docs. - name: 'bash' args: - 'bash' - '-c' - > ./upstream/gvisor/bazel-bin/runsc/linux_amd64_pure_stripped/runsc help syscalls -o json | ./bin/generate-syscall-docs -out ./content/docs/user_guide/compatibility/ # Pull npm dependencies for scss and lint-md - name: 'gcr.io/cloud-builders/npm' args: ['ci'] # Copy App Engine app files. - name: 'gcr.io/gvisor-website/hugo:0.53' args: ["make", "app"] # Generate the website. - name: 'gcr.io/gvisor-website/hugo:0.53' env: ['HUGO_ENV=production'] args: ["hugo"] # Test Markdown for issues. - name: 'gcr.io/cloud-builders/npm' args: ['run', 'lint-md'] # Test the HTML for issues. - name: 'gcr.io/gvisor-website/html-proofer:3.10.2' args: - "htmlproofer" - "--disable-external" - "--check-html" - "public/static" # Deploy to App Engine only for master branch. - name: 'gcr.io/cloud-builders/gcloud' entrypoint: 'bash' args: - '-c' - > if [[ "$PROJECT_ID" == "gvisor-website" && "$BRANCH_NAME" == "master" ]]; then gcloud app deploy public/app.yaml; fi timeout: 900s