Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intent to Deprecate HCLv1 #20195

Closed
4 tasks done
schmichael opened this issue Mar 22, 2024 · 3 comments · Fixed by #23912
Closed
4 tasks done

Intent to Deprecate HCLv1 #20195

schmichael opened this issue Mar 22, 2024 · 3 comments · Fixed by #23912
Labels
hcc/jira theme/api HTTP API and SDK issues theme/cli theme/docs Documentation issues and enhancements theme/jobspec type/enhancement
Milestone

Comments

@schmichael
Copy link
Member

schmichael commented Mar 22, 2024

Nomad adopted HCLv2 for Jobspecs in 2020. HCLv2 is not strictly backward compatible with HCLv1, so we have maintained the HCLv1 jobspec parser behind the nomad job run -hcl1 ... flag, the job parse HCLv1 field, and the jobspec Go package.

Deprecation Plan

The time has come to deprecate HCLv1.

  • After Nomad 1.8.0 no new jobspsec fields will be added to the jobspec package.
  • In Nomad 1.9.0 all hclv1 support will be removed.

TODO

Resources

@schmichael schmichael added this to the 1.8.0 milestone Mar 22, 2024
@schmichael schmichael added theme/docs Documentation issues and enhancements theme/cli theme/api HTTP API and SDK issues theme/jobspec labels Mar 22, 2024
@tgross tgross modified the milestones: 1.8.0, 1.8.x Jun 4, 2024
@42wim
Copy link
Contributor

42wim commented Jul 28, 2024

Hi, I'm wondering if there will be a solution for the heredoc issue before hcl1 gets removed ?

@tgross
Copy link
Member

tgross commented Jul 29, 2024

Yeah we'll certainly need to do that.

@tgross
Copy link
Member

tgross commented Sep 4, 2024

Wanted to follow up on this after my investigations in #9838. There's no way for us to do this without direct support in HCL. Adding support for this was previously rejected by the core HCL maintainer team, but even if we got past that (probably possible) it's a lot of work at the very "bottom" of the HCL stack, and we don't have the resources to do this work currently. Given that there's a workaround for this already (either manually escaping in the template.data or using template.source), we're not going to block HCL1 removal for heredoc support.

tgross added a commit that referenced this issue Sep 4, 2024
This changeset removes support for parsing jobspecs via the long-deprecated
HCLv1.

Fixes: #20195
Ref: https://hashicorp.atlassian.net/browse/NET-10220
tgross added a commit that referenced this issue Sep 4, 2024
This changeset removes support for parsing jobspecs via the long-deprecated
HCLv1.

Fixes: #20195
Ref: https://hashicorp.atlassian.net/browse/NET-10220
tgross added a commit that referenced this issue Sep 4, 2024
This changeset removes support for parsing jobspecs via the long-deprecated
HCLv1.

Fixes: #20195
Ref: https://hashicorp.atlassian.net/browse/NET-10220
tgross added a commit that referenced this issue Sep 4, 2024
In Nomad 1.9.0 we're removing support for HCLv1. This has been long deprecated,
but this changeset adds warnings to the command line and package documentation
to make it that much more obvious.

Ref: #23912
Ref: #20195
tgross added a commit that referenced this issue Sep 4, 2024
In Nomad 1.9.0 we're removing support for HCLv1. This has been long deprecated,
but this changeset adds warnings to the command line and package documentation
to make it that much more obvious.

Ref: #23912
Ref: #20195
tgross added a commit that referenced this issue Sep 4, 2024
This changeset removes support for parsing jobspecs via the long-deprecated
HCLv1.

Fixes: #20195
Ref: https://hashicorp.atlassian.net/browse/NET-10220
tgross added a commit that referenced this issue Sep 4, 2024
In Nomad 1.9.0 we're removing support for HCLv1. This has been long deprecated,
but this changeset adds warnings to the command line and package documentation
to make it that much more obvious.

Ref: #23912
Ref: #20195
tgross added a commit that referenced this issue Sep 4, 2024
This changeset removes support for parsing jobspecs via the long-deprecated
HCLv1.

Fixes: #20195
Ref: https://hashicorp.atlassian.net/browse/NET-10220
tgross added a commit that referenced this issue Sep 5, 2024
This changeset removes support for parsing jobspecs via the long-deprecated
HCLv1.

Fixes: #20195
Ref: https://hashicorp.atlassian.net/browse/NET-10220
tgross added a commit that referenced this issue Sep 5, 2024
In Nomad 1.9.0 we're removing support for HCLv1. This has been long deprecated,
but this changeset adds warnings to the command line and package documentation
to make it that much more obvious.

Ref: #23912
Ref: #20195
@tgross tgross closed this as completed in a9beef7 Sep 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hcc/jira theme/api HTTP API and SDK issues theme/cli theme/docs Documentation issues and enhancements theme/jobspec type/enhancement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants