From 49a4b088d80c33beb37f34cb4ba9cb4447a1a946 Mon Sep 17 00:00:00 2001 From: Tim 'mithro' Ansell Date: Mon, 25 Apr 2022 10:05:17 -0700 Subject: [PATCH 01/19] Setup connection to Xilinx license server. Signed-off-by: Tim 'mithro' Ansell --- .github/workflows/Automerge.yml | 2 + .github/workflows/Pipeline.yml | 30 ++++++- .github/workflows/scripts/xilinx.sh | 117 ++++++++++++++++++++++++++++ 3 files changed, 147 insertions(+), 2 deletions(-) create mode 100755 .github/workflows/scripts/xilinx.sh diff --git a/.github/workflows/Automerge.yml b/.github/workflows/Automerge.yml index c835ba6d..7acc0e3b 100644 --- a/.github/workflows/Automerge.yml +++ b/.github/workflows/Automerge.yml @@ -17,6 +17,8 @@ jobs: Pipeline: if: ${{ !(github.event_name != 'pull_request' && github.actor == 'dependabot[bot]') }} uses: ./.github/workflows/Pipeline.yml + secrets: + LICENSE_TUNNEL_KEY_DATA: ${{ secrets.LICENSE_TUNNEL_KEY_DATA }} Automerge: diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index d2aff1eb..c4eef26a 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -2,6 +2,9 @@ name: Pipeline on: workflow_call: + secrets: + LICENSE_TUNNEL_KEY_DATA: + required: false jobs: @@ -20,6 +23,7 @@ jobs: ALLOW_ROOT: true GHA_EXTERNAL_DISK: "tools" XILINX_LOCAL_USER_DATA: "no" + LICENSE_TUNNEL_KEY_DATA: ${{ secrets.LICENSE_TUNNEL_KEY_DATA }} steps: @@ -31,8 +35,30 @@ jobs: run: | DEBIAN_FRONTEND=noninteractive apt update -qq DEBIAN_FRONTEND=noninteractive apt install -qq -y \ - bash bison build-essential ca-certificates clang-format cmake psmisc \ - colordiff coreutils git flex python3 python3-dev python3-venv xsltproc libtinfo5 + bash \ + bison \ + build-essential \ + ca-certificates \ + clang-format \ + cmake \ + colordiff \ + coreutils \ + flex \ + git \ + iproute2 \ + iputils-ping \ + libtinfo5 \ + netcat-openbsd \ + psmisc \ + python3 \ + python3-dev \ + python3-venv \ + xsltproc + + - name: Xilinx Setup + env: + LICENSE_TUNNEL_KEY_DATA: ${{ secrets.LICENSE_TUNNEL_KEY_DATA }} + run: .github/workflows/scripts/xilinx.sh - name: Build run: make build --output-sync=target --warn-undefined-variables -j$(nproc) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh new file mode 100755 index 00000000..4cbe5d9b --- /dev/null +++ b/.github/workflows/scripts/xilinx.sh @@ -0,0 +1,117 @@ +#!/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 "----------------------------------------" +mkdir -p ~/.Xilinx +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 "----------------------------------------" +if [ ! -z "$LICENSE_TUNNEL_KEY_DATA" ]; then + LICENSE_TUNNEL_KEY=~/.Xilinx/xilinx-tunnel-key + LICENSE_TUNNEL_HOST=10.138.0.2 + echo $LICENSE_TUNNEL_KEY_DATA | base64 --decode > $LICENSE_TUNNEL_KEY + + echo "SSH Key for license server tunnel should be found @ $LICENSE_TUNNEL_KEY" + ls -l $LICENSE_TUNNEL_KEY || true + + echo + echo "Xilinx license server ssh key found, setting up tunnel" + echo + + echo + echo "Checking $LICENSE_TUNNEL_HOST is up" + ip addr show + echo "ping: ---------" + ping -c 5 $LICENSE_TUNNEL_HOST + echo "port: ---------" + nc -zv $LICENSE_TUNNEL_HOST 22 + echo "---------" + echo + + chmod 600 $LICENSE_TUNNEL_KEY + cat < ssh_config +Host xilinx-license + HostName $LICENSE_TUNNEL_HOST + 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 "----------------------------------------" From 2466432059129c10ec89d6c8cdf8b06480eeae70 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 15:34:12 +0200 Subject: [PATCH 02/19] CI: xilinx: update license server IP Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 4cbe5d9b..8e277898 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -63,7 +63,7 @@ echo "Setting up license server tunnel" echo "----------------------------------------" if [ ! -z "$LICENSE_TUNNEL_KEY_DATA" ]; then LICENSE_TUNNEL_KEY=~/.Xilinx/xilinx-tunnel-key - LICENSE_TUNNEL_HOST=10.138.0.2 + LICENSE_TUNNEL_HOST=10.138.0.3 echo $LICENSE_TUNNEL_KEY_DATA | base64 --decode > $LICENSE_TUNNEL_KEY echo "SSH Key for license server tunnel should be found @ $LICENSE_TUNNEL_KEY" From 49adf6f4479035415a48585b35e287f1f8b739bd Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 15:38:04 +0200 Subject: [PATCH 03/19] CI: install sudo Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index c4eef26a..566b6de1 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -53,7 +53,8 @@ jobs: python3 \ python3-dev \ python3-venv \ - xsltproc + xsltproc \ + sudo \ - name: Xilinx Setup env: From c2d27fe5ee582476be0403bd97f4e6c2c738a32f Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 17:38:44 +0200 Subject: [PATCH 04/19] CI: xilinx: create .ssh dir Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 8e277898..8849532c 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -17,6 +17,7 @@ echo "Fix up the Xilinx configuration directory" echo "----------------------------------------" mkdir -p ~/.Xilinx ls -l ~/.Xilinx +mkdir ~/.ssh #sudo chown -R $USER ~/.Xilinx export XILINX_LOCAL_USER_DATA=no From 98d29fd9bf37e2f591120cf92ae1ad571cb02dd8 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 18:20:31 +0200 Subject: [PATCH 05/19] CI: xilinx: create symlink to vivado Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 8849532c..762e0a0e 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -32,18 +32,11 @@ echo "----------------------------------------" 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 + ln -s /mnt/aux/Xilinx-design /opt/Xilinx ls -l Xilinx echo - echo "Making /opt mount ro" - sudo mount -o remount,ro /opt - echo else + ln -s /mnt/aux/Xilinx /opt/Xilinx echo "Using Xilinx Vivado WebPack Edition for $XRAY_SETTINGS build." ls -l Xilinx fi From fc8db2b82120cca76251336a92a2b32d66a25916 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 18:33:29 +0200 Subject: [PATCH 06/19] CI: xilinx: symlink elf loader Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 762e0a0e..22faf100 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -19,6 +19,10 @@ mkdir -p ~/.Xilinx ls -l ~/.Xilinx mkdir ~/.ssh #sudo chown -R $USER ~/.Xilinx +echo +echo "Fixing loader to be able to run lmutils" +echo "----------------------------------------" +ln -s /lib64/ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3 export XILINX_LOCAL_USER_DATA=no echo "----------------------------------------" From 5eab9c5d5a759e4006d025e422d248f47c79c6f5 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 19:01:44 +0200 Subject: [PATCH 07/19] CI: xilinx: move ssh to background Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 22faf100..70dc71ec 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -96,7 +96,7 @@ 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 + ${GIT_SSH_COMMAND} xilinx-license & ( source /opt/Xilinx/Vivado/2017.2/settings64.sh From 14a9f2aa45fbb3b7a638241c70676f48839478b3 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Tue, 26 Apr 2022 21:28:00 +0200 Subject: [PATCH 08/19] CI: xilinx: disown ssh Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 70dc71ec..e61532c5 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -97,6 +97,7 @@ EOF export GIT_SSH_COMMAND="ssh -F $(pwd)/ssh_config -f -N" ${GIT_SSH_COMMAND} xilinx-license & + disown $! ( source /opt/Xilinx/Vivado/2017.2/settings64.sh From 64ce44eccb8f4d1b4b7fee41437ea892ec7ea7a3 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Thu, 12 May 2022 16:11:17 +0200 Subject: [PATCH 09/19] CI: use utility container for SSH forwarding Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 4 ++- .github/workflows/scripts/xilinx.sh | 49 ++++------------------------- 2 files changed, 9 insertions(+), 44 deletions(-) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index 566b6de1..4cf41e58 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -58,7 +58,9 @@ jobs: - name: Xilinx Setup env: - LICENSE_TUNNEL_KEY_DATA: ${{ secrets.LICENSE_TUNNEL_KEY_DATA }} + GHA_SSH_TUNNEL_KEY: "${{ secrets.LICENSE_TUNNEL_KEY_DATA }}" + GHA_SSH_TUNNEL_CONFIG: "${{ secrets.LICENSE_TUNNEL_SSH_CONFIG }}" + run: .github/workflows/scripts/xilinx.sh - name: Build diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index e61532c5..5a6017f7 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -56,56 +56,19 @@ echo "----------------------------------------" # Create a tunnel to the server which has the Xilinx licenses and port forward # them. -echo -echo "Setting up license server tunnel" -echo "----------------------------------------" if [ ! -z "$LICENSE_TUNNEL_KEY_DATA" ]; then - LICENSE_TUNNEL_KEY=~/.Xilinx/xilinx-tunnel-key - LICENSE_TUNNEL_HOST=10.138.0.3 - echo $LICENSE_TUNNEL_KEY_DATA | base64 --decode > $LICENSE_TUNNEL_KEY - - echo "SSH Key for license server tunnel should be found @ $LICENSE_TUNNEL_KEY" - ls -l $LICENSE_TUNNEL_KEY || true echo - echo "Xilinx license server ssh key found, setting up tunnel" + echo "Xilinx license server ssh key found, checking the license" echo - echo - echo "Checking $LICENSE_TUNNEL_HOST is up" - ip addr show - echo "ping: ---------" - ping -c 5 $LICENSE_TUNNEL_HOST - echo "port: ---------" - nc -zv $LICENSE_TUNNEL_HOST 22 - echo "---------" - echo - - chmod 600 $LICENSE_TUNNEL_KEY - cat < ssh_config -Host xilinx-license - HostName $LICENSE_TUNNEL_HOST - 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 & - disown $! - - ( - 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 "-----" - ) + 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 From 419494e46b92b88aa6d1e77b931e864962ac46f2 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Thu, 12 May 2022 16:23:02 +0200 Subject: [PATCH 10/19] CI: move tunnel variables to globals Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index 4cf41e58..a64aa64d 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -20,10 +20,11 @@ jobs: family: ['artix7', 'zynq7', 'kintex7', 'spartan7'] env: + GHA_SSH_TUNNEL_KEY: "${{ secrets.LICENSE_TUNNEL_KEY_DATA }}" + GHA_SSH_TUNNEL_CONFIG: "${{ secrets.LICENSE_TUNNEL_SSH_CONFIG }}" ALLOW_ROOT: true GHA_EXTERNAL_DISK: "tools" XILINX_LOCAL_USER_DATA: "no" - LICENSE_TUNNEL_KEY_DATA: ${{ secrets.LICENSE_TUNNEL_KEY_DATA }} steps: @@ -57,10 +58,6 @@ jobs: sudo \ - name: Xilinx Setup - env: - GHA_SSH_TUNNEL_KEY: "${{ secrets.LICENSE_TUNNEL_KEY_DATA }}" - GHA_SSH_TUNNEL_CONFIG: "${{ secrets.LICENSE_TUNNEL_SSH_CONFIG }}" - run: .github/workflows/scripts/xilinx.sh - name: Build From 5b33a203119e680e2f37ac015f9e6d7a486cd656 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 13:36:45 +0200 Subject: [PATCH 11/19] CI: use GCP secrets Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 2 ++ .github/workflows/scripts/xilinx.sh | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index a64aa64d..4bb79f2a 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -22,6 +22,8 @@ jobs: env: GHA_SSH_TUNNEL_KEY: "${{ secrets.LICENSE_TUNNEL_KEY_DATA }}" GHA_SSH_TUNNEL_CONFIG: "${{ secrets.LICENSE_TUNNEL_SSH_CONFIG }}" + GHA_SSH_TUNNEL_CONFIG_SECRET_NAME: "xilinx_license_server_config" + GHA_SSH_TUNNEL_KEY_SECRET_NAME: "xilinx_license_server_key" ALLOW_ROOT: true GHA_EXTERNAL_DISK: "tools" XILINX_LOCAL_USER_DATA: "no" diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 5a6017f7..4761618a 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -56,7 +56,7 @@ echo "----------------------------------------" # Create a tunnel to the server which has the Xilinx licenses and port forward # them. -if [ ! -z "$LICENSE_TUNNEL_KEY_DATA" ]; then +if [ ! -z "$GHA_SSH_TUNNEL_CONFIG_SECRET_NAME" ]; then echo echo "Xilinx license server ssh key found, checking the license" From f7f473014c6a900f0ddb28054d81407ddadcb61a Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 14:06:29 +0200 Subject: [PATCH 12/19] CI: xilinx: fix license condition Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 4761618a..ee96ecfa 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -56,7 +56,7 @@ echo "----------------------------------------" # Create a tunnel to the server which has the Xilinx licenses and port forward # them. -if [ ! -z "$GHA_SSH_TUNNEL_CONFIG_SECRET_NAME" ]; then +if [[ ! -z "$GHA_SSH_TUNNEL_CONFIG_SECRET_NAME" ]]; then echo echo "Xilinx license server ssh key found, checking the license" From bdc6252dbc16141dbe89218109b35be588a9ca59 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 14:15:36 +0200 Subject: [PATCH 13/19] test: print env Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index ee96ecfa..f8570eef 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -56,6 +56,8 @@ echo "----------------------------------------" # Create a tunnel to the server which has the Xilinx licenses and port forward # them. +echo "xilinx secret" +echo $GHA_SSH_TUNNEL_CONFIG_SECRET_NAME if [[ ! -z "$GHA_SSH_TUNNEL_CONFIG_SECRET_NAME" ]]; then echo From 871957b74f3ab277f84135240a5dc9d4d2fd9151 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 15:07:16 +0200 Subject: [PATCH 14/19] CI: use variable to force license server connection Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 2 ++ .github/workflows/scripts/xilinx.sh | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index 4bb79f2a..4fab5215 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -61,6 +61,8 @@ jobs: - name: Xilinx Setup run: .github/workflows/scripts/xilinx.sh + env: + USE_LICENSE_SERVER: "true" - name: Build run: make build --output-sync=target --warn-undefined-variables -j$(nproc) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index f8570eef..4f543db0 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -58,7 +58,7 @@ echo "----------------------------------------" # them. echo "xilinx secret" echo $GHA_SSH_TUNNEL_CONFIG_SECRET_NAME -if [[ ! -z "$GHA_SSH_TUNNEL_CONFIG_SECRET_NAME" ]]; then +if [[ ! -z "$USE_LICENSE_SERVER" ]]; then echo echo "Xilinx license server ssh key found, checking the license" From 17d8b1d61b9576869fb525fc561c2169e7938648 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 16:04:09 +0200 Subject: [PATCH 15/19] CI: hack: mark xray as safe dir Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index 4fab5215..b1b03a22 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -60,6 +60,7 @@ jobs: sudo \ - name: Xilinx Setup + run: git config --global --add safe.directory /root/prjxray/prjxray run: .github/workflows/scripts/xilinx.sh env: USE_LICENSE_SERVER: "true" From 20627dc637ccc9a4187b00a960513292578bcf30 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 16:07:06 +0200 Subject: [PATCH 16/19] fix yaml file Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index b1b03a22..efe73184 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -60,8 +60,9 @@ jobs: sudo \ - name: Xilinx Setup - run: git config --global --add safe.directory /root/prjxray/prjxray - run: .github/workflows/scripts/xilinx.sh + run: | + git config --global --add safe.directory /root/prjxray/prjxray + .github/workflows/scripts/xilinx.sh env: USE_LICENSE_SERVER: "true" From 1bfafe4486444f2b531efff7f063be31f637eea3 Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Wed, 18 May 2022 16:16:49 +0200 Subject: [PATCH 17/19] do not link to vivado in db.sh Signed-off-by: Karol Gugala --- .github/workflows/scripts/db.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/scripts/db.sh b/.github/workflows/scripts/db.sh index 82ad2515..ab946166 100755 --- a/.github/workflows/scripts/db.sh +++ b/.github/workflows/scripts/db.sh @@ -15,7 +15,6 @@ echo echo "=======================================" echo "Creating Vivado Symbolic Link" echo "---------------------------------------" -ln -s /mnt/aux/Xilinx /opt/Xilinx ls /opt/Xilinx/Vivado source /opt/Xilinx/Vivado/2017.2/settings64.sh vivado -version From 4f4ebc83eff8ea8dd6e5e667209d7d1e647c5d8c Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Mon, 24 Oct 2022 21:47:20 +0200 Subject: [PATCH 18/19] CI: xilinx.sh: apply review comments Signed-off-by: Karol Gugala --- .github/workflows/scripts/xilinx.sh | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/scripts/xilinx.sh b/.github/workflows/scripts/xilinx.sh index 4f543db0..2290d080 100755 --- a/.github/workflows/scripts/xilinx.sh +++ b/.github/workflows/scripts/xilinx.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (C) 2017-2020 The Project X-Ray Authors. +# Copyright (C) 2017-2022 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 @@ -18,7 +18,6 @@ echo "----------------------------------------" mkdir -p ~/.Xilinx ls -l ~/.Xilinx mkdir ~/.ssh -#sudo chown -R $USER ~/.Xilinx echo echo "Fixing loader to be able to run lmutils" echo "----------------------------------------" @@ -54,9 +53,6 @@ echo "----------------------------------------" ls -l /opt echo "----------------------------------------" -# Create a tunnel to the server which has the Xilinx licenses and port forward -# them. -echo "xilinx secret" echo $GHA_SSH_TUNNEL_CONFIG_SECRET_NAME if [[ ! -z "$USE_LICENSE_SERVER" ]]; then From 057656f6670cdbeb971641479dd83c2d564ad86f Mon Sep 17 00:00:00 2001 From: Karol Gugala Date: Mon, 24 Oct 2022 21:47:57 +0200 Subject: [PATCH 19/19] CI: pass family to xilinx.sh Signed-off-by: Karol Gugala --- .github/workflows/Pipeline.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/Pipeline.yml b/.github/workflows/Pipeline.yml index efe73184..e45a4c98 100644 --- a/.github/workflows/Pipeline.yml +++ b/.github/workflows/Pipeline.yml @@ -65,6 +65,7 @@ jobs: .github/workflows/scripts/xilinx.sh env: USE_LICENSE_SERVER: "true" + XRAY_SETTINGS: ${{ matrix.family }} - name: Build run: make build --output-sync=target --warn-undefined-variables -j$(nproc)