gitops 1.9.0__tar.gz → 1.10.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. {gitops-1.9.0 → gitops-1.10.1}/.github/workflows/release-please.yaml +28 -3
  2. {gitops-1.9.0 → gitops-1.10.1}/.github/workflows/test.yml +29 -6
  3. gitops-1.10.1/.release-please-manifest.json +5 -0
  4. {gitops-1.9.0 → gitops-1.10.1}/CHANGELOG.md +23 -0
  5. {gitops-1.9.0 → gitops-1.10.1}/Dockerfile +2 -2
  6. {gitops-1.9.0 → gitops-1.10.1}/PKG-INFO +1 -1
  7. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/CHANGELOG.md +15 -0
  8. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/Chart.yaml +1 -1
  9. gitops-1.10.1/charts/gitops/README.md +11 -0
  10. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/deployment.yml +1 -2
  11. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/values.yaml +1 -5
  12. {gitops-1.9.0 → gitops-1.10.1}/gitops/__init__.py +1 -1
  13. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/settings.py +10 -0
  14. gitops-1.10.1/gitops_server/version.py +1 -0
  15. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/workers/deployer/deploy.py +2 -0
  16. {gitops-1.9.0 → gitops-1.10.1}/pyproject.toml +1 -1
  17. {gitops-1.9.0 → gitops-1.10.1}/tests/test_deploy.py +21 -0
  18. {gitops-1.9.0 → gitops-1.10.1}/uv.lock +247 -145
  19. gitops-1.9.0/.release-please-manifest.json +0 -5
  20. gitops-1.9.0/charts/gitops/README.md +0 -8
  21. gitops-1.9.0/gitops_server/version.py +0 -1
  22. {gitops-1.9.0 → gitops-1.10.1}/.dockerignore +0 -0
  23. {gitops-1.9.0 → gitops-1.10.1}/.github/CODEOWNERS +0 -0
  24. {gitops-1.9.0 → gitops-1.10.1}/.gitignore +0 -0
  25. {gitops-1.9.0 → gitops-1.10.1}/.mise.toml +0 -0
  26. {gitops-1.9.0 → gitops-1.10.1}/.pre-commit-config.yaml +0 -0
  27. {gitops-1.9.0 → gitops-1.10.1}/CLAUDE.md +0 -0
  28. {gitops-1.9.0 → gitops-1.10.1}/LICENSE +0 -0
  29. {gitops-1.9.0 → gitops-1.10.1}/README.md +0 -0
  30. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/.helmignore +0 -0
  31. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/_helpers.tpl +0 -0
  32. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/certificate.yml +0 -0
  33. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/environment.yml +0 -0
  34. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/ingress.yml +0 -0
  35. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/issuer.yml +0 -0
  36. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/pdb.yml +0 -0
  37. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/secrets.yml +0 -0
  38. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/service.yml +0 -0
  39. {gitops-1.9.0 → gitops-1.10.1}/charts/gitops/templates/serviceaccount.yaml +0 -0
  40. {gitops-1.9.0 → gitops-1.10.1}/docker-compose.yml +0 -0
  41. {gitops-1.9.0 → gitops-1.10.1}/docs/plans/2026-03-13-kms-encryption-design.md +0 -0
  42. {gitops-1.9.0 → gitops-1.10.1}/gitops/common/__init__.py +0 -0
  43. {gitops-1.9.0 → gitops-1.10.1}/gitops/common/app.py +0 -0
  44. {gitops-1.9.0 → gitops-1.10.1}/gitops/common/utils.py +0 -0
  45. {gitops-1.9.0 → gitops-1.10.1}/gitops/core.py +0 -0
  46. {gitops-1.9.0 → gitops-1.10.1}/gitops/main.py +0 -0
  47. {gitops-1.9.0 → gitops-1.10.1}/gitops/py.typed +0 -0
  48. {gitops-1.9.0 → gitops-1.10.1}/gitops/settings.py +0 -0
  49. {gitops-1.9.0 → gitops-1.10.1}/gitops/shorthands.py +0 -0
  50. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/__init__.py +0 -0
  51. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/apps.py +0 -0
  52. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/async_runner.py +0 -0
  53. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/cli.py +0 -0
  54. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/exceptions.py +0 -0
  55. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/images.py +0 -0
  56. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/kube.py +0 -0
  57. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/tags.py +0 -0
  58. {gitops-1.9.0 → gitops-1.10.1}/gitops/utils/yaml.py +0 -0
  59. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/CHANGELOG.md +0 -0
  60. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/README.md +0 -0
  61. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/__init__.py +0 -0
  62. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/app.py +0 -0
  63. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/main.py +0 -0
  64. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/types.py +0 -0
  65. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/utils/__init__.py +0 -0
  66. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/utils/git.py +0 -0
  67. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/utils/github.py +0 -0
  68. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/utils/github_auth.py +0 -0
  69. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/utils/slack.py +0 -0
  70. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/workers/__init__.py +0 -0
  71. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/workers/deployer/__init__.py +0 -0
  72. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/workers/deployer/hooks.py +0 -0
  73. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/workers/deployer/semaphore_manager.py +0 -0
  74. {gitops-1.9.0 → gitops-1.10.1}/gitops_server/workers/deployer/worker.py +0 -0
  75. {gitops-1.9.0 → gitops-1.10.1}/release-please-config.json +0 -0
  76. {gitops-1.9.0 → gitops-1.10.1}/release.py +0 -0
  77. {gitops-1.9.0 → gitops-1.10.1}/renovate.json +0 -0
  78. {gitops-1.9.0 → gitops-1.10.1}/ruff.toml +0 -0
  79. {gitops-1.9.0 → gitops-1.10.1}/secrets.example.env +0 -0
  80. {gitops-1.9.0 → gitops-1.10.1}/setup.cfg +0 -0
  81. {gitops-1.9.0 → gitops-1.10.1}/tests/__init__.py +0 -0
  82. {gitops-1.9.0 → gitops-1.10.1}/tests/conftest.py +0 -0
  83. {gitops-1.9.0 → gitops-1.10.1}/tests/sample_data.py +0 -0
  84. {gitops-1.9.0 → gitops-1.10.1}/tests/test_app.py +0 -0
  85. {gitops-1.9.0 → gitops-1.10.1}/tests/test_clone_credentials.py +0 -0
  86. {gitops-1.9.0 → gitops-1.10.1}/tests/test_core.py +0 -0
  87. {gitops-1.9.0 → gitops-1.10.1}/tests/test_deploy_concurrent.py +0 -0
  88. {gitops-1.9.0 → gitops-1.10.1}/tests/test_git.py +0 -0
  89. {gitops-1.9.0 → gitops-1.10.1}/tests/test_github_auth.py +0 -0
  90. {gitops-1.9.0 → gitops-1.10.1}/tests/test_gitops_server.py +0 -0
  91. {gitops-1.9.0 → gitops-1.10.1}/tests/test_load_app_definitions.py +0 -0
  92. {gitops-1.9.0 → gitops-1.10.1}/tests/test_utils.py +0 -0
  93. {gitops-1.9.0 → gitops-1.10.1}/tests/test_worker_concurrency.py +0 -0
  94. {gitops-1.9.0 → gitops-1.10.1}/tests/utils.py +0 -0
  95. {gitops-1.9.0 → gitops-1.10.1}/tests/webhook_sample_data.py +0 -0
@@ -14,6 +14,10 @@ permissions:
14
14
  env:
15
15
  MISE_PYTHON_COMPILE: false
16
16
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
17
+ ECR_REGISTRY: 610829907584.dkr.ecr.ap-southeast-2.amazonaws.com
18
+ ECR_HELM_PREFIX: helm
19
+ AWS_REGION: ap-southeast-2
20
+ AWS_ROLE_ARN: arn:aws:iam::610829907584:role/default-github-actions-ci-role
17
21
 
18
22
  jobs:
19
23
  release-please:
@@ -36,10 +40,31 @@ jobs:
36
40
  if: ${{ needs.release-please.outputs.helm-version }}
37
41
  steps:
38
42
  - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # ratchet:actions/checkout@v6.0.1
39
- - name: Publish Helm charts
40
- uses: stefanprodan/helm-gh-pages@89c6698c192e70ed0e495bee7d3d1ca5b477fe82 # ratchet:stefanprodan/helm-gh-pages@master
43
+
44
+ - name: Install Helm
45
+ uses: azure/setup-helm@1a275c3b69536ee54be43f2070a358922e12c8d4 # ratchet:azure/setup-helm@v4
46
+
47
+ - name: Lint chart
48
+ run: helm lint charts/gitops
49
+
50
+ - name: Configure AWS Credentials
51
+ uses: aws-actions/configure-aws-credentials@61815dcd50bd041e203e49132bacad1fd04d2708 # ratchet:aws-actions/configure-aws-credentials@v5.1.1
41
52
  with:
