dispatch.yaml没有得到更新 [英] dispatch.yaml not getting updated

查看:113
本文介绍了dispatch.yaml没有得到更新的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我编辑了我的dispatch.yaml,并使用
appcfg.py update_dispatch部署在应用引擎中。但是,当我去看StackDriver下的源代码调试,我没有看到变化。



为什么变化没有得到体现。但是当我通过appcfg.py更新部署完整的应用程序时。

但是,如果我只想更新dispatch,我该怎么办?

虽然存在争议,但我认为这是预期的行为(至少从历史的角度来看 - 即使是因为增加了对多个服务/模块的支持)。



代码本身和代码的作用有区别 - 至少对于应用程序级配置文件: dispatch.yaml cron.yaml index.yaml queue.yaml 。与这些文件对应的配置适用于整个应用程序,而不适用于单个服务/模块。但是,应用程序代码仅存在于一个或多个服务/模块代码存储库中,没有应用程序级存储库(尚未)。因此,要进行版本控制,这些配置文件会存在于一个(或多个)服务/模块代码存储库中。



当您查看StackDriver时,查看包含这些文件的服务/模块代码的特定版本,并且要查看更改,则需要更新相应的服务/模块代码。这就是 appcfg.py update 所做的。这可能会也可能不会总是更新与这些配置文件相对应的实时配置(行为!),无论出于何种原因。



这就是为什么每个配置文件都有一个相应的命令来更新实时配置/行为,这可以独立于它们驻留的服务/模块代码的更新来完成。这就是 appcfg.py update_dispatch 的作用 - 它只更新整个应用程序的实际调度规则。



相关: Appengine dispatch.yaml文件影响一个特定的模块版本?


I edited my dispatch.yaml and deployed on app engine using appcfg.py update_dispatch .

But when I go and see source code under StackDriver debug, I don't see the change.

Why the changes doesn't get reflected. But when I deploy complete app by appcfg.py update . the changes get reflected.

But in case, If I only want to update dispatch how do I do???

解决方案

While debatable, I'd say this is somehow the expected behaviour (at least from a historic prospective - even since support for multiple service/modules was added).

There is a difference between the code itself and what the code does - at least for the app-level config files: dispatch.yaml, cron.yaml, index.yaml and queue.yaml. The configurations corresponding to these files apply to the entire application, not to a single service/module. But the app code exists only in one or more service/module code repositories, there is no app-level repository (yet). So, to be version-controlled, these config files are present into one (or more) service/module code repositories.

When you're looking in StackDriver you're looking at a specific version of the service/module code containing those files and, to see a change, you need to update the respective service/module code. This is what appcfg.py update does. Which may or may not always update the live configurations (the behaviour!) corresponding to these configurations files, for whatever reason.

This is why each of these configuration files also has a corresponding command to update the live configuration/behaviour, which can be done independently from the updates of the service/module code in which they reside. This is what appcfg.py update_dispatch does - it only updates the actual Dispatch Rules of the entire app.

Related: Is Appengine dispatch.yaml file affecting a specific module version?

这篇关于dispatch.yaml没有得到更新的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