Leif,

Your proposal seems fine to me.  I have a PR on github that converts the
existing parent.config to YAML,
https://github.com/apache/trafficserver/pull/4857
In this PR, I had made it backwards compatible with the existing format.
The change involves a lot of changes to the ControlMatcher which is also
used by other configs.

Based upon your proposal, I can go back and remove the backwards
compatibility and just support YAML.  But, I would only use the existing
parent.config variables perhaps renaming
those to the nexthop naming we discussed last summer.  This would be the
initial PR just to convert to YAML.  As the conversion to the next hop
stuff would involve a lot more work, I
think that would come in later PR's.  How does that sound?

thanks
John Rushford
jrushf...@apache.org

On Thu, Mar 14, 2019 at 12:26 PM Leif Hedstrom <zw...@apache.org> wrote:

> Hi all,
>
> As we’re making more progress migrating towards YAML configurations, I’d
> like to make two proposals for v9.0.0:
>
>
> 1) As we migrate a configuration to the new YAML format, we only support
> YAML. I.e. no backwards compatibility layers.  Of course, we only break
> such compatibility in major versions, which is also why we want to get as
> much of this in before 9.0.0 as possible.
>
> 2) We remove the following configurations from records.config, and only
> support the default config files names (e.g. ip_allow.yaml).
>
>         proxy.config.cache.storage_filename
>         proxy.config.cache.control.filename
>         proxy.config.cache.ip_allow.filename
>         proxy.config.cache.hosting_filename
>         proxy.config.cache.volume_filename
>         proxy.config.dns.splitdns.filename
>         proxy.config.log.config.filename
>         proxy.config.url_remap.filename
>
>
> Some justifications:
>
> For 1;  We will name the new configs .yaml, e.g. ip_allow.yaml, which
> allows everyone to keep the old .config file (e.g. ip_allow.config), such
> that you can downgrade the ATS binaries, and keep the configuration tree.
>
> For 1; A big reason for the migration to the new YAML is that we can add
> new features here in a much more reasonable way. Trying to maintain both
> the old and the new configuration formats puts an unreasonable burden on
> development. It also makes for a less friendly UX IMO, where if you stick
> to the old version of the configurations, you won’t be able to use the same
> features as if you pick the YAML format.
>
> For 2: These configurations were just kinda useless to begin with, and
> with YAML, and the organization of YAML configs into name spaces, we can
> move towards a single configuration file / format approach (with #include
> and config.d/  directories). These old configurations do not play well with
> this goal.
>
>
> If there are concerns about any of these, please voice them here. I
> imagine the most controversial is 1) above, so if you feel strongly here,
> be prepared to back this with valid arguments, and development resources
> :-).
>
> Cheers,
>
> — Leif
>
>

Reply via email to