From 99b0c7bf48e4652c42bd3e76a89e6d340910e5a5 Mon Sep 17 00:00:00 2001 From: Prakash Das <128883891+prkshdas@users.noreply.github.com> Date: Sun, 14 Jul 2024 21:33:18 +0530 Subject: [PATCH 01/19] This my design --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 0 -> 107782 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 submissions/Ebeam_heaters_prakashdas_02_Decoder.gds diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds new file mode 100644 index 0000000000000000000000000000000000000000..23efb3264c22e8314e03405d36f9d4c8665b704b GIT binary patch literal 107782 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 Z{rdk(94_8_tFD;qf0wSC{%|T4{vZ10#9#mb literal 0 HcmV?d00001 From dff0098f2b03bcebdc7e7d891cf1a244ff903fed Mon Sep 17 00:00:00 2001 From: Prakash Das <128883891+prkshdas@users.noreply.github.com> Date: Sun, 14 Jul 2024 23:04:10 +0530 Subject: [PATCH 02/19] Here my .yaml file --- .../Ebeam_heaters_prakashdas_02_Decoder.yaml | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 submissions/Ebeam_heaters_prakashdas_02_Decoder.yaml diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.yaml b/submissions/Ebeam_heaters_prakashdas_02_Decoder.yaml new file mode 100644 index 0000000..0cb4af5 --- /dev/null +++ b/submissions/Ebeam_heaters_prakashdas_02_Decoder.yaml @@ -0,0 +1,44 @@ +Devices: + prakashdas_02_Decoder: + device_id: prakashdas_02_Decoder + device_type: Device + electricalCoordinates: + - G + - 399.0 + - 424.0 + opticalCoordinates: + - 52.0 + - 290.0 + polarization: TE + sequences: + - (wavelength_sweep_ida) + wavelength: '1550' +Sequences: + (wavelength_sweep_ida): + Runtime: 25.0 + results_info: + csv: 'True' + foldername: '' + legend: 'True' + mat: 'True' + num_plots: '1' + pdf: 'True' + pkl: 'False' + plottitle: WavelengthSweep + save_location: '' + saveplot: 'True' + visual: 'True' + xscale: '1' + xtitle: Wavelength (nm) + yscale: '1' + ytitle: Power (dBm) + variables: + Initialrange: '-20' + Laser Output: High Power + Numscans: '1' + Power: '1' + RangeDec: '20' + Start: '1480' + Step: '1' + Stop: '1580' + Sweep Speed: auto From 4802ef1b7e6ef586a25380b977b9a4de19da838c Mon Sep 17 00:00:00 2001 From: Prakash Das <128883891+prkshdas@users.noreply.github.com> Date: Sun, 14 Jul 2024 23:06:57 +0530 Subject: [PATCH 03/19] Here my .yaml file From ef90146301ed7b5e2eb81829c1f83d08bd90d600 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:21:16 -0700 Subject: [PATCH 04/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 107782 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index 23efb3264c22e8314e03405d36f9d4c8665b704b..94c1f78403e21c41b22d305b2fec39f81f817686 100644 GIT binary patch delta 17794 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 Ixe62h2aj;(iU0rr From df805b5d6ed9d4ea18f42b5e7e98d2b184b6f13d Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:23:46 -0700 Subject: [PATCH 05/19] Update run_verification.py --- run_verification.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/run_verification.py b/run_verification.py index dbf20b7..0c074a2 100644 --- a/run_verification.py +++ b/run_verification.py @@ -45,7 +45,7 @@ file_lyrdb = os.path.join(path,filename+'.lyrdb') # run verification -num_errors = layout_check(cell = top_cell, verbose=True, GUI=True, file_rdb=file_lyrdb) +num_errors = layout_check(cell = top_cell, verbose=False, GUI=True, file_rdb=file_lyrdb) # Print the result value to standard output print(num_errors) From e3640414c3e252e6eeb6a4c7513981be6d679681 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:26:04 -0700 Subject: [PATCH 06/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 154 +++++++++++++++++++++---- 1 file changed, 129 insertions(+), 25 deletions(-) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index 3171704..0d0884f 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -9,13 +9,12 @@ on: push: paths: - 'submissions/**.gds' + - 'submissions/**.GDS' - 'submissions/**.oas' + - 'submissions/**.OAS' branches: - '**' pull_request: - paths: - - 'submissions/**.gds' - - 'submissions/**.oas' branches: - '**' @@ -30,6 +29,17 @@ jobs: with: fetch-depth: 0 + - name: write what triggered this workflow to a txt file + run: | + echo "${{ github.event_name }}" > trigger_info.txt + cat trigger_info.txt + + - name: upload trigger txt file as an artifact + uses: actions/upload-artifact@v4 + with: + name: verification-trigger + path: trigger_info.txt + # can also specify python version if needed - name: setup python uses: actions/setup-python@v4 @@ -38,41 +48,63 @@ jobs: run: | python -m pip install --upgrade pip pip install klayout SiEPIC siepic_ebeam_pdk - python -m pip install --upgrade SiEPIC - - - name: get .gds and .oas files, run example layout verification - id: run-script + + - name: download latest python-to-oas-gds artifact from triggering workflow + uses: dawidd6/action-download-artifact@v2 + with: + run_id: ${{ github.event.workflow_run.id }} + name: python-to-oas-gds + path: ./binary_files + search_artifacts: true + if: ${{ github.event_name == 'workflow_run' }} + + - name: get .gds and .oas files run: | - - # if the action is being triggered after running python files, get resulting oas files from txt file - # github actions is not configured to detect files pushed from another action, thus we cannot use the method below - if [ -s "python-to-gds_oas.txt" ] && [ -n "$(cat python-to-gds_oas.txt)" ]; then - export FILES=$(cat python-to-gds_oas.txt) - IFS=' ' - echo "" > python-to-gds_oas.txt - - # push empty text file to repo - git config --local user.email "${{ github.actor }}@users.noreply.github.com" - git config --local user.name "${{ github.actor }}" - git add python-to-gds_oas.txt - git commit -m "Emptying text file" - git push + # if the action is being triggered after running python files, get resulting oas/gds files from artifact + # github actions is not configured to detect files pushed from another action, thus we cannot use the 'else' method below + if [ "${{ github.event_name }}" == "workflow_run" ]; then + FILES=$(ls ./binary_files) else - if [ "${{ github.event_name }}" = "pull_request" ]; then + if [[ "${{ github.event_name }}" == "pull_request" || "${{ github.event_name }}" == "pull_request_target" ]]; then # triggered on pull request, get all changed / added files from forked repo - export FILES=$(git diff --name-only --diff-filter=ACM FETCH_HEAD | grep -E '\.(gds|oas)$' | sed 's|^submissions/||') + FILES=$(git diff --name-only --diff-filter=ACM FETCH_HEAD | grep -i -E '\.(gds|oas)$' | sed 's|^submissions/||') else # triggered push, locate the changed / added .gds and .oas files in the submission folder - export FILES=$(git diff --name-status --diff-filter=ACM --relative=submissions ${{ github.event.before }} ${{ github.sha }} submissions | grep -E '\.(gds|oas)$' | awk '{print $2}') + FILES=$(git diff --name-status --diff-filter=ACM --relative=submissions ${{ github.event.before }} ${{ github.sha }} submissions | grep -i -E '\.(gds|oas)$' | awk '{print $2}') fi - IFS=$'\n' fi + + # we cannot set a multiline env vars so we must change it to single line (seperated by commas) if we have more than one file + if [ $(echo "$FILES" | wc -l) -gt 1 ]; then + # Replace newlines with a delimiter (e.g., comma) + FILES_SINGLE_LINE=$(echo "$FILES" | tr '\n' ',') + else + # Keep the original content without modification + FILES_SINGLE_LINE="$FILES" + fi + + echo "$FILES_SINGLE_LINE" + echo "FILES_SINGLE_LINE=$FILES_SINGLE_LINE" >> $GITHUB_ENV + - name: run layout verification + run: | + + # Check if there is a comma in the variable and revert it back to a multiline var + if [[ "$FILES_SINGLE_LINE" == *","* ]]; then + # Replace the delimiter with newlines + FILES=$(echo "$FILES_SINGLE_LINE" | tr ',' '\n') + else + # No comma found, keep the original content without modification + FILES="$FILES_SINGLE_LINE" + fi + # print the names of the files echo "Files for verification; $FILES" files_with_errors="" + + IFS=$'\n' # run verification on all files for file in $FILES; do @@ -88,6 +120,7 @@ jobs: # if file results in verification errors add to string files_with_errors if [[ "$errors_from_output" -ge 1 ]]; then + echo "$output" files_with_errors+="$file, $errors_from_output errors. " echo $files_with_errors >> $GITHUB_STEP_SUMMARY echo $output >> $GITHUB_STEP_SUMMARY @@ -96,8 +129,11 @@ jobs: echo "Done verification on $file" done + echo "$output" > verification_output.txt echo "files_with_errors=$files_with_errors" >> $GITHUB_ENV + + - name: move output files to new folder run: | export OUTPUT_FILES=$(find /home/runner/work/openEBL-2024-07-Si-Heaters/openEBL-2024-07-Si-Heaters/submissions -name "*.lyrdb") @@ -126,3 +162,71 @@ jobs: exit 1 fi + + + + + + + + + + - name: get .gds and .oas files, run example layout verification + id: run-script + run: | + + # if the action is being triggered after running python files, get resulting oas files from txt file + # github actions is not configured to detect files pushed from another action, thus we cannot use the method below + if [ -s "python-to-gds_oas.txt" ] && [ -n "$(cat python-to-gds_oas.txt)" ]; then + export FILES=$(cat python-to-gds_oas.txt) + IFS=' ' + echo "" > python-to-gds_oas.txt + + # push empty text file to repo + git config --local user.email "${{ github.actor }}@users.noreply.github.com" + git config --local user.name "${{ github.actor }}" + git add python-to-gds_oas.txt + git commit -m "Emptying text file" + git push + + else + if [ "${{ github.event_name }}" = "pull_request" ]; then + # triggered on pull request, get all changed / added files from forked repo + export FILES=$(git diff --name-only --diff-filter=ACM FETCH_HEAD | grep -E '\.(gds|oas)$' | sed 's|^submissions/||') + else + # triggered push, locate the changed / added .gds and .oas files in the submission folder + export FILES=$(git diff --name-status --diff-filter=ACM --relative=submissions ${{ github.event.before }} ${{ github.sha }} submissions | grep -E '\.(gds|oas)$' | awk '{print $2}') + fi + IFS=$'\n' + fi + + # print the names of the files + echo "Files for verification; $FILES" + + files_with_errors="" + + # run verification on all files + for file in $FILES; do + + echo "Running verification on $file" + + output=$(python run_verification.py "submissions/$file") + + # get number of errors + errors_from_output=$(echo "$output" | tail -n 1) + + echo "$errors_from_output errors detected for $file" + + # if file results in verification errors add to string files_with_errors + if [[ "$errors_from_output" -ge 1 ]]; then + files_with_errors+="$file, $errors_from_output errors. " + echo $files_with_errors >> $GITHUB_STEP_SUMMARY + echo $output >> $GITHUB_STEP_SUMMARY + fi + + echo "Done verification on $file" + done + + echo "files_with_errors=$files_with_errors" >> $GITHUB_ENV + # Don't run: + if: github.repository == 'octo-org/octo-repo-prod' From b6678d565cb0b55fb55960a804c2359c41d9dbcb Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:26:18 -0700 Subject: [PATCH 07/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index 94c1f78403e21c41b22d305b2fec39f81f817686..c2ccaefede3ce75dcb35d7fd74ac84e2c41a9527 100644 GIT binary patch delta 755 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415ec3{ngN$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Y!lrh?dB%8l7BeeDv+c~+8ILjp0QLlmoB#j- delta 755 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415ec45AF2$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Y!lrh?dB%8l7DFoogYC@M8ILjp0F%szkN^Mx From daa62d0847cd19f4e770127bdaa281af3e8230d6 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:30:03 -0700 Subject: [PATCH 08/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index c2ccaefede3ce75dcb35d7fd74ac84e2c41a9527..788e1333315c07bd90b621e1d0f6851f62cfa619 100644 GIT binary patch delta 755 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415ec46+PX$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Y!lrh?dB%8l7E3Eri|x$U8ILjp09|R7s_7@E7415ec3{ngN$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Y!lrh?dB%8l7BeeDv+c~+8ILjp0QLlmoB#j- From 79421811402984999fcdf5f911de6cb02d55f79c Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:45:10 -0700 Subject: [PATCH 09/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index 0d0884f..a515ab7 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -230,3 +230,4 @@ jobs: echo "files_with_errors=$files_with_errors" >> $GITHUB_ENV # Don't run: if: github.repository == 'octo-org/octo-repo-prod' + From 1ac81fc324262b8815f4374c34a53f67d3daed08 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:57:45 -0700 Subject: [PATCH 10/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index a515ab7..84d0cb3 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -29,6 +29,17 @@ jobs: with: fetch-depth: 0 + - name: Set up environment variables + run: | + echo "PR_BRANCH=${{ github.head_ref }}" >> $GITHUB_ENV + echo "BASE_BRANCH=${{ github.base_ref }}" >> $GITHUB_ENV + + - name: Fetch branches + run: | + git fetch origin $PR_BRANCH + git fetch origin $BASE_BRANCH + + - name: write what triggered this workflow to a txt file run: | echo "${{ github.event_name }}" > trigger_info.txt @@ -68,10 +79,13 @@ jobs: else if [[ "${{ github.event_name }}" == "pull_request" || "${{ github.event_name }}" == "pull_request_target" ]]; then # triggered on pull request, get all changed / added files from forked repo - FILES=$(git diff --name-only --diff-filter=ACM FETCH_HEAD | grep -i -E '\.(gds|oas)$' | sed 's|^submissions/||') + FILES=$(git diff --name-only --diff-filter=ACM $BASE_BRANCH...$PR_BRANCH | grep -i -E '\.(gds|oas)$' | sed 's|^submissions/||') + #FILES=$(git diff --name-only --diff-filter=ACM origin/$BASE_BRANCH...origin/$PR_BRANCH | grep -i -E '\.(gds|oas)$' | sed 's|^submissions/||') + #FILES=$(git diff --name-only --diff-filter=ACM FETCH_HEAD | grep -i -E '\.(gds|oas)$' | sed 's|^submissions/||') else # triggered push, locate the changed / added .gds and .oas files in the submission folder - FILES=$(git diff --name-status --diff-filter=ACM --relative=submissions ${{ github.event.before }} ${{ github.sha }} submissions | grep -i -E '\.(gds|oas)$' | awk '{print $2}') + FILES=$(git diff --name-only --diff-filter=ACM --relative=submissions $BASE_BRANCH...$PR_BRANCH submissions | grep -i -E '\.(gds|oas)$' | awk '{print $2}') + #FILES=$(git diff --name-status --diff-filter=ACM --relative=submissions ${{ github.event.before }} ${{ github.sha }} submissions | grep -i -E '\.(gds|oas)$' | awk '{print $2}') fi fi From 3fea1b97cd3e502e8e6b5cd148b1ef7f972d0fc0 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 12:57:59 -0700 Subject: [PATCH 11/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index 788e1333315c07bd90b621e1d0f6851f62cfa619..d2c9c286789630a973c50ad6ba6372f00bab9c8a 100644 GIT binary patch delta 756 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415ec43-QQ$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Z!lrh?dB!+)R#S5;Q?u>N*BOs80|0;loR$Cp delta 756 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415ec46+PX$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Z!lrh?dB!+)RwGL*Q;Y4)*BOs80|4?kmKOj3 From 075d56c2b0781dade6371bdf32d07a83a0f770bf Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:05:34 -0700 Subject: [PATCH 12/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index 80dbe41..cca2ad6 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -31,7 +31,7 @@ jobs: - name: Set up environment variables run: | - echo "PR_BRANCH=${{ github.head_ref }}" >> $GITHUB_ENV + echo "PR_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV echo "BASE_BRANCH=${{ github.base_ref }}" >> $GITHUB_ENV - name: Fetch branches From 1d730db1369da2dd557202d037c31cc445939c44 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:05:55 -0700 Subject: [PATCH 13/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index d2c9c286789630a973c50ad6ba6372f00bab9c8a..51c3e4c2ebeef101123a7ab8812860ae3d9c12f8 100644 GIT binary patch delta 820 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{46F>M$n1$qnt~XD8)K?vFhw`Nka@_0 zMfjGYCMyw_4vNUK4lC-3Lt*__$vflY}5RLOd7w#|>5E-_-U`&dgQwy+6U7%hTD^`5PZvH7;( zP&_u_2j?7FusB?XZF=HGMybvImz$Wd*zxG9CpKZ58_Q*}sQ&Ub5{pB($8j;nOJOSC zeoloEo5!|WSu!ri;)U&>Tp3SdNe$c2cr(Ugv)3wtF%p|OOL7XV=DtwD^ug`%-0!@G6MjEvyklo delta 820 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415ec43-QQ$n1$qnt~XD8)K?vFhw`Nka@_0 zMfjGYCMyw_4vNUK4lC-3Lt*__$vflY}5RLOd7w#|>5E-_-U`&dgQwy+6U7%hTD^`5PZvH7;( zP&_u_2j?7FusB?XZF=HGMybvImz$Wd*zxG9CpKZ58_Q*}sQ&Ub5{pB($8j;nOJOSC zeoloEo5!|WSu!ri;)U&>Tp3SdNe$c2cr(Ugv)3wtF%p|OOL7XBP&yLD^s)W%-0!@G6Mh=Jf3y{ From 292949213871b08f4635b46a5484309525ff8f92 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:11:09 -0700 Subject: [PATCH 14/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index cca2ad6..58a8820 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -31,7 +31,7 @@ jobs: - name: Set up environment variables run: | - echo "PR_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV + echo "PR_BRANCH=${{ github.ref_name }}" >> $GITHUB_ENV echo "BASE_BRANCH=${{ github.base_ref }}" >> $GITHUB_ENV - name: Fetch branches @@ -89,15 +89,6 @@ jobs: fi fi - # we cannot set a multiline env vars so we must change it to single line (seperated by commas) if we have more than one file - if [ $(echo "$FILES" | wc -l) -gt 1 ]; then - # Replace newlines with a delimiter (e.g., comma) - FILES_SINGLE_LINE=$(echo "$FILES" | tr '\n' ',') - else - # Keep the original content without modification - FILES_SINGLE_LINE="$FILES" - fi - # we cannot set a multiline env vars so we must change it to single line (seperated by commas) if we have more than one file if [ $(echo "$FILES" | wc -l) -gt 1 ]; then # Replace newlines with a delimiter (e.g., comma) @@ -253,3 +244,4 @@ jobs: echo "files_with_errors=$files_with_errors" >> $GITHUB_ENV # Don't run: if: github.repository == 'octo-org/octo-repo-prod' + From f14b62bb53354112a549ad98a462b137f8df5394 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:11:20 -0700 Subject: [PATCH 15/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index 51c3e4c2ebeef101123a7ab8812860ae3d9c12f8..77441c7829349744126cbcd91282449370ef907a 100644 GIT binary patch delta 756 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{4BQO-$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Z!lrh?dB!+)RzpK8LzC^y*BOs80|3yvhUWkP delta 756 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{46F>M$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Z!lrh?dB!+)Rs&NjQ{(N-*BOs80|0*Hj_m*d From 685347f0d055e122b398faaed098d072ae633feb Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:16:21 -0700 Subject: [PATCH 16/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index 58a8820..e98c067 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -31,8 +31,13 @@ jobs: - name: Set up environment variables run: | - echo "PR_BRANCH=${{ github.ref_name }}" >> $GITHUB_ENV - echo "BASE_BRANCH=${{ github.base_ref }}" >> $GITHUB_ENV + echo "PR_BRANCH=${{ github.event.pull_request.head.ref }}" >> $GITHUB_ENV + echo "BASE_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV + + - name: Debug branch names + run: | + echo "PR_BRANCH=$PR_BRANCH" + echo "BASE_BRANCH=$BASE_BRANCH" - name: Fetch branches run: | From d1133c718ed3b2e0bdc750aada71ca67593cc971 Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:16:33 -0700 Subject: [PATCH 17/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index 77441c7829349744126cbcd91282449370ef907a..7e4da449201a7c3cfc9c001459a3a265f25a7810 100644 GIT binary patch delta 755 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{3<3<&$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Y!lrh?dB%8l7Bed&v+c~+8ILjp0DqZ^{r~^~ delta 755 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{4BQO-$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Y!lrh?dB%8l7DFpTlkLpc8ILjp0815ywg3PC From 50e4396a574954e9c6b74413ab2c44290de1adfa Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:23:48 -0700 Subject: [PATCH 18/19] Update run-verification.yml --- .github/workflows/run-verification.yml | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/.github/workflows/run-verification.yml b/.github/workflows/run-verification.yml index e98c067..d37d499 100644 --- a/.github/workflows/run-verification.yml +++ b/.github/workflows/run-verification.yml @@ -29,20 +29,13 @@ jobs: with: fetch-depth: 0 - - name: Set up environment variables - run: | - echo "PR_BRANCH=${{ github.event.pull_request.head.ref }}" >> $GITHUB_ENV - echo "BASE_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV - - - name: Debug branch names - run: | - echo "PR_BRANCH=$PR_BRANCH" - echo "BASE_BRANCH=$BASE_BRANCH" - - name: Fetch branches + - name: get changed files + uses: jitterbit/get-changed-files@v1 run: | - git fetch origin $PR_BRANCH - git fetch origin $BASE_BRANCH + for changed_file in ${{ steps.files.outputs.all }}; do + echo "Do something with this ${changed_file}." + done - name: write what triggered this workflow to a txt file From 3d6a1b95b469cff813ddec81538868b094f99b8e Mon Sep 17 00:00:00 2001 From: Lukas Chrostowski Date: Sun, 14 Jul 2024 13:24:00 -0700 Subject: [PATCH 19/19] Update Ebeam_heaters_prakashdas_02_Decoder.gds --- .../Ebeam_heaters_prakashdas_02_Decoder.gds | Bin 121544 -> 121544 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds b/submissions/Ebeam_heaters_prakashdas_02_Decoder.gds index 7e4da449201a7c3cfc9c001459a3a265f25a7810..6e027b8857492ea4da551db335fb30a54e8ecd22 100644 GIT binary patch delta 756 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{4B`xy$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Z!lrh?dB!+)RwH98Q}gZ2*BOs80|1exlyLw6 delta 756 zcmX@HmHot4b|nTj1}3Hm1{p>s_7@E7415f{3<3<&$n1$q+Wcrj8)Ir^(8V^tka^64 zA$Utsn-xP)M18jyhTuKh(>xf0JG>UMqYF;X2%3*BwplEAzK#%@D;ZSSraw$%l-PW~ zK7|{35?O0CM?NeJdCNftPz{2$27)r6-@W; Z!lrh?dB!+)Rzou@BeU(y*BOs80{{t)i!T5G