Skip to content
Snippets Groups Projects

Add package version-query

1 unresolved thread

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • added 1 commit

    Compare with previous version

  • @akarmas : I am hoping this fixes the problem in #62 (closed)

    I wanted to to be able to test this locally, and was going through your walkthrough video here: https://flagship.kip.uni-heidelberg.de/jss/HBPm?mI=226&publicVideoID=8824 I got stuck at 26:34 of the video:

    image

    where I couldn't exactly follow how you did the local testing with the directory containing only the new package you had created. When I do spack repo list I only see the 'builtin' category and not the new one I added.

    Since there are quite a MRs to be handled, I felt it might be easier if I could test locally and confirm before making the MRs.

  • Hi @shailesh,

    To create a local repository like the "spack-local-testing" in the screenshot, you need to create a directory that will contain the local repository. Here the directory name is "spack-local-testing". Inside this directory you will need to create: i) another directory named "packages" in which you will place the Spack packages you wish to test locally and ii) a file named "repo.yaml" with the following content:

    repo:
      namespace: spack-local-testing

    The namespace value should be the directory that contains the local repository, here "spack-local-testing".
    Then from the parent directory of the repository you will issue:

    spack repo add spack-local-testing

    and then your local repository will be added in the "spack repo list" and the packages placed there will be visible from the Spack instance for local testing.
    For example my directory structure:

    $ls
    spack  spack-local-testing
    $ ls spack-local-testing/
    packages  repo.yaml
    $ ls spack-local-testing/packages/
    clb-nb-utils  funniest1022  py-lfpy  snudda
    $ cat spack-local-testing/repo.yaml
    repo:
      namespace: spack-local-testing

    Hope this helps.

  • Hi @shailesh,

    Something is wrong with this package. It did not build successfully.
    Can you double check?

    https://gitlab.ebrains.eu/technical-coordination/project-internal/devops/platform/ebrains-spack-builds/-/blob/master/packages/py-version-query/package.py

    1. line 14:
      pypi = "ebrains-drive/ebrains-drive-0.4.0.tar.gz" Should not it be something else?

    2. lines 23 and 25 are the same? This needs to be corrected:
      depends_on('py-semver@2.8.1:', type=('build', 'run'))

    Edited by Athanasios Karmas
    • @akarmas: Sorry about that! Some copy-paste errors creeped in. I have changed it on the same branch now (https://gitlab.ebrains.eu/cnrs-neuroinformatics/ebrains-spack-builds/-/tree/ADD_version_query). Might need to make a new MR I suppose. But I am not yet convinced it is completely ready.

      Thanks for the detailed instructions. It worked, I was able to setup the local testing environment. But now when I try doing: spack install py-version-query

      I get:

      image

      Is there a way to obtain more useful info about the source of the error?

      Edited by Shailesh Appukuttan
    • @shailesh

      Yes, you would need to create a new MR for any corrections (and it would be preferable if you are convinced that it has high chances of building successfully :) ).

      You could get more detailed info for the source of the error by running spack --show-cores=full install py-version-query.

      Usually, such kind of error though means some kind of conflict in your spack environment. I would either propose that you start a fresh Spack instance and test only the build of py-version-query or that you inspect your spack.yaml for any conflicting packages.

    • Please register or sign in to reply
  • @akarmas :smile: I completely understand; partly the reason for my disclaimer that I wasn't convinced it would run ;-)

    I had infact tried that command: spack --show-cores=full install py-version-query and saw this huge output (attached here)output.txt

    It starts like this:

    ==> Error: py-version-query is unsatisfiable, conflicts are:
      A conflict was triggered
      A node must have exactly one platform
      All dependencies must be reachable from root
      Cyclic dependencies are not allowed
      Internal error: Package version must have a unique weight
      Internal error: two versions with identical weights
      buildable_os("ubuntu20.04")
      compiler_supports_os("gcc","7.5.0","ubuntu20.04")
      compiler_supports_os("gcc","8.4.0","ubuntu20.04")
      compiler_supports_os("gcc","9.4.0","ubuntu20.04")
      compiler_supports_target("gcc","7.5.0","broadwell")
      compiler_supports_target("gcc","7.5.0","bulldozer"
    

    Wasn't able to identify the root cause here. I don't specify 'gcc' versions anywhere in my spack recipes (my test env only has this one single package).

    (amongst my first attempts writing Spack recipes, so still somewhat a noob!... feel free to point me to any online resource that might help resolve this)

    Edited by Shailesh Appukuttan
Please register or sign in to reply