remove kokoro related scripts and assets

Co-authored-by: Tim 'mithro' Ansell <tansell@google.com>
Signed-off-by: Unai Martinez-Corral <umartinezcorral@antmicro.com>
This commit is contained in:
Unai Martinez-Corral 2022-05-24 20:55:49 +02:00
parent 0b65466dd8
commit f62c2d8cdd
23 changed files with 1 additions and 1231 deletions

View File

@ -1,44 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-artix7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/artix7/**"
strip_prefix: "github/symbiflow-prjxray-continuous-db-artix7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-artix7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "artix7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -1,53 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-kintex7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/kintex7/**"
strip_prefix: "github/symbiflow-prjxray-continuous-db-kintex7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-kintex7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "kintex7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}
before_action {
fetch_keystore {
keystore_resource {
keystore_config_id: 74045
keyname: "foss-fpga-tools_xilinx-license"
}
}
}

View File

@ -1,44 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-spartan7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/spartan7/**"
strip_prefix: "github/symbiflow-prjxray-continuous-db-spartan7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-spartan7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "spartan7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -1,44 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-zynq7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/zynq7/**"
strip_prefix: "github/symbiflow-prjxray-continuous-db-zynq7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-zynq7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "zynq7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -1,16 +0,0 @@
build_file: "symbiflow-prjxray-db/.github/kokoro/database.sh"
timeout_mins: 10
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/build/*.log"
regex: "**/logs/*.log"
regex: "**/logs/*.xml"
regex: "**/build/**"
regex: "**/diff.*"
regex: "**/database/**"
strip_prefix: "github/symbiflow-prjxray-db/"
}
}

View File

@ -1,216 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
cd github/$KOKORO_DIR/
source ./.github/kokoro/steps/hostcheck.sh
source ./.github/kokoro/steps/hostsetup.sh
source ./.github/kokoro/steps/hostinfo.sh
source ./.github/kokoro/steps/git.sh
source ./.github/kokoro/steps/xilinx.sh
source ./.github/kokoro/steps/prjxray-env.sh
echo
echo "========================================"
echo "Downloading current database"
echo "----------------------------------------"
(
script --return --flush --command "./download-latest-db.sh" -
)
echo "----------------------------------------"
echo
echo "========================================"
echo "Preparing database"
echo "----------------------------------------"
(
make db-prepare-${XRAY_SETTINGS}
)
echo "----------------------------------------"
source settings/$XRAY_SETTINGS.sh
echo
echo "========================================"
echo "Cleaning out current database"
echo "----------------------------------------"
(
cd database
make clean-${XRAY_SETTINGS}-db
)
echo "----------------------------------------"
echo
echo "========================================"
echo "Running Database build"
echo "----------------------------------------"
(
# Output which fuzzers we are going to run
echo "make --dry-run"
make --dry-run db-${XRAY_SETTINGS}-all
echo "----------------------------------------"
# Run the fuzzers
set -x +e
tmp=`mktemp`
script --return --flush --command "make -j $CORES MAX_VIVADO_PROCESS=$MAX_VIVADO_PROCESS db-${XRAY_SETTINGS}-all" $tmp
DATABASE_RET=$?
set +x -e
if [[ $DATABASE_RET != 0 ]] ; then
# Collect the Vivado logs into one tgz archive
echo "Packing failing test cases"
grep "recipe for target" $tmp | awk 'match($0,/recipe for target.*'\''(.*)\/run\..*ok'\''/,res) {print "fuzzers/" res[1]}' | xargs tar -zcf fuzzers/fails.tgz
echo "----------------------------------------"
echo "A failure occurred during Database build."
echo "----------------------------------------"
rm $tmp
echo "========================================"
echo " Disk space in failure path"
echo "----------------------------------------"
du -sh
exit $DATABASE_RET
fi
)
echo "----------------------------------------"
# Format the database
make db-format-${XRAY_SETTINGS}
# Update the database/Info.md file
make db-info
# Output if the database has differences
echo
echo "========================================"
echo " Database Differences"
echo "----------------------------------------"
(
cd database
# Update the index with any new files
git add \
--verbose \
--all \
--ignore-errors \
.
# Output what git status
echo
echo "----------------------------------------"
echo " Database Status"
echo "----------------------------------------"
git status
echo "----------------------------------------"
# Output a summary of how the files have changed
echo
echo "----------------------------------------"
echo " Database Diff Summary"
echo "----------------------------------------"
git diff --stat --irreversible-delete --find-renames --find-copies --ignore-all-space origin/master
# Save the diff to be uploaded as an artifact
echo
echo "----------------------------------------"
echo " Saving diff output"
echo "----------------------------------------"
# Patch file
git diff \
--patch-with-stat --no-color --irreversible-delete --find-renames --find-copies origin/master \
> diff.patch
MAX_DIFF_LINES=50000
DIFF_LINES="$(wc -l diff.patch | sed -e's/ .*$//')"
if [ $DIFF_LINES -gt $MAX_DIFF_LINES ]; then
echo
echo "----------------------------------------"
echo " Database Diff"
echo "----------------------------------------"
echo "diff has $DIFF_LINES lines which is too large to display!"
echo
echo "----------------------------------------"
echo " Generating pretty diff output"
echo "----------------------------------------"
echo "diff has $DIFF_LINES lines which is too large for HTML output!"
else
# Output the actually diff
echo
echo "----------------------------------------"
echo " Database Diff"
echo "----------------------------------------"
git diff --color --irreversible-delete --find-renames --find-copies --ignore-all-space origin/master
echo
echo "----------------------------------------"
echo " Generating pretty diff output"
echo "----------------------------------------"
(
# Allow the diff2html to fail.
set +e
# Pretty HTML file version
diff2html --summary=open --file diff.html --format html \
-- \
--irreversible-delete --find-renames --find-copies \
--ignore-all-space origin/master || true
# Programmatic JSON version
diff2html --file diff.json --format json \
-- \
--irreversible-delete --find-renames --find-copies \
--ignore-all-space origin/master || true
) || true
fi
)
echo "----------------------------------------"
# Check the database and fail if it is broken.
set -x +e
make db-check-${XRAY_SETTINGS}
CHECK_RET=$?
set +x -e
echo
echo "========================================"
echo " Testing HTML generation"
echo "----------------------------------------"
(
cd htmlgen
source htmlgen.sh $XRAY_SETTINGS
)
# If we get here, then all the fuzzers completed fine. Hence we are
# going to assume we don't want to keep all the build / logs / etc (as
# they are quite large). Thus do a clean to get rid of them.
echo
echo "========================================"
echo " Cleaning up after success"
echo "----------------------------------------"
(
cd fuzzers
echo
echo "Cleaning up so CI doesn't save all the excess data."
make clean_fuzzers
make clean_piplists
)
echo "----------------------------------------"
echo "========================================"
echo " Final disk space after cleanup"
echo "----------------------------------------"
du -sh
exit $CHECK_RET