42
- token: ${{ secrets.GITHUB_TOKEN }}
53
+ role-to-assume: ${{ env.AWS_ROLE_ARN }}
54
+ role-session-name: ${{ github.repository_owner }}-${{ github.event.repository.name }}
55
+ aws-region: ${{ env.AWS_REGION }}
56
+
57
+ - name: Login to ECR (Helm OCI)
58
+ run: |
59
+ aws ecr get-login-password --region "$AWS_REGION" \
60
+ | helm registry login --username AWS --password-stdin "$ECR_REGISTRY"
61
+
62
+ - name: Package and push chart
63
+ run: |
64
+ set -euo pipefail
65
+ chart_version=$(helm show chart charts/gitops | awk '/^version:/ {print $2}')
66
+ helm package charts/gitops --destination "$RUNNER_TEMP"
67
+ helm push "${RUNNER_TEMP}/gitops-${chart_version}.tgz" "oci://${ECR_REGISTRY}/${ECR_HELM_PREFIX}"
43
68
 
44
69
  publish_to_pypi:
45
70
  name: Publishes tag to pypi
@@ -14,6 +14,9 @@ permissions:
14
14
 
15
15
  env:
16
16
  PYTHONUNBUFFERED: 1
17
+ ECR_REGISTRY: 610829907584.dkr.ecr.ap-southeast-2.amazonaws.com
18
+ ECR_HELM_PREFIX: helm
19
+ AWS_REGION: ap-southeast-2
17
20
 
18
21
  jobs:
19
22
  ci:
@@ -99,23 +102,43 @@ jobs:
99
102
  tags: |
100
103
  610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/gitops:test-${{ env.GIT_SHORT_HASH }}
101
104
 
102
- - name: Prepare Docker image comment
105
+ - name: Install Helm
106
+ uses: azure/setup-helm@1a275c3b69536ee54be43f2070a358922e12c8d4 # ratchet:azure/setup-helm@v4
107
+
108
+ - name: Lint and render chart
109
+ run: |
110
+ helm lint charts/gitops
111
+ helm template gitops charts/gitops > /dev/null
112
+
113
+ # The SHA identifies the build; a fixed 0.0.0 base can't be mistaken for a release.
114
+ - name: Package and push test chart
115
+ if: github.event_name == 'pull_request'
116
+ run: |
117
+ set -euo pipefail
118
+ aws ecr get-login-password --region "$AWS_REGION" \
119
+ | helm registry login --username AWS --password-stdin "$ECR_REGISTRY"
120
+ chart_version="0.0.0-test-${GIT_SHORT_HASH}"
121
+ helm package charts/gitops --version "$chart_version" --destination "$RUNNER_TEMP"
122
+ helm push "${RUNNER_TEMP}/gitops-${chart_version}.tgz" "oci://${ECR_REGISTRY}/${ECR_HELM_PREFIX}"
123
+
124
+ - name: Prepare test build comment
103
125
  id: docker_comment
104
126
  if: github.event_name == 'pull_request'
105
127
  run: |
