本文介绍了将.cache文件夹文件路径从绝对路径更改为相对路径。有可能吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
来自我上一个问题Gatsby .cache folder in AWS Amplify Console,我发现AWS Amplify使用的Docker映像容器在每次构建时都会更改其路径,但.cache文件夹文件路径是绝对路径。是否可以将它们设置为相对于文件夹,以便可以跨构建分发.cache?对于这个糟糕的解释,我深表歉意,希望有人能理解...推荐答案
尝试以下操作:
Buildspec.yml
version: 0.2
phases:
pre_build:
commands:
- mkdir -p /build-directory
- cp -a ${CODEBUILD_SRC_DIR}/. /build-directory
- cd /build-directory
- yarn
build:
commands:
- cd /build-directory
- gatsby build
post_build:
commands:
- cd /build-directory
- cp -a /build-directory/. ${CODEBUILD_SRC_DIR}
cache:
paths:
- 'node_modules/**/*'
- 'public/**/*'
- '.cache/**/*'
在撰写本文时,还没有一个整齐的解决方案。缓存整个.cache
目录最终将引发以下错误:
Gatsby假设到.cache
的绝对路径在不同版本之间是一致的。这与CodeBuild不太兼容,因为每次构建的构建目录都会发生变化。因此,Gatsby无法找到缓存的文件并引发错误。
出于这个原因,创建一致的路径并将构件带到那里将解决问题。构建完成后,请确保将新构件带到CODEBUILD_SRC_DIR
,以便下次可以缓存它们!
这篇关于将.cache文件夹文件路径从绝对路径更改为相对路径。有可能吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!