View File

@ -1,57 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
cd github/$KOKORO_DIR/
source ./.github/kokoro/steps/hostcheck.sh
source ./.github/kokoro/steps/hostsetup.sh
source ./.github/kokoro/steps/hostinfo.sh
source ./.github/kokoro/steps/git.sh
source ./.github/kokoro/steps/xilinx.sh
source ./.github/kokoro/steps/prjxray-env.sh
echo
echo "========================================"
echo "Downloading current database"
echo "----------------------------------------"
(
./download-latest-db.sh
)
echo "----------------------------------------"
echo
echo "========================================"
echo "Preparing database"
echo "----------------------------------------"
(
make db-prepare-${XRAY_SETTINGS}
)
echo "----------------------------------------"
source settings/$XRAY_SETTINGS.sh
echo
echo "========================================"
echo "Running quick fuzzer sanity check"
echo "----------------------------------------"
(
cd fuzzers
echo "make --dry-run"
make --dry-run
echo "----------------------------------------"
export MAX_VIVADO_PROCESS=$CORES
set -x
script --return --flush --command "make -j $CORES MAX_VIVADO_PROCESS=$CORES QUICK=y" -
set +x
)
echo "----------------------------------------"

View File

@ -1,80 +0,0 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
db_full = """\
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-%(kokoro_type)s-db-%(part)s/.github/kokoro/%(script)s"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/%(part)s/**"
strip_prefix: "github/symbiflow-prjxray-%(kokoro_type)s-db-%(part)s/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "%(kokoro_type)s"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-%(kokoro_type)s-db-%(part)s"
}
env_vars {
key: "XRAY_SETTINGS"
value: "%(part)s"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}
"""
for part in ['artix7', 'kintex7', 'zynq7', 'spartan7']:
if part != 'spartan7':
script = 'db-full.sh'
else:
# Emit dummy script for spartan7 for now until it is working.
script = 'nothing.sh'
with open("continuous-db-%s.cfg" % part, "w") as f:
f.write(
db_full % {
'part': part,
'kokoro_type': 'continuous',
'script': script,
})
with open("presubmit-db-%s.cfg" % part, "w") as f:
f.write(
db_full % {
'part': part,
'kokoro_type': 'presubmit',
'script': script,
})