106
128
  {
107
129
  echo "comment<<EOF"
108
- echo "## Docker Images"
130
+ echo "## Test builds"
109
131
  echo ""
110
132
  echo "**Commit:** \`${{ github.event.pull_request.head.sha }}\`"
111
133
  echo ""
112
- echo "| Tag |"
113
- echo "| --- |"
114
- echo "| \`610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/gitops:test-${{ env.GIT_SHORT_HASH }}\` |"
134
+ echo "| | Reference |"
135
+ echo "| --- | --- |"
136
+ echo "| Image | \`610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/gitops:test-${{ env.GIT_SHORT_HASH }}\` |"
137
+ echo "| Chart | \`oci://610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/helm/gitops\` version \`0.0.0-test-${{ env.GIT_SHORT_HASH }}\` |"
115
138
  echo "EOF"
116
139
  } >> "$GITHUB_OUTPUT"
117
140
 
118
- - name: Comment Docker images on PR
141
+ - name: Comment test builds on PR
119
142
  if: github.event_name == 'pull_request'
120
143
  uses: marocchino/sticky-pull-request-comment@67d0dec7b07ed060a405f9b2a64b8ab319fdd7db # ratchet:marocchino/sticky-pull-request-comment@v2.9.2
121
144
  with:
@@ -0,0 +1,5 @@
1
+ {
2
+ ".": "1.10.1",
3
+ "gitops_server": "0.15.1",
4
+ "charts/gitops": "1.4.1"
5
+ }
@@ -1,5 +1,28 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.10.1](https://github.com/uptick/gitops/compare/gitops-v1.10.0...gitops-v1.10.1) (2026-10-21)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **deps:** upgrade certifi to 2026.10.19 ([680d2ec](https://github.com/uptick/gitops/commit/680d2ec257595763a204e332ce603ade7affc5b6))
9
+ * **deps:** upgrade certifi to 2026.10.19 (GHSA-6q48-6c7w-9gw2) ([6f5b494](https://github.com/uptick/gitops/commit/6f5b494bcfa7d6bd9393c45470ccf8f749758b78))
10
+
11
+ ## [1.10.0](https://github.com/uptick/gitops/compare/gitops-v1.9.0...gitops-v1.10.0) (2026-09-22)
12
+
13
+
14
+ ### Features
15
+
16
+ * **deploy:** setting to skip helm's client-side OpenAPI validation ([3671513](https://github.com/uptick/gitops/commit/36715132c8e04efeb3b7f389595f6dc49c80c3f6))
17
+ * helm 3.22.0, and a setting to skip its OpenAPI validation ([d66fe4a](https://github.com/uptick/gitops/commit/d66fe4a6362498ec7d85e19b57dbae5f6d8ddd6c))
18
+ * **image:** helm 3.22.0, with helm-secrets 4.7.7 to match ([2d871bf](https://github.com/uptick/gitops/commit/2d871bfefe85d1f25e2748519cea0155e7f499bd))
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * upgrade urllib3 to 2.8.0 and anyio to the patched release ([dcd9699](https://github.com/uptick/gitops/commit/dcd96990444176abdddb0e70b8db8e5c0c8d55b1))
24
+ * upgrade urllib3 to 2.8.0 and anyio to the patched release ([14bad7c](https://github.com/uptick/gitops/commit/14bad7c39c6743ff20054c3101ae5802eac8fc9c))
25
+
3
26
  ## [1.9.0](https://github.com/uptick/gitops/compare/gitops-v1.8.0...gitops-v1.9.0) (2026-09-09)
4
27
 
5
28
 
@@ -14,7 +14,7 @@ ARG TARGETARCH
14
14
  ## Install kubectl and dependencies.
15
15
  ##
16
16
  ENV KUBE_LATEST_VERSION="v1.21.3"
17
- ENV HELM_VERSION="v3.6.2" \
17
+ ENV HELM_VERSION="v3.22.0" \
18
18
  VIRTUAL_ENV="/app/.venv" \
19
19
  PATH="/app/.venv/bin:$PATH"
20
20
 
@@ -30,7 +30,7 @@ RUN apt-get update \
30
30
  && chmod +x /usr/local/bin/helm \
31
31
  \
32
32
  # Install helm-secrets plugin
33
- && helm plugin install https://github.com/jkroepke/helm-secrets --version v4.2.2 \
33
+ && helm plugin install https://github.com/jkroepke/helm-secrets --version v4.7.7 \
34
34
  \
35
35
  # Download sops
36
36
  && wget -q https://github.com/mozilla/sops/releases/download/v3.7.3/sops-v3.7.3.linux.${TARGETARCH} -O /usr/local/bin/sops \
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: gitops
3
- Version: 1.9.0
3
+ Version: 1.10.1
4
4
  Summary: Manage multiple apps across one or more k8s clusters.
5
5
  Author-email: Jarek Głowacki <jarekwg@gmail.com>
6
6
  License-File: LICENSE
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.4.1](https://github.com/uptick/gitops/compare/helm-v1.4.0...helm-v1.4.1) (2026-10-21)
4
+
5
+
6
+ ### Documentation
7
+
8
+ * **chart:** describe ECR publishing ([3b4374a](https://github.com/uptick/gitops/commit/3b4374a6b6f303d1ad445ea988141ab3ca166169))
9
+
10
+ ## [1.4.0](https://github.com/uptick/gitops/compare/helm-v1.3.0...helm-v1.4.0) (2026-09-24)
11
+
12
+
13
+ ### Features
14
+
15
+ * **chart:** take resources from values ([7bc1791](https://github.com/uptick/gitops/commit/7bc17919a3fd0405a593ebd55584a5cc31f7bdc7))
16
+ * **chart:** take resources from values ([3f05fab](https://github.com/uptick/gitops/commit/3f05fab5f24009f127177c055a7bdf4c1159bd0e))
17
+
3
18
  ## [1.3.0](https://github.com/uptick/gitops/compare/helm-v1.2.2...helm-v1.3.0) (2026-09-09)
4
19
 
5
20
 
@@ -2,4 +2,4 @@ apiVersion: v1
2
2
  appVersion: "1.0"
3
3
  description: GitOps Server Helm chart.
4
4
  name: gitops
5
- version: 1.3.0
5
+ version: 1.4.1
@@ -0,0 +1,11 @@
1
+ # GitOps Server Helm Chart
2
+
3
+ Published to `oci://610829907584.dkr.ecr.ap-southeast-2.amazonaws.com/helm/gitops`.
4
+
5
+ ## Releases
6
+
7
+ Release-please bumps `version` in `Chart.yaml`. Merging its release PR pushes that version to ECR.
8
+
9
+ ## Test versions
10
+
11
+ Each PR build pushes `0.0.0-test-<short sha>` and lists it in the "Test builds" PR comment.
@@ -38,8 +38,7 @@ spec:
38
38
  ports:
39
39
  - containerPort: 8000
40
40
  resources:
41
- requests:
42
- memory: "750Mi"
41
+ {{- toYaml .Values.resources | nindent 10 }}
43
42
 
44
43
  envFrom:
45
44
  - configMapRef:
@@ -42,12 +42,8 @@ podDisruptionBudget: {}
42
42
  # maxUnavailable: 1
43
43
 
44
44
  resources:
45
- limits:
46
- cpu: 500m
47
- memory: 512Mi
48
45
  requests:
49
- cpu: 100m
50
- memory: 128Mi
46
+ memory: 750Mi
51
47
  serviceAccount:
52
48
  # Specifies whether a service account should be created
53
49
  create: true
@@ -6,7 +6,7 @@ from gitops.utils.apps import App, get_app_details, get_apps # type: ignore[att
6
6
 
7
7
  from .utils.cli import success, warning
8
8
 
9
- __version__ = "1.9.0"
9
+ __version__ = "1.10.1"
10
10
 
11
11
 
12
12
  # Checking gitops version matches cluster repo version.
@@ -21,3 +21,13 @@ GITOPS_MAX_PARALLEL_DEPLOYS = os.environ.get("GITOPS_MAX_PARALLEL_DEPLOYS", "5")
21
21
  # two commits before it reaches GITOPS_MAX_PARALLEL_DEPLOYS, so without a bound
22
22
  # here a burst of pushes is only limited by how fast they arrive.
23
23
  GITOPS_MAX_CONCURRENT_DEPLOYMENTS = os.environ.get("GITOPS_MAX_CONCURRENT_DEPLOYMENTS", "20")
24
+
25
+ # Pass --disable-openapi-validation to helm. Off by default: helm keeps checking
26
+ # manifests against the cluster schema before applying them, which costs each
27
+ # helm process a download and parse of that schema. The API server still
28
+ # rejects wrong types and missing fields either way.
29
+ GITOPS_DISABLE_OPENAPI_VALIDATION = os.environ.get("GITOPS_DISABLE_OPENAPI_VALIDATION", "").lower() in (
30
+ "1",
31
+ "true",
32
+ "yes",
33
+ )
@@ -0,0 +1 @@
1
+ __version__ = "1.10.1"
@@ -280,6 +280,7 @@ class Deployer:
280
280
  f" --history-max {MAX_HELM_HISTORY}"
281
281
  " --install"
282
282
  " --timeout=600s"
283
+ f"{' --disable-openapi-validation' if settings.GITOPS_DISABLE_OPENAPI_VALIDATION else ''}"
283
284
  f"{' --set skip_migrations=true' if self.skip_migrations else ''}"
284
285
  f" -f {cfg.name}"
285
286
  f" --namespace={app.namespace}"
@@ -312,6 +313,7 @@ class Deployer:
312
313
  f" --history-max {MAX_HELM_HISTORY}"
313
314
  " --install"
314
315
  " --timeout=600s"
316
+ f"{' --disable-openapi-validation' if settings.GITOPS_DISABLE_OPENAPI_VALIDATION else ''}"
315
317
  f"{' --set skip_migrations=true' if self.skip_migrations else ''}"
316
318
  f" -f {cfg.name}"
317
319
  f" --namespace={app.namespace}"
@@ -1,7 +1,7 @@
1
1
 
2
2
  [project]
3
3
  name = "gitops"
4
- version = "1.9.0"
4
+ version = "1.10.1"
5
5
  description = "Manage multiple apps across one or more k8s clusters."
6
6
  requires-python = ">=3.12"
7
7
  readme = "README.md"
@@ -145,6 +145,27 @@ class TestDeploy:
145
145
  )
146
146
  assert post_mock.call_count == 2
147
147
 
148
+ @patch("gitops_server.workers.deployer.deploy.settings.GITOPS_DISABLE_OPENAPI_VALIDATION", True)
149
+ @patch("gitops_server.workers.deployer.deploy.run")
150
+ @patch("gitops_server.utils.slack.post")
151
+ @patch("gitops_server.workers.deployer.deploy.load_app_definitions", mock_load_app_definitions)
152
+ @patch("gitops_server.workers.deployer.deploy.temp_repo")
153
+ async def test_deployer_disable_openapi_validation_setting_adds_the_helm_flag(
154
+ self, temp_repo_mock, post_mock, run_mock
155
+ ):
156
+ run_mock.return_value = {"exit_code": 0, "output": ""}
157
+ temp_repo_mock.return_value.__aenter__.return_value = "mock-repo"
158
+ semaphore_manager = AppSemaphoreManager()
159
+ deployer = await Deployer.from_push_event(SAMPLE_GITHUB_PAYLOAD, semaphore_manager)
160
+ await deployer.deploy()
161
+ assert run_mock.call_count == 4
162
+ for call in (run_mock.call_args_list[1], run_mock.call_args_list[3]):
163
+ assert re.match(
164
+ r"helm secrets upgrade --create-namespace --history-max 3 --install --timeout=600s"
165
+ r" --disable-openapi-validation -f .+\.yml --namespace=mynamespace sample-app-\d mock-repo",
166
+ call[0][0],
167
+ )
168
+
148
169
  @patch("gitops_server.workers.deployer.deploy.run")
149
170
  @patch("gitops_server.utils.slack.post")
150
171
  @patch("gitops_server.workers.deployer.deploy.Deployer.post_result")