79 lines
2.4 KiB
YAML
79 lines
2.4 KiB
YAML
# 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
|
|
- 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 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
|