View File

@ -1,10 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
echo "Doing nothing!"
true

View File

@ -1,44 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-artix7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/artix7/**"
strip_prefix: "github/symbiflow-prjxray-presubmit-db-artix7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "presubmit"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-presubmit-db-artix7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "artix7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -1,53 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-kintex7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/kintex7/**"
strip_prefix: "github/symbiflow-prjxray-presubmit-db-kintex7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "presubmit"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-presubmit-db-kintex7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "kintex7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}
before_action {
fetch_keystore {
keystore_resource {
keystore_config_id: 74045
keyname: "foss-fpga-tools_xilinx-license"
}
}
}

View File

@ -1,44 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-spartan7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/spartan7/**"
strip_prefix: "github/symbiflow-prjxray-presubmit-db-spartan7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "presubmit"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-presubmit-db-spartan7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "spartan7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -1,44 +0,0 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-zynq7/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
# File types
regex: "**/diff.html"
regex: "**/diff.json"
regex: "**/diff.patch"
regex: "**/*result*.xml"
regex: "**/*sponge_log.xml"
regex: "**/fuzzers/*.tgz"
# Whole directories
# regex: "**/build/**" - Currently kokoro dies on number of artifacts.
regex: "**/build/*.log"
regex: "**/logs_*/**"
# The database
regex: "**/database/zynq7/**"
strip_prefix: "github/symbiflow-prjxray-presubmit-db-zynq7/"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "presubmit"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-presubmit-db-zynq7"
}
env_vars {
key: "XRAY_SETTINGS"
value: "zynq7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -1,34 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
echo
echo "========================================"
echo "Git log"
echo "----------------------------------------"
echo "----------------------------------------"
echo
echo "========================================"
echo "Git fetching tags"
echo "----------------------------------------"
git fetch --tags || true
echo "----------------------------------------"
echo
echo "========================================"
echo "Git version info"
echo "----------------------------------------"
git log -n1
echo "----------------------------------------"
git describe --tags || true
echo "----------------------------------------"
git describe --tags --always || true
echo "----------------------------------------"

View File

@ -1,94 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2021 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
echo
echo "========================================"
echo "Waiting for storage"
echo "----------------------------------------"
STORAGE_CHECK_ATTEMPTS=1
while true; do
# Check that tmpfs has been mounted correctly.
set -x +e
mount | grep /tmpfs
MOUNT_RET=$?
set +x -e
if [[ $MOUNT_RET == 0 ]] ; then
break;
else
echo "----------------------------------------"
echo "Error: No storage is mounted on /tmpfs."
echo "----------------------------------------"
echo ""
fi
# Dump debugging information.
echo "========================================"
echo "Mount output"
echo "----------------------------------------"
mount
echo "========================================"
echo "Dmesg dump"
echo "----------------------------------------"
dmesg
echo "========================================"
echo "Partition information"
echo "----------------------------------------"
echo ""
echo "partprobe"
echo "----------------------------------------"
partprobe -s
echo ""
echo "cat /proc/partitions"
echo "----------------------------------------"
cat /proc/partitions
echo ""
echo "cat /etc/fstab"
echo "----------------------------------------"
cat /etc/fstab
echo ""
echo "cat /etc/mtab"
echo "----------------------------------------"
cat /etc/mtab
echo ""
echo "lsblk"
echo "----------------------------------------"
lsblk --list --output 'NAME,KNAME,FSTYPE,MOUNTPOINT,LABEL,UUID,PARTTYPE,PARTLABEL,PARTUUID'
echo ""
echo "sfdisk"
echo "----------------------------------------"
sudo sfdisk --list
echo ""
echo "systemctl | grep mount"
echo "----------------------------------------"
systemctl | grep mount
echo ""
echo "systemctl | grep dev"
echo "----------------------------------------"
systemctl | grep dev
# Fail if we have waited to long.
if [[ $STORAGE_CHECK_ATTEMPTS -gt 10 ]]; then
echo "=============================="
echo " ERROR: Storage check timeout"
echo "=============================="
exit $MOUNT_RET
else
STORAGE_CHECK_ATTEMPTS=$(( $STORAGE_CHECK_ATTEMPTS + 1 ))
fi
# Wait for a bit before rechecking.
SLEEP_FOR=$(( STORAGE_CHECK_ATTEMPTS * 10 ))
echo ""
echo "Sleeping for $SLEEP_FOR seconds before trying again..."
sleep $SLEEP_FOR
done

View File

@ -1,45 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
echo
echo "========================================"
echo "Host Environment"
echo "----------------------------------------"
export
echo "----------------------------------------"
echo
echo "========================================"
echo "Host CPU"
echo "----------------------------------------"
export CORES=$(nproc --all)
echo "Cores: $CORES"
echo
echo "Memory"
echo "----------------------------------------"
cat /proc/meminfo
echo "----------------------------------------"
export MEM_GB=$(($(awk '/MemTotal/ {print $2}' /proc/meminfo)/(1024*1024)))
echo "Total Memory (GB): $MEM_GB"
# Approx memory per grid process
export MEM_PER_RUN=8
export MAX_GRID_CPU=$(($MEM_GB/$MEM_PER_RUN))
export MAX_VIVADO_PROCESS=$(($MEM_GB/$MEM_PER_RUN))
echo
echo "========================================"
echo "Host files"
echo "----------------------------------------"
echo $PWD
echo "----------------------------------------"
find . | sort
echo "----------------------------------------"

View File

@ -1,123 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
echo
echo "========================================"
echo "Removing older packages"
echo "----------------------------------------"
sudo apt-get remove -y cmake
echo "----------------------------------------"
echo
echo "========================================"
echo "Update the CA certificates"
echo "----------------------------------------"
sudo apt-get install -y ca-certificates
echo "----------------------------------------"
sudo update-ca-certificates
echo "----------------------------------------"
echo
echo "========================================"
echo "Remove the expire letsencrypt.org cert "
echo "----------------------------------------"
wget https://helloworld.letsencrypt.org/ || true
echo "----------------------------------------"
sudo rm /usr/share/ca-certificates/mozilla/DST_Root_CA_X3.crt
echo "----------------------------------------"
sudo update-ca-certificates
echo "----------------------------------------"
wget https://helloworld.letsencrypt.org/ || true
echo "----------------------------------------"
echo
echo "========================================"
echo "Host adding PPAs"
echo "----------------------------------------"
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo apt-key add -
sudo apt-add-repository 'deb https://apt.kitware.com/ubuntu/ xenial main'
sudo add-apt-repository ppa:deadsnakes/ppa
echo "----------------------------------------"
echo
echo "========================================"
echo "Host updating packages"
echo "----------------------------------------"
sudo apt-get update
echo "----------------------------------------"
echo
echo "========================================"
echo "Host remove packages"
echo "----------------------------------------"
sudo apt-get remove -y \
python-pytest \
sudo apt-get autoremove -y
echo "----------------------------------------"
echo
echo "========================================"
echo "Host install packages"
echo "----------------------------------------"
sudo apt-get install -y \
bash \
bison \
build-essential \
ca-certificates \
clang-format \
cmake \
colordiff \
coreutils \
curl \
flex \
fontconfig \
git \
jq \
lsb \
nodejs \
psmisc \
python3 \
python3-dev \
python3-venv
echo "========================================"
echo "Enter virtual env for python 3.8"
echo "----------------------------------------"
python3 -mvenv startup_python
source startup_python/bin/activate
which python
python --version
which python3
python3 --version
echo "----------------------------------------"
(
cd /tmp
# Upgrade pstree to support the -T flag.
wget https://storage.googleapis.com/prjxray-deps-debs/psmisc_23.2-1_amd64.deb
sudo dpkg --install psmisc_23.2-1_amd64.deb
which pstree
pstree --help || true
)
echo "----------------------------------------"
echo
echo "========================================"
echo "Getting diff2html to produce pretty database diffs"
echo "----------------------------------------"
(
sudo npm install -g diff2html-cli
)

View File

@ -1,23 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
echo
echo "========================================"
echo "Build the C++ tools"
echo "----------------------------------------"
make build --output-sync=target --warn-undefined-variables -j $CORES
echo "----------------------------------------"
echo
echo "========================================"
echo "Setup the Python environment"
echo "----------------------------------------"
make env --output-sync=target --warn-undefined-variables

View File

@ -1,103 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
echo
echo "========================================"
echo "Xilinx proprietary toolchain setup."
echo "----------------------------------------"
echo
echo "Fix up the Xilinx configuration directory"
echo "----------------------------------------"
ls -l ~/.Xilinx
sudo chown -R $USER ~/.Xilinx
export XILINX_LOCAL_USER_DATA=no
echo "----------------------------------------"
echo
echo "Select Xilinx Vivado version"
echo "----------------------------------------"
(
set -e
cd /opt
if [ x"$XRAY_SETTINGS" = x"kintex7" ]; then
echo "Using Xilinx Vivado Design Edition for $XRAY_SETTINGS build."
echo
echo "Making /opt mount rw"
sudo mount -o remount,rw /opt
echo
echo "Replacing /opt/Xilinx link."
sudo rm -f Xilinx
sudo ln -s Xilinx-design Xilinx
ls -l Xilinx
echo
echo "Making /opt mount ro"
sudo mount -o remount,ro /opt
echo
else
echo "Using Xilinx Vivado WebPack Edition for $XRAY_SETTINGS build."
ls -l Xilinx
fi
)
echo "----------------------------------------"
echo
echo "List /opt directory"
echo "----------------------------------------"
ls -l /opt
echo "----------------------------------------"
# Create a tunnel to the server which has the Xilinx licenses and port forward
# them.
echo
echo "Setting up license server tunnel"
echo "----------------------------------------"
LICENSE_TUNNEL_KEY=$KOKORO_KEYSTORE_DIR/74045_foss-fpga-tools_xilinx-license
echo "SSH Key for license server tunnel should be found @ $LICENSE_TUNNEL_KEY"
ls -l $LICENSE_TUNNEL_KEY || true
if [ -f $LICENSE_TUNNEL_KEY ]; then
echo
echo "Xilinx license server ssh key found, setting up tunnel"
chmod 600 $LICENSE_TUNNEL_KEY
cat <<EOF > ssh_config
Host xilinx-license
HostName 10.128.15.194
User kokoro
IdentityFile $LICENSE_TUNNEL_KEY
StrictHostKeyChecking no
ExitOnForwardFailure yes
# SessionType none
LocalForward localhost:2100 172.18.0.3:2100
LocalForward localhost:2101 172.18.0.3:2101
EOF
echo "127.0.0.1 xlic.int" | sudo tee -a /etc/hosts
export GIT_SSH_COMMAND="ssh -F $(pwd)/ssh_config -f -N"
${GIT_SSH_COMMAND} xilinx-license
(
source /opt/Xilinx/Vivado/2017.2/settings64.sh
export PATH=/opt/Xilinx/Vivado/2017.2/bin/unwrapped/lnx64.o:$PATH
echo "-----"
lmutil lmstat -a -c 2100@localhost -i || true
echo "-----"
)
export XILINXD_LICENSE_FILE=2100@localhost
else
echo
echo "**No** Xilinx license server ssh key found."
fi
echo "----------------------------------------"

View File

@ -1,19 +0,0 @@
build_file: "symbiflow-prjxray-tests/.github/kokoro/tests.sh"
timeout_mins: 10
action {
define_artifacts {
regex: "**/*.log"
regex: "**/*sponge_log.xml"
regex: "**/build/**/*.xml"
regex: "**/build/*.xml"
regex: "*result*.xml"
strip_prefix: "github/symbiflow-prjxray-tests/"
}
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-tests"
}

View File

@ -1,40 +0,0 @@
#!/bin/bash
# Copyright (C) 2017-2020 The Project X-Ray Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
set -e
cd github/$KOKORO_DIR/
source ./.github/kokoro/steps/hostsetup.sh
source ./.github/kokoro/steps/hostinfo.sh
source ./.github/kokoro/steps/git.sh
source ./.github/kokoro/steps/prjxray-env.sh
echo
echo "========================================"
echo "Running tests"
echo "----------------------------------------"
(
make test --output-sync=target --warn-undefined-variables
)
echo "----------------------------------------"
echo
echo "========================================"
echo "Copying tests logs"
echo "----------------------------------------"
(
cat build/*test_results.xml
mkdir build/py
cp build/py_test_results.xml build/py/sponge_log.xml
mkdir build/cpp
cp build/cpp_test_results.xml build/cpp/sponge_log.xml
)
echo "----------------------------------------"

View File

@ -63,7 +63,7 @@ test-cpp:
cd build && cmake -DPRJXRAY_BUILD_TESTING=ON ..
cd build && $(MAKE) -s
cd build && ctest --no-compress-output -T Test -C RelWithDebInfo --output-on-failure
xsltproc .github/kokoro/ctest2junit.xsl build/Testing/*/Test.xml > build/cpp_test_results.xml
xsltproc .github/ctest2junit.xsl build/Testing/*/Test.xml > build/cpp_test_results.xml
test-tools:
$(MAKE) -f Makefile.tools_tests