ethereum / sourcify

Decentralized Solidity contract source code verification service
https://sourcify.dev
MIT License
782 stars 395 forks source link

$REPOSITORY_PATH value always has to match /home/data/repository #1158

Closed svienot closed 1 year ago

svienot commented 1 year ago

server.yaml specifies that the server container sees the repository at a hardcoded path (/home/data/repository) which is mounted on the host file system at the location provided by the $REPOSITORY_PATH env variable.

However, it seems that the server uses the value of process.env.REPOSITORY_PATH as its internal path and never uses /home/data/repository. So the only way for the server to work is when the value of $REPOSITORY_PATH matches (either relatively or absolutely) /home/data/repository, which is confusing.

View in Huly HI-449

kuzdogan commented 1 year ago

Just a small correction. The only way for server to work (with a container) is to have a REPOSITORY_PATH that is two levels above of the environments/ in the host machine which in turn will resolve to the same relative path in the container...

TLDR; REPOSITORY_PATH needs to be set to ../../data/repository and in the host machine the repo needs to be there.

.
|-- data
|   |-- repository
|   `-- solc-bin
`-- sourcify
    |-- environments
    |-- h5ai-nginx
    |-- packages
    |-- scripts
    |-- services
    |-- src
    |-- test
    `-- ui
svienot commented 1 year ago

I confirm this is exactly what I have observed, thanks.