Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update spack.location to be machine-readable #52

Merged
merged 4 commits into from
Apr 19, 2024

Conversation

CodeGat
Copy link
Contributor

@CodeGat CodeGat commented Apr 18, 2024

In this PR:

  • deploy-2-start.yml: Updated spack.location to be machine-readable

Closes #51

@CodeGat CodeGat self-assigned this Apr 18, 2024
@CodeGat CodeGat marked this pull request as draft April 18, 2024 23:53
@aidanheerdegen
Copy link
Member

Can you paste an example of what it will look like in this PR?

I'm wondering how readable it is, if we need a spack.location and spack.location.json

@CodeGat
Copy link
Contributor Author

CodeGat commented Apr 18, 2024

Was just going to do that. Seems that it ignores the --path bit if there's --json. Will think up a different way to do it...

@aidanheerdegen
Copy link
Member

Seems that it ignores the --path bit if there's --json. Will think up a different way to do it...

It's ok, if it dumps a whole heap of info into the json version we can live it it, and provide a clean text version as well.

@CodeGat
Copy link
Contributor Author

CodeGat commented Apr 19, 2024

If only. The dumped json doesn't have path information :D
Here is one option spack find --format '{name}@{version} {prefix}':

[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/openssh-9.5p1-qkquurb34tyf46cdr2nhmoc6oth75z6m
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/openssl-3.1.3-ndunuvkldvcazhl4mfzsepm4tsnizoz4
[email protected] /opt/release/linux-rocky8-x86_64/gcc-8.5.0/patchelf-0.17.2-tr5ogxrot3gtfebg2un5dg7w2plh7kar
[email protected] /usr
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/pigz-2.7-twew7r5ag3dmmxkuozcjojxk4kuimdfa
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/pkgconf-1.9.5-ip67lrr46s2v6tvtljgitlf575xistht
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/pmix-4.2.2-dsuhyqk3l7lc44tzplnroid5wnfuizsm
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/snappy-1.1.10-jfjts53dpbxkx54nlmtjjqaaizrt3xb6
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/tar-1.34-qdhx2ratkxgo66gw6m3cxohygy7wvn37
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/util-macros-1.19.3-b6456jvl7wbyebhcihnkkpfdbwowejb5
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/xz-5.4.1-b3nbkp7pvvondi5h6xvvoyiba44t4wl4
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/zlib-ng-2.1.4-kg2thruurxgpfranmaxvrytyjlenhivb
[email protected] /opt/release/linux-rocky8-x86_64/intel-2021.6.0/zstd-1.5.5-ntyz4di6t4unkyha2q6a7trvshtnpyxj

I'll see if I can pipe that into a json format

@CodeGat
Copy link
Contributor Author

CodeGat commented Apr 19, 2024

Oh but wait, theres a better solution: spack find --format '{name}@{version} {prefix}' | jq -Rn '[inputs | split(" ") | {(.[0]):(.[1])}] | add', which gives:

{
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/autoconf-2.69-tma4iu2myuj6flenh44h2bcjmhi3ec4x",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/automake-1.16.5-mhwhddwrpsa6pnyvvp6lhlgm4vigrl3d",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/bison-3.8.2-cychjn2by2kilhp3siwwxojvlrqcueup",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/bzip2-1.0.8-qznl3hs3bgldp6hkwes2syduwz7kl4ol",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/c-blosc-1.21.5-abehl6zew3lfiionlswhv3v74keteofn",
  "ca-certificates-mozilla@2023-05-30": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/ca-certificates-mozilla-2023-05-30-yr5vewcsaxxujzdczqfzazeiyy5ok22s",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/cmake-3.24.2-aflo7vsxi74c25ulfctpapnn54wnmnhk",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/curl-8.4.0-cljy3dcvcaozkyw4uv7fdeqzwrh2qzwg",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/datetime-fortran-1.7.0-4ynwokctw3a6jp762lpmtpcnfh7us6kk",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/diffutils-3.9-6sulf26ysg3mitdrnzqpn4le726rllnv",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/findutils-4.9.0-k5jtb4lzzurfpksfymp363npw42y7mvs",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/gettext-0.22.3-zrbrnowc4jaxjmd27bif6pi2fzny7jlz",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/gmake-4.4.1-r6gn6i6hnqiiju2ja6vnh74cw7y7ku2t",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/hdf5-1.14.3-6d5kw3irv4ufih5pg5q7hp2tx6zvadi3",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/hwloc-2.9.1-eyartwswmwd3uloutodpi7dv2ftimumg",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/gcc-8.5.0/intel-oneapi-compilers-2022.1.0-rsloualixgaqwytkvyjeujo33na5hl74",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/gcc-8.5.0/intel-oneapi-compilers-classic-2021.6.0-pztudm2akp43tlxnwxbzfop77a6drsro",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/json-fortran-8.3.0-fzbed3rqp5yvh2mbwa2qdmy5juqw4err",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/krb5-1.20.1-rmzero3wmrkodeajbkdefxmkxdonbbb7",
  "libaccessom2@master": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libaccessom2-master-oyd7uzkdrkuhpji7tluldtvgn63mcbte",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libaec-1.0.6-nyo6cccbjttq2thltiwqbw65odebnbez",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libedit-3.1-20210216-qm5xdopluxdp7bji2vn5oljq3vsqnycd",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libevent-2.1.12-rbdqr5wpdphlbi2g34vvv37qgeihkcen",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libiconv-1.17-3y6mhfzdi6tz2mxjl27eks5dkn435vgx",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libpciaccess-0.17-7nxupyhibb6w6fgsybuev7hezoc623rk",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libsigsegv-2.14-s2r72h6humup6hy5aqrme4yfhnppdail",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libtool-2.4.6-4n4envtiooeppllgz7av3hbxgryqjfv4",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libxcrypt-4.4.35-2o2paughoi5pqad3g6sxedrgxshqnqkc",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/libxml2-2.10.3-micdp6afcr65o4wmtydwv4ay3htz6bak",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/lz4-1.9.4-6h7im7753qzyx6s43dzd7mrroc5cm3qv",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/m4-1.4.19-ty7t3fe7fzjd6xbbeifvc6hg4apx2hcm",
  "mom5@master": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/mom5-master-zoloemhdjgywvcpyodimfikpyibe74yz",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/ncurses-6.4-rbg6b4chtj2ibyygqdvyhl5im74c4jre",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/netcdf-c-4.9.2-2v4k34wjvlnrqyzldby5rhun5jcvh47j",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/netcdf-fortran-4.6.1-547f5njbyicc3ap3hzwkik7m6bjwbvqw",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/nghttp2-1.57.0-exglwvj2veznp7urmwvwvreaueectufy",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/numactl-2.0.14-eg2jpug6stndspge2vyqxp4lt5qcx62q",
  "oasis3-mct@master": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/oasis3-mct-master-32b5mxdjrk3fr6ivla6a2g3vzfr2ll4l",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/openmpi-4.0.2-c6w7gubuqlurxqxdmbdyekswwxbcz7ll",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/openssh-9.5p1-qkquurb34tyf46cdr2nhmoc6oth75z6m",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/openssl-3.1.3-ndunuvkldvcazhl4mfzsepm4tsnizoz4",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/gcc-8.5.0/patchelf-0.17.2-tr5ogxrot3gtfebg2un5dg7w2plh7kar",
  "[email protected]": "/usr",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/pigz-2.7-twew7r5ag3dmmxkuozcjojxk4kuimdfa",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/pkgconf-1.9.5-ip67lrr46s2v6tvtljgitlf575xistht",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/pmix-4.2.2-dsuhyqk3l7lc44tzplnroid5wnfuizsm",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/snappy-1.1.10-jfjts53dpbxkx54nlmtjjqaaizrt3xb6",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/tar-1.34-qdhx2ratkxgo66gw6m3cxohygy7wvn37",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/util-macros-1.19.3-b6456jvl7wbyebhcihnkkpfdbwowejb5",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/xz-5.4.1-b3nbkp7pvvondi5h6xvvoyiba44t4wl4",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/zlib-ng-2.1.4-kg2thruurxgpfranmaxvrytyjlenhivb",
  "[email protected]": "/opt/release/linux-rocky8-x86_64/intel-2021.6.0/zstd-1.5.5-ntyz4di6t4unkyha2q6a7trvshtnpyxj"
}

@CodeGat CodeGat marked this pull request as ready for review April 19, 2024 01:41
aidanheerdegen
aidanheerdegen previously approved these changes Apr 19, 2024
.github/workflows/deploy-2-start.yml Outdated Show resolved Hide resolved
Copy link
Member

@aidanheerdegen aidanheerdegen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just another question.

.github/workflows/deploy-2-start.yml Outdated Show resolved Hide resolved
Copy link
Member

@aidanheerdegen aidanheerdegen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, I think that was a mistake to not use spack.location.json because it is overwritten as currently written

Copy link
Member

@aidanheerdegen aidanheerdegen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My diff was as stale as week old bread.

Sorry for the mixed messages.

.github/workflows/deploy-2-start.yml Show resolved Hide resolved
@CodeGat CodeGat merged commit 12d2743 into main Apr 19, 2024
@CodeGat CodeGat deleted the 51-machine-spack-location branch April 19, 2024 02:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Machine readable spack.location file in releases
2 participants