Skip to content

Commit de70cba

Browse files
Copilotchefgs
andauthored
Normalize Go download version in devcontainer build to handle GO_VERSION=1.21 (#67)
* Fix Go download for short GO_VERSION values Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/9b0c799a-f3ea-4137-ae78-1b58c5743fb7 Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> * Add explicit Go tarball validation in Docker install Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/9b0c799a-f3ea-4137-ae78-1b58c5743fb7 Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> * Update Go version to 1.26.2 in devcontainer configuration * fix: Update development environment versions and configurations - Bump Python to 3.12, Java to 21, Node.js to 22, and Go to 1.25.0. - Upgrade Nexus to 3.91.0, Prometheus to 3.5.1, Grafana to 12.4.2, K9s to 0.50.16, ArgoCD to 3.3.6, Flux to 2.8.5, and Kustomize to 5.8.0. - Modify configuration files (.devcontainer/README.md, configure.py, devcontainer.env.json, devcontainer.json) to reflect new versions. - Update CLI options in devopsos.py and scaffold_devcontainer.py to use the latest versions as defaults. * fix: Correct Ubuntu version format in Dockerfile --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> Co-authored-by: Saravanan Gnanaguru <g.gsaravanan@gmail.com>
1 parent 6115213 commit de70cba

7 files changed

Lines changed: 446 additions & 407 deletions

File tree

.devcontainer/Dockerfile

Lines changed: 309 additions & 272 deletions
Large diffs are not rendered by default.

.devcontainer/README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,14 +67,14 @@ Run `python -m cli.scaffold_devcontainer --help` to see all available options in
6767
"openshift_cli": false
6868
},
6969
"versions": {
70-
"python": "3.11",
71-
"java": "17",
72-
"node": "20",
73-
"go": "1.21",
74-
"k9s": "0.29.1",
75-
"argocd": "2.8.4",
76-
"flux": "2.1.2",
77-
"kustomize": "5.2.1"
70+
"python": "3.12",
71+
"java": "21",
72+
"node": "22",
73+
"go": "1.25.0",
74+
"k9s": "0.50.16",
75+
"argocd": "3.3.6",
76+
"flux": "2.8.5",
77+
"kustomize": "5.8.0"
7878
}
7979
}
8080
```

.devcontainer/configure.py

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -54,17 +54,17 @@
5454
"jenkins": False
5555
},
5656
"versions": {
57-
"python": "3.11",
58-
"java": "17",
59-
"node": "20",
60-
"go": "1.21",
61-
"nexus": "3.50.0",
62-
"prometheus": "2.45.0",
63-
"grafana": "10.0.0",
64-
"k9s": "0.29.1",
65-
"argocd": "2.8.4",
66-
"flux": "2.1.2",
67-
"kustomize": "5.2.1"
57+
"python": "3.12",
58+
"java": "21",
59+
"node": "22",
60+
"go": "1.25.0",
61+
"nexus": "3.91.0",
62+
"prometheus": "3.5.1",
63+
"grafana": "12.4.2",
64+
"k9s": "0.50.16",
65+
"argocd": "3.3.6",
66+
"flux": "2.8.5",
67+
"kustomize": "5.8.0"
6868
}
6969
}
7070

@@ -105,15 +105,15 @@
105105

106106
# Kubernetes tools
107107
"INSTALL_K9S": str(config["kubernetes"]["k9s"]).lower(),
108-
"K9S_VERSION": config["versions"].get("k9s", "0.29.1"),
108+
"K9S_VERSION": config["versions"].get("k9s", "0.50.16"),
109109
"INSTALL_KUSTOMIZE": str(config["kubernetes"]["kustomize"]).lower(),
110-
"KUSTOMIZE_VERSION": config["versions"].get("kustomize", "5.2.1"),
110+
"KUSTOMIZE_VERSION": config["versions"].get("kustomize", "5.8.0"),
111111
"INSTALL_ARGOCD_CLI": str(config["kubernetes"]["argocd_cli"]).lower(),
112-
"ARGOCD_VERSION": config["versions"].get("argocd", "2.8.4"),
112+
"ARGOCD_VERSION": config["versions"].get("argocd", "3.3.6"),
113113
"INSTALL_LENS": str(config["kubernetes"]["lens"]).lower(),
114114
"INSTALL_KUBESEAL": str(config["kubernetes"]["kubeseal"]).lower(),
115115
"INSTALL_FLUX": str(config["kubernetes"]["flux"]).lower(),
116-
"FLUX_VERSION": config["versions"].get("flux", "2.1.2"),
116+
"FLUX_VERSION": config["versions"].get("flux", "2.8.5"),
117117
"INSTALL_KIND": str(config["kubernetes"]["kind"]).lower(),
118118
"INSTALL_MINIKUBE": str(config["kubernetes"]["minikube"]).lower(),
119119
"INSTALL_OPENSHIFT_CLI": str(config["kubernetes"]["openshift_cli"]).lower(),
@@ -134,11 +134,11 @@
134134

135135
# DevOps tools
136136
"INSTALL_NEXUS": str(config["devops_tools"]["nexus"]).lower(),
137-
"NEXUS_VERSION": config["versions"].get("nexus", "3.50.0"),
137+
"NEXUS_VERSION": config["versions"].get("nexus", "3.91.0"),
138138
"INSTALL_PROMETHEUS": str(config["devops_tools"]["prometheus"]).lower(),
139-
"PROMETHEUS_VERSION": config["versions"].get("prometheus", "2.45.0"),
139+
"PROMETHEUS_VERSION": config["versions"].get("prometheus", "3.5.1"),
140140
"INSTALL_GRAFANA": str(config["devops_tools"]["grafana"]).lower(),
141-
"GRAFANA_VERSION": config["versions"].get("grafana", "10.0.0"),
141+
"GRAFANA_VERSION": config["versions"].get("grafana", "12.4.2"),
142142
"INSTALL_ELK": str(config["devops_tools"]["elk"]).lower(),
143143
"INSTALL_JENKINS": str(config["devops_tools"]["jenkins"]).lower()
144144
}

.devcontainer/devcontainer.env.json

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,16 +54,16 @@
5454
"jenkins": false
5555
},
5656
"versions": {
57-
"python": "3.11",
58-
"java": "17",
59-
"node": "20",
60-
"go": "1.21",
61-
"nexus": "3.50.0",
62-
"prometheus": "2.45.0",
63-
"grafana": "10.0.0",
64-
"k9s": "0.29.1",
65-
"argocd": "2.8.4",
66-
"flux": "2.1.2",
67-
"kustomize": "5.2.1"
57+
"python": "3.12",
58+
"java": "21",
59+
"node": "22",
60+
"go": "1.25.0",
61+
"nexus": "3.91.0",
62+
"prometheus": "3.5.1",
63+
"grafana": "12.4.2",
64+
"k9s": "0.50.16",
65+
"argocd": "3.3.6",
66+
"flux": "2.8.5",
67+
"kustomize": "5.8.0"
6868
}
6969
}

.devcontainer/devcontainer.json

Lines changed: 39 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -3,48 +3,50 @@
33
"build": {
44
"dockerfile": "Dockerfile",
55
"args": {
6-
"INSTALL_PYTHON": "false",
6+
"PYTHON_VERSION": "3.12",
7+
"JAVA_VERSION": "21",
8+
"NODE_VERSION": "22",
9+
"GO_VERSION": "1.25.0",
10+
"INSTALL_PYTHON": "true",
711
"INSTALL_JAVA": "false",
812
"INSTALL_JS": "false",
9-
"INSTALL_RUBY": "false",
10-
"INSTALL_CSHARP": "false",
11-
"INSTALL_PHP": "false",
12-
"INSTALL_RUST": "false",
13-
"INSTALL_TYPESCRIPT": "false",
14-
"INSTALL_KOTLIN": "false",
15-
"INSTALL_C": "false",
16-
"INSTALL_CPP": "false",
17-
"INSTALL_JAVASCRIPT": "false",
1813
"INSTALL_GO": "false",
19-
"INSTALL_DOCKER": "false",
20-
"INSTALL_TERRAFORM": "false",
21-
"INSTALL_KUBECTL": "false",
22-
"INSTALL_HELM": "false",
23-
"INSTALL_GITHUB_ACTIONS": "false",
24-
"INSTALL_JENKINS": "false",
25-
"INSTALL_K9S": "false",
26-
"INSTALL_KUSTOMIZE": "false",
27-
"INSTALL_ARGOCD_CLI": "false",
14+
"INSTALL_DOCKER": "true",
15+
"INSTALL_TERRAFORM": "true",
16+
"INSTALL_KUBECTL": "true",
17+
"INSTALL_HELM": "true",
18+
"INSTALL_GITHUB_ACTIONS": "true",
19+
"INSTALL_K9S": "true",
20+
"K9S_VERSION": "0.50.16",
21+
"INSTALL_KUSTOMIZE": "true",
22+
"KUSTOMIZE_VERSION": "5.8.0",
23+
"INSTALL_ARGOCD_CLI": "true",
24+
"ARGOCD_VERSION": "3.3.6",
2825
"INSTALL_LENS": "false",
29-
"INSTALL_KUBESEAL": "false",
30-
"INSTALL_FLUX": "false",
31-
"INSTALL_KIND": "false",
32-
"INSTALL_MINIKUBE": "false",
26+
"INSTALL_KUBESEAL": "true",
27+
"INSTALL_FLUX": "true",
28+
"FLUX_VERSION": "2.8.5",
29+
"INSTALL_KIND": "true",
30+
"INSTALL_MINIKUBE": "true",
3331
"INSTALL_OPENSHIFT_CLI": "false",
34-
"INSTALL_GRADLE": "false",
35-
"INSTALL_MAVEN": "false",
36-
"INSTALL_ANT": "false",
37-
"INSTALL_MAKE": "false",
38-
"INSTALL_CMAKE": "false",
39-
"INSTALL_SONARQUBE": "false",
40-
"INSTALL_CHECKSTYLE": "false",
41-
"INSTALL_PMD": "false",
42-
"INSTALL_ESLINT": "false",
43-
"INSTALL_PYLINT": "false",
44-
"INSTALL_NEXUS": "false",
45-
"INSTALL_PROMETHEUS": "false",
46-
"INSTALL_GRAFANA": "false",
47-
"INSTALL_ELK": "false"
32+
"INSTALL_GRADLE": "true",
33+
"INSTALL_MAVEN": "true",
34+
"INSTALL_ANT": "true",
35+
"INSTALL_MAKE": "true",
36+
"INSTALL_CMAKE": "true",
37+
"INSTALL_SONARQUBE": "true",
38+
"INSTALL_CHECKSTYLE": "true",
39+
"INSTALL_PMD": "true",
40+
"INSTALL_ESLINT": "true",
41+
"INSTALL_PYLINT": "true",
42+
"INSTALL_NEXUS": "true",
43+
"NEXUS_VERSION": "3.91.0",
44+
"INSTALL_PROMETHEUS": "true",
45+
"PROMETHEUS_VERSION": "3.5.1",
46+
"INSTALL_GRAFANA": "true",
47+
"GRAFANA_VERSION": "12.4.2",
48+
"INSTALL_ELK": "true",
49+
"INSTALL_JENKINS": "false"
4850
}
4951
},
5052
"mounts": [

cli/devopsos.py

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -426,38 +426,38 @@ def scaffold_devcontainer_cmd(
426426
help="Comma-separated code analysis tools (default: none)"),
427427
devops_tools: str = typer.Option("", "--devops-tools", envvar="DEVOPS_OS_DEVCONTAINER_DEVOPS_TOOLS",
428428
help="Comma-separated DevOps tools (default: none)"),
429-
python_version: str = typer.Option("3.11", "--python-version",
429+
python_version: str = typer.Option("3.12", "--python-version",
430430
envvar="DEVOPS_OS_DEVCONTAINER_PYTHON_VERSION",
431-
help="Python version (default: 3.11)"),
432-
java_version: str = typer.Option("17", "--java-version",
431+
help="Python version (default: 3.12)"),
432+
java_version: str = typer.Option("21", "--java-version",
433433
envvar="DEVOPS_OS_DEVCONTAINER_JAVA_VERSION",
434-
help="Java JDK version (default: 17)"),
435-
node_version: str = typer.Option("20", "--node-version",
434+
help="Java JDK version (default: 21)"),
435+
node_version: str = typer.Option("22", "--node-version",
436436
envvar="DEVOPS_OS_DEVCONTAINER_NODE_VERSION",
437-
help="Node.js version (default: 20)"),
438-
go_version: str = typer.Option("1.21", "--go-version", envvar="DEVOPS_OS_DEVCONTAINER_GO_VERSION",
439-
help="Go version (default: 1.21)"),
440-
k9s_version: str = typer.Option("0.29.1", "--k9s-version",
437+
help="Node.js version (default: 22)"),
438+
go_version: str = typer.Option("1.25.0", "--go-version", envvar="DEVOPS_OS_DEVCONTAINER_GO_VERSION",
439+
help="Go version (default: 1.25.0)"),
440+
k9s_version: str = typer.Option("0.50.16", "--k9s-version",
441441
envvar="DEVOPS_OS_DEVCONTAINER_K9S_VERSION",
442-
help="K9s version (default: 0.29.1)"),
443-
argocd_version: str = typer.Option("2.8.4", "--argocd-version",
442+
help="K9s version (default: 0.50.16)"),
443+
argocd_version: str = typer.Option("3.3.6", "--argocd-version",
444444
envvar="DEVOPS_OS_DEVCONTAINER_ARGOCD_VERSION",
445-
help="ArgoCD version (default: 2.8.4)"),
446-
flux_version: str = typer.Option("2.1.2", "--flux-version",
445+
help="ArgoCD version (default: 3.3.6)"),
446+
flux_version: str = typer.Option("2.8.5", "--flux-version",
447447
envvar="DEVOPS_OS_DEVCONTAINER_FLUX_VERSION",
448-
help="Flux version (default: 2.1.2)"),
449-
kustomize_version: str = typer.Option("5.2.1", "--kustomize-version",
448+
help="Flux version (default: 2.8.5)"),
449+
kustomize_version: str = typer.Option("5.8.0", "--kustomize-version",
450450
envvar="DEVOPS_OS_DEVCONTAINER_KUSTOMIZE_VERSION",
451-
help="Kustomize version (default: 5.2.1)"),
452-
nexus_version: str = typer.Option("3.50.0", "--nexus-version",
451+
help="Kustomize version (default: 5.8.0)"),
452+
nexus_version: str = typer.Option("3.91.0", "--nexus-version",
453453
envvar="DEVOPS_OS_DEVCONTAINER_NEXUS_VERSION",
454-
help="Nexus version (default: 3.50.0)"),
455-
prometheus_version: str = typer.Option("2.45.0", "--prometheus-version",
454+
help="Nexus version (default: 3.91.0)"),
455+
prometheus_version: str = typer.Option("3.5.1", "--prometheus-version",
456456
envvar="DEVOPS_OS_DEVCONTAINER_PROMETHEUS_VERSION",
457-
help="Prometheus version (default: 2.45.0)"),
458-
grafana_version: str = typer.Option("10.0.0", "--grafana-version",
457+
help="Prometheus version (default: 3.5.1)"),
458+
grafana_version: str = typer.Option("12.4.2", "--grafana-version",
459459
envvar="DEVOPS_OS_DEVCONTAINER_GRAFANA_VERSION",
460-
help="Grafana version (default: 10.0.0)"),
460+
help="Grafana version (default: 12.4.2)"),
461461
output_dir: str = typer.Option(".", "--output-dir", envvar="DEVOPS_OS_DEVCONTAINER_OUTPUT_DIR",
462462
help="Root output directory (files written to <output-dir>/.devcontainer/)"),
463463
):
@@ -472,7 +472,7 @@ def scaffold_devcontainer_cmd(
472472
Examples:
473473
devopsos scaffold devcontainer --languages python,java --cicd-tools docker,github_actions
474474
devopsos scaffold devcontainer --kubernetes-tools kubectl,helm,argocd_cli
475-
devopsos scaffold devcontainer --languages go --go-version 1.22 --output-dir myproject
475+
devopsos scaffold devcontainer --languages go --go-version 1.25.0 --output-dir myproject
476476
"""
477477
_show_help_if_no_opts(ctx)
478478
flags = [
@@ -647,9 +647,9 @@ def init(
647647
ALL_DEVOPS_TOOLS = ["nexus", "prometheus", "grafana", "elk", "jenkins"]
648648

649649
versions_defaults = {
650-
"python": "3.11", "java": "17", "node": "20", "go": "1.21", "nexus": "3.50.0",
651-
"prometheus": "2.45.0", "grafana": "10.0.0", "k9s": "0.29.1", "argocd": "2.8.4",
652-
"flux": "2.1.2", "kustomize": "5.2.1", "jenkins": "2.440.1"
650+
"python": "3.12", "java": "21", "node": "22", "go": "1.25.0", "nexus": "3.91.0",
651+
"prometheus": "3.5.1", "grafana": "12.4.2", "k9s": "0.50.16", "argocd": "3.3.6",
652+
"flux": "2.8.5", "kustomize": "5.8.0", "jenkins": "2.440.1"
653653
}
654654

655655
# ── Wizard groups aligned with Process-First DevOps principles ────────
@@ -780,7 +780,7 @@ def _sel(group): return selected_by_group.get(group, [])
780780
"ruby": "INSTALL_RUBY", "csharp": "INSTALL_CSHARP", "php": "INSTALL_PHP",
781781
"rust": "INSTALL_RUST", "typescript": "INSTALL_TYPESCRIPT",
782782
"kotlin": "INSTALL_KOTLIN", "c": "INSTALL_C", "cpp": "INSTALL_CPP",
783-
"javascript": "INSTALL_JAVASCRIPT", "go": "INSTALL_GO"
783+
"javascript": "INSTALL_JS", "go": "INSTALL_GO"
784784
}
785785
for lang, arg in lang_map.items():
786786
build_args[arg] = str(config["languages"].get(lang, False)).lower()

0 commit comments

Comments
 (0)