infra: Restructure.

Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
This commit is contained in:
Tim 'mithro' Ansell 2019-01-11 20:44:19 -08:00
parent f61695585b
commit fc1f36f3c0
18 changed files with 585 additions and 19 deletions

View File

@ -0,0 +1,33 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-artix7-full/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
regex: "database/artix7/**"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-artix7-full"
}
env_vars {
key: "XRAY_SETTINGS"
value: "artix7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -0,0 +1,32 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-artix7-quick/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-artix7-quick"
}
env_vars {
key: "XRAY_SETTINGS"
value: "artix7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "quick"
}

View File

@ -0,0 +1,33 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-kintex7-full/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
regex: "database/kintex7/**"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-kintex7-full"
}
env_vars {
key: "XRAY_SETTINGS"
value: "kintex7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -0,0 +1,32 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-kintex7-quick/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-kintex7-quick"
}
env_vars {
key: "XRAY_SETTINGS"
value: "kintex7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "quick"
}

View File

@ -0,0 +1,33 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-zynq7-full/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
regex: "database/zynq7/**"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-zynq7-full"
}
env_vars {
key: "XRAY_SETTINGS"
value: "zynq7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}

View File

@ -0,0 +1,32 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-continuous-db-zynq7-quick/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "continuous"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-continuous-db-zynq7-quick"
}
env_vars {
key: "XRAY_SETTINGS"
value: "zynq7"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "quick"
}

View File

@ -1,11 +0,0 @@
build_file: "symbiflow-prjxray-artix7/.github/kokoro/full.sh"
timeout_mins: 4320
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
regex: "database/**"
}
}

View File

@ -1,6 +1,6 @@
build_file: "symbiflow-prjxray-artix7/.github/kokoro/quick.sh"
build_file: "symbiflow-prjxray-db/.github/kokoro/database.sh"
timeout_mins: 240
timeout_mins: 10
action {
define_artifacts {

View File

@ -1,7 +1,7 @@
#!/bin/bash
set -e
set -x
set -e
sudo apt-get update
sudo apt-get install -y \
@ -25,7 +25,27 @@ sudo apt-get install -y \
ls -l ~/.Xilinx
sudo chown -R $USER ~/.Xilinx
cd github/symbiflow-prjxray-artix7/
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
export
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
find .
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
echo $PWD
echo "----------------------------------------"
cd github/$KOKORO_DIR/
git fetch --tags || true
git describe --tags || true
@ -36,9 +56,9 @@ make build --output-sync=target --warn-undefined-variables
# Setup the Python environment
make env --output-sync=target --warn-undefined-variables
source settings/artix7.sh
source settings/$XRAY_SETTINGS.sh
(
export XILINX_LOCAL_USER_DATA=no
cd fuzzers
make --output-sync=target --warn-undefined-variables QUICK=y
make --output-sync=target --warn-undefined-variables
)

76
.github/kokoro/db-quick.sh vendored Executable file
View File

@ -0,0 +1,76 @@
#!/bin/bash
set -x
set -e
sudo apt-get update
sudo apt-get install -y \
bison \
build-essential \
ca-certificates \
clang-format \
cmake \
curl \
flex \
fontconfig \
git \
jq \
python \
python3 \
python3-dev \
python3-virtualenv \
python3-yaml \
virtualenv \
ls -l ~/.Xilinx
sudo chown -R $USER ~/.Xilinx
CORES=$(nproc --all)
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
export
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
find .
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
echo $PWD
echo "----------------------------------------"
cd github/$KOKORO_DIR/
git fetch --tags || true
git describe --tags || true
# Build the C++ tools
make build --output-sync=target --warn-undefined-variables
# Setup the Python environment
make env --output-sync=target --warn-undefined-variables
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
find .
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
source settings/$XRAY_SETTINGS.sh
(
export XILINX_LOCAL_USER_DATA=no
cd fuzzers
make --output-sync=target --warn-undefined-variables QUICK=y -j$CORES
)

91
.github/kokoro/kokoro-cfg.py vendored Executable file
View File

@ -0,0 +1,91 @@
#!/usr/bin/env python3
db_quick = """\
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-%(kokoro_type)s-db-%(part)s%(ext)s/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
env_vars {
key: "KOKORO_TYPE"
value: "%(kokoro_type)s"
}
env_vars {
key: "KOKORO_DIR"
value: "symbiflow-prjxray-%(kokoro_type)s-db-%(part)s%(ext)s"
}
env_vars {
key: "XRAY_SETTINGS"
value: "%(part)s"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "quick"
}
"""
db_full = """\
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-%(kokoro_type)s-db-%(part)s-full/.github/kokoro/db-full.sh"
timeout_mins: 4320
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
regex: "database/%(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-full"
}
env_vars {
key: "XRAY_SETTINGS"
value: "%(part)s"
}
env_vars {
key: "XRAY_BUILD_TYPE"
value: "full"
}
"""
for part in ['artix7', 'kintex7', 'zynq7']:
with open("continuous-db-%s-quick.cfg" % part, "w") as f:
f.write(
db_quick % {
'part': part,
'kokoro_type': 'continuous',
'ext': '-quick'
})
with open("continuous-db-%s-full.cfg" % part, "w") as f:
f.write(db_full % {'part': part, 'kokoro_type': 'continuous'})
with open("presubmit-db-%s.cfg" % part, "w") as f:
f.write(
db_quick % {
'part': part,
'kokoro_type': 'presubmit',
'ext': ''
})

32
.github/kokoro/presubmit-db-artix7.cfg vendored Normal file
View File

@ -0,0 +1,32 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-artix7/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
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: "quick"
}

32
.github/kokoro/presubmit-db-kintex7.cfg vendored Normal file
View File

@ -0,0 +1,32 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-kintex7/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
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: "quick"
}

32
.github/kokoro/presubmit-db-zynq7.cfg vendored Normal file
View File

@ -0,0 +1,32 @@
# Format: //devtools/kokoro/config/proto/build.proto
build_file: "symbiflow-prjxray-presubmit-db-zynq7/.github/kokoro/db-quick.sh"
timeout_mins: 180
action {
define_artifacts {
regex: "**/*result*.xml"
regex: "**/*.log"
}
}
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: "quick"
}

View File

@ -1 +0,0 @@
full.sh

19
.github/kokoro/tests.cfg vendored Normal file
View File

@ -0,0 +1,19 @@
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"
}

81
.github/kokoro/tests.sh vendored Executable file
View File

@ -0,0 +1,81 @@
#!/bin/bash
set -x
set -e
sudo apt-get update
sudo apt-get install -y \
bison \
build-essential \
ca-certificates \
clang-format \
cmake \
curl \
flex \
fontconfig \
git \
jq \
python \
python3 \
python3-dev \
python3-virtualenv \
python3-yaml \
virtualenv \
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
export
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
find .
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
echo $PWD
echo "----------------------------------------"
cd github/$KOKORO_DIR/
git fetch --tags || true
git describe --tags || true
# Build the C++ tools
make build --output-sync=target --warn-undefined-variables
# Setup the Python environment
make env --output-sync=target --warn-undefined-variables
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
find .
echo "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"
# Run the tests
make test --output-sync=target --warn-undefined-variables
echo "----------------------------------------"
echo "----------------------------------------"
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 "----------------------------------------"
echo "----------------------------------------"
echo "----------------------------------------"

View File

@ -34,7 +34,7 @@ test: test-py test-cpp
@true
test-py:
$(IN_ENV) PYTHONPATH="$(PWD):$(PWD)/third_party/fasm:$PYTHONPATH" py.test $(TEST_EXCLUDE) --doctest-modules --junitxml=build/py_test_results.xml
$(IN_ENV) which py.test; py.test $(TEST_EXCLUDE) --doctest-modules --junitxml=build/py_test_results.xml
test-cpp:
mkdir -p build