fix(ci): nim 2.0 dependency failure (#1216)

Broken due to an update to Nimble 0.16.2 for the version-2-0 branch.
This PR sets the ref to the previous commit. Also, updates the key
naming so it fits better.

Nim's commit list: https://github.com/nim-lang/Nim/commits/version-2-0/

# Important Note
In this PR some required job's names were changed. They need to be
updated at repo-level so this PR can be merged.
This commit is contained in:
Álex 2024-10-31 18:56:13 +01:00 committed by GitHub
parent 294d06323c
commit 97192a3c80
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 21 additions and 17 deletions

View File

@ -6,7 +6,7 @@ inputs:
cpu: cpu:
description: "CPU to build for" description: "CPU to build for"
default: "amd64" default: "amd64"
nim_branch: nim_ref:
description: "Nim version" description: "Nim version"
default: "version-1-6" default: "version-1-6"
shell: shell:
@ -117,7 +117,7 @@ runs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: '${{ github.workspace }}/nim' path: '${{ github.workspace }}/nim'
key: ${{ inputs.os }}-${{ inputs.cpu }}-nim-${{ inputs.nim_branch }}-cache-${{ env.cache_nonce }} key: ${{ inputs.os }}-${{ inputs.cpu }}-nim-${{ inputs.nim_ref }}-cache-${{ env.cache_nonce }}
- name: Build Nim and Nimble - name: Build Nim and Nimble
shell: ${{ inputs.shell }} shell: ${{ inputs.shell }}
@ -126,6 +126,6 @@ runs:
# We don't want partial matches of the cache restored # We don't want partial matches of the cache restored
rm -rf nim rm -rf nim
curl -O -L -s -S https://raw.githubusercontent.com/status-im/nimbus-build-system/master/scripts/build_nim.sh curl -O -L -s -S https://raw.githubusercontent.com/status-im/nimbus-build-system/master/scripts/build_nim.sh
env MAKE="${MAKE_CMD} -j${ncpu}" ARCH_OVERRIDE=${PLATFORM} NIM_COMMIT=${{ inputs.nim_branch }} \ env MAKE="${MAKE_CMD} -j${ncpu}" ARCH_OVERRIDE=${PLATFORM} NIM_COMMIT=${{ inputs.nim_ref }} \
QUICK_AND_DIRTY_COMPILER=1 QUICK_AND_DIRTY_NIMBLE=1 CC=gcc \ QUICK_AND_DIRTY_COMPILER=1 QUICK_AND_DIRTY_NIMBLE=1 CC=gcc \
bash build_nim.sh nim csources dist/nimble NimBinaries bash build_nim.sh nim csources dist/nimble NimBinaries

View File

@ -30,9 +30,12 @@ jobs:
- os: windows - os: windows
cpu: amd64 cpu: amd64
nim: nim:
- branch: version-1-6 - ref: version-1-6
memory_management: refc memory_management: refc
- branch: version-2-0 # The ref below corresponds to the branch "version-2-0".
# Right before an update from Nimble 0.16.1 to 0.16.2.
# That update breaks our dependency resolution.
- ref: 8754469f4947844c5938f56e1fba846c349354b5
memory_management: refc memory_management: refc
include: include:
- platform: - platform:
@ -56,7 +59,7 @@ jobs:
run: run:
shell: ${{ matrix.shell }} shell: ${{ matrix.shell }}
name: '${{ matrix.platform.os }}-${{ matrix.platform.cpu }} (Nim ${{ matrix.nim.branch }})' name: '${{ matrix.platform.os }}-${{ matrix.platform.cpu }} (Nim ${{ matrix.nim.ref }})'
runs-on: ${{ matrix.builder }} runs-on: ${{ matrix.builder }}
steps: steps:
- name: Checkout - name: Checkout
@ -70,7 +73,7 @@ jobs:
os: ${{ matrix.platform.os }} os: ${{ matrix.platform.os }}
cpu: ${{ matrix.platform.cpu }} cpu: ${{ matrix.platform.cpu }}
shell: ${{ matrix.shell }} shell: ${{ matrix.shell }}
nim_branch: ${{ matrix.nim.branch }} nim_ref: ${{ matrix.nim.ref }}
- name: Setup Go - name: Setup Go
uses: actions/setup-go@v5 uses: actions/setup-go@v5
@ -86,9 +89,9 @@ jobs:
uses: actions/cache@v3 uses: actions/cache@v3
with: with:
path: nimbledeps path: nimbledeps
# Using nim.branch as a simple way to differentiate between nimble using the "pkgs" or "pkgs2" directories. # Using nim.ref as a simple way to differentiate between nimble using the "pkgs" or "pkgs2" directories.
# The change happened on Nimble v0.14.0. # The change happened on Nimble v0.14.0.
key: nimbledeps-${{ matrix.nim.branch }}-${{ hashFiles('.pinned') }} # hashFiles returns a different value on windows key: nimbledeps-${{ matrix.nim.ref }}-${{ hashFiles('.pinned') }} # hashFiles returns a different value on windows
- name: Install deps - name: Install deps
if: ${{ steps.deps-cache.outputs.cache-hit != 'true' }} if: ${{ steps.deps-cache.outputs.cache-hit != 'true' }}
@ -109,5 +112,6 @@ jobs:
nim --version nim --version
nimble --version nimble --version
gcc --version gcc --version
NIMFLAGS="${NIMFLAGS} --mm:${{ matrix.nim.memory_management }}" NIMFLAGS="${NIMFLAGS} --mm:${{ matrix.nim.memory_management }}"
nimble test nimble test

View File

@ -10,5 +10,5 @@ jobs:
name: Daily amd64 name: Daily amd64
uses: ./.github/workflows/daily_common.yml uses: ./.github/workflows/daily_common.yml
with: with:
nim: "[{'branch': 'version-1-6', 'memory_management': 'refc'}, {'branch': 'version-2-0', 'memory_management': 'refc'}]" nim: "[{'ref': 'version-1-6', 'memory_management': 'refc'}, {'ref': '8754469f4947844c5938f56e1fba846c349354b5', 'memory_management': 'refc'}]"
cpu: "['amd64']" cpu: "['amd64']"

View File

@ -7,7 +7,7 @@ on:
nim: nim:
description: 'Nim Configuration' description: 'Nim Configuration'
required: true required: true
type: string # Following this format: [{"branch": ..., "memory_management": ...}, ...] type: string # Following this format: [{"ref": ..., "memory_management": ...}, ...]
cpu: cpu:
description: 'CPU' description: 'CPU'
required: true required: true
@ -58,7 +58,7 @@ jobs:
run: run:
shell: ${{ matrix.platform.shell }} shell: ${{ matrix.platform.shell }}
name: '${{ matrix.platform.os }}-${{ matrix.cpu }} (Nim ${{ matrix.nim.branch }})' name: '${{ matrix.platform.os }}-${{ matrix.cpu }} (Nim ${{ matrix.nim.ref }})'
runs-on: ${{ matrix.platform.builder }} runs-on: ${{ matrix.platform.builder }}
steps: steps:
- name: Checkout - name: Checkout
@ -69,7 +69,7 @@ jobs:
with: with:
os: ${{ matrix.platform.os }} os: ${{ matrix.platform.os }}
shell: ${{ matrix.platform.shell }} shell: ${{ matrix.platform.shell }}
nim_branch: ${{ matrix.nim.branch }} nim_ref: ${{ matrix.nim.ref }}
cpu: ${{ matrix.cpu }} cpu: ${{ matrix.cpu }}
- name: Setup Go - name: Setup Go

View File

@ -10,5 +10,5 @@ jobs:
name: Daily Nim Devel name: Daily Nim Devel
uses: ./.github/workflows/daily_common.yml uses: ./.github/workflows/daily_common.yml
with: with:
nim: "[{'branch': 'devel', 'memory_management': 'orc'}]" nim: "[{'ref': 'devel', 'memory_management': 'orc'}]"
cpu: "['amd64']" cpu: "['amd64']"

View File

@ -10,6 +10,6 @@ jobs:
name: Daily i386 (Linux) name: Daily i386 (Linux)
uses: ./.github/workflows/daily_common.yml uses: ./.github/workflows/daily_common.yml
with: with:
nim: "[{'branch': 'version-1-6', 'memory_management': 'refc'}, {'branch': 'version-2-0', 'memory_management': 'refc'}, {'branch': 'devel', 'memory_management': 'orc'}]" nim: "[{'ref': 'version-1-6', 'memory_management': 'refc'}, {'ref': '8754469f4947844c5938f56e1fba846c349354b5', 'memory_management': 'refc'}, {'ref': 'devel', 'memory_management': 'orc'}]"
cpu: "['i386']" cpu: "['i386']"
exclude: "[{'platform': {'os':'macos'}}, {'platform': {'os':'windows'}}]" exclude: "[{'platform': {'os':'macos'}}, {'platform': {'os':'windows'}}]"

View File

@ -10,6 +10,6 @@ jobs:
name: Daily SAT name: Daily SAT
uses: ./.github/workflows/daily_common.yml uses: ./.github/workflows/daily_common.yml
with: with:
nim: "[{'branch': 'version-2-0', 'memory_management': 'refc'}]" nim: "[{'ref': '8754469f4947844c5938f56e1fba846c349354b5', 'memory_management': 'refc'}]"
cpu: "['amd64']" cpu: "['amd64']"
use_sat_solver: true use_sat_solver: true