错误你的锁文件需要更新,但是 yarn 是 运行 with `--frozen-lockfile`
error Your lockfile needs to be updated, but yarn was run with `--frozen-lockfile`
我的 yarn.lock 文件中有一个依赖项存在问题。问题出在 ldapjs 上,最新版本有一个关于用户或密码中特殊字符的错误,所以我想在最新的工作版本 1.0.2 中冻结它。
当我提交我的代码到master分支时,构建这个项目的步骤开始失败说出标题的消息。
这是我的 dockerfile
FROM repository/node-oracle:10.15.3
LABEL maintainer="Me"
RUN yarn cache clean
# Add Tini
ENV TINI_VERSION v0.18.0
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini
RUN chmod +x /tini
ENTRYPOINT ["/tini", "--"]
WORKDIR /usr/src/auth
COPY . .
RUN yarn install --frozen-lockfile --non-interactive --silent
ENV PATH /usr/src/auth/node_modules/.bin:$PATH
EXPOSE 3000
CMD ["node", "./bin/www"]
关于如何使这项工作有任何变通办法吗?
此外,作为额外信息,我能够 运行 在功能分支中使用此步骤的管道,消息在开发和主分支中启动。
[更新]
这些是在我的 yarn.lock 文件中更新和冻结的依赖项
activedirectory@^0.7.2:
version "0.7.2"
resolved "https://registry.yarnpkg.com/activedirectory/-/activedirectory-0.7.2.tgz#19286d10c6b24a98cc906dc638256191686fa91f"
integrity sha1-GShtEMaySpjMkG3GOCVhkWhvqR8=
dependencies:
async ">= 0.1.22"
bunyan ">= 1.3.5"
**ldapjs "=1.0.2"**
underscore ">= 1.4.3"
***ldapjs@1.0.2***:
version "1.0.2"
resolved "https://registry.yarnpkg.com/ldapjs/-/ldapjs-1.0.2.tgz#346e040a95a936e90c47edd6ede5df257dd21ee6"
integrity sha512-XzF2BEGeM/nenYDAJvkDMYovZ07fIGalrYD+suprSqUWPCWpoa+a4vWl5g8o/En85m6NHWBpirDFNClWLAd77w==
dependencies:
asn1 "0.2.1"
assert-plus "0.1.5"
bunyan "0.22.1"
nopt "2.1.1"
pooling "0.4.6"
optionalDependencies:
dtrace-provider "0.2.8"
只是一个更新。经过几次尝试,我终于能够做我想做的事了。从 ldap.js 和活动目录(包含 ldap.js 库)中删除 ^ 按预期完成了工作。
我陷入了同样的错误,问题是我的 yarn.lock 文件不是最新的。我遵循 following link 并解决了我的问题。
显然,我只需要 运行 yarn install
更新我的 yarn.lock 文件并推送到 repo。
希望这对以后的人有所帮助。
我的 yarn.lock 文件中有一个依赖项存在问题。问题出在 ldapjs 上,最新版本有一个关于用户或密码中特殊字符的错误,所以我想在最新的工作版本 1.0.2 中冻结它。
当我提交我的代码到master分支时,构建这个项目的步骤开始失败说出标题的消息。
这是我的 dockerfile
FROM repository/node-oracle:10.15.3
LABEL maintainer="Me"
RUN yarn cache clean
# Add Tini
ENV TINI_VERSION v0.18.0
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini
RUN chmod +x /tini
ENTRYPOINT ["/tini", "--"]
WORKDIR /usr/src/auth
COPY . .
RUN yarn install --frozen-lockfile --non-interactive --silent
ENV PATH /usr/src/auth/node_modules/.bin:$PATH
EXPOSE 3000
CMD ["node", "./bin/www"]
关于如何使这项工作有任何变通办法吗?
此外,作为额外信息,我能够 运行 在功能分支中使用此步骤的管道,消息在开发和主分支中启动。
[更新]
这些是在我的 yarn.lock 文件中更新和冻结的依赖项
activedirectory@^0.7.2:
version "0.7.2"
resolved "https://registry.yarnpkg.com/activedirectory/-/activedirectory-0.7.2.tgz#19286d10c6b24a98cc906dc638256191686fa91f"
integrity sha1-GShtEMaySpjMkG3GOCVhkWhvqR8=
dependencies:
async ">= 0.1.22"
bunyan ">= 1.3.5"
**ldapjs "=1.0.2"**
underscore ">= 1.4.3"
***ldapjs@1.0.2***:
version "1.0.2"
resolved "https://registry.yarnpkg.com/ldapjs/-/ldapjs-1.0.2.tgz#346e040a95a936e90c47edd6ede5df257dd21ee6"
integrity sha512-XzF2BEGeM/nenYDAJvkDMYovZ07fIGalrYD+suprSqUWPCWpoa+a4vWl5g8o/En85m6NHWBpirDFNClWLAd77w==
dependencies:
asn1 "0.2.1"
assert-plus "0.1.5"
bunyan "0.22.1"
nopt "2.1.1"
pooling "0.4.6"
optionalDependencies:
dtrace-provider "0.2.8"
只是一个更新。经过几次尝试,我终于能够做我想做的事了。从 ldap.js 和活动目录(包含 ldap.js 库)中删除 ^ 按预期完成了工作。
我陷入了同样的错误,问题是我的 yarn.lock 文件不是最新的。我遵循 following link 并解决了我的问题。
显然,我只需要 运行 yarn install
更新我的 yarn.lock 文件并推送到 repo。
希望这对以后的人有所帮助。