Commit Graph

926 Commits

Author SHA1 Message Date
Boshi Lian
5de1c25cf1 migrate to record (#1665)
* migrate to record

* chore: update project files and clean up unused references

* refactor: convert classes to records and simplify constructors for IntOrString, ResourceQuantity, and V1Patch

* fix: define IsExternalInit to resolve CS0518 error in IntOrString

* refactor: change IntOrString and ResourceQuantity from records to structs, update implicit conversions, and simplify null checks

* refactor: add JsonPropertyName attribute to Value property in IntOrString struct

* refactor: simplify V1Patch constructor and improve argument validation

* refactor: remove unnecessary CultureInfo parameter in ToInt method

* Update src/KubernetesClient/Models/ResourceQuantity.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update src/KubernetesClient/Models/IntOrString.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Revert "Update src/KubernetesClient/Models/ResourceQuantity.cs"

This reverts commit 62b20a691554659e28d419067220dc1a0620133b.

* refactor: remove commented-out formatting check and simplify build command

* refactor: remove IValidate.cs from project references in Aot and Classic

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-22 14:20:13 -07:00
Boshi Lian
96955064cb generate base on 1.34 (#1654)
* Implement code changes to enhance functionality and improve performance

* chore: update version to 18.0 in version.json

* fix: correct initialization of opblackList in PluralHelper

* chore: update SDK version to 18.0 in README.md

* Fixdocfx (#82)

* fix: update file references and clean up validation comments in models

* chore: add symlink to CONTRIBUTING.md for easier access

* fix: update documentation to include full type names for WebSocket and Predicate

* fix: include CONTRIBUTING.md in docfx.json build content

* refactor: update IKubernetes interface and template for consistency

* feat: add Microsoft.CodeAnalysis.CSharp package and improve source normalization in generator context

* chore: update package versions in Directory.Packages.props for compatibility and improvements

* chore: update Microsoft.VisualStudio.SlnGen and Nerdbank.GitVersioning package versions for compatibility

* Implement code changes to enhance functionality and improve performance

* chore: update version to 18.0 in version.json

* fix: correct initialization of opblackList in PluralHelper

* chore: update SDK version to 18.0 in README.md

* refactor: update IKubernetes interface and template for consistency

* feat: add Microsoft.CodeAnalysis.CSharp package and improve source normalization in generator context

* chore: update package versions in Directory.Packages.props for compatibility and improvements

* chore: update Microsoft.VisualStudio.SlnGen and Nerdbank.GitVersioning package versions for compatibility

* chore: downgrade xunit.runner.visualstudio and Xunit.StaFact package versions for compatibility

* chore: update package versions in Directory.Packages.props for compatibility and improvements

* style: format code for consistency and readability

* feat: update certificate loading logic for .NET 9 compatibility

* fix: update certificate loading method for .NET 9 compatibility
2025-09-22 14:18:16 -07:00
Boshi Lian
11a9641fbe refactor: reorganize Kubernetes client models into separate files (#1663) 2025-09-16 07:40:17 -07:00
dependabot[bot]
a99fbe4693 Bump actions/setup-dotnet from 4 to 5 (#1658)
Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4 to 5.
- [Release notes](https://github.com/actions/setup-dotnet/releases)
- [Commits](https://github.com/actions/setup-dotnet/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-dotnet
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-05 12:25:27 -07:00
Ivan Josipovic
885b9ae09d fix(yaml): byte[] serialization (#1657)
* fix(yaml): byte[] serialization

* fix: tests and code

* chore: add null check

* chore: add configmap tests
2025-09-05 12:17:25 -07:00
Boshi Lian
d693a621dd fix docfx (#1656)
* fix: update file references and clean up validation comments in models

* chore: add symlink to CONTRIBUTING.md for easier access

* fix: update documentation to include full type names for WebSocket and Predicate

* fix: include CONTRIBUTING.md in docfx.json build content
2025-09-04 10:13:16 -07:00
Boshi Lian
9b1eeef94d feat: add example for creating and resizing a Kubernetes pod (#1655) 2025-09-01 08:17:12 -07:00
Ivan Josipovic
69afa49337 fix: yaml ByteArrayStringYamlConverter output new lines (#1651)
* fix: yaml byte[] output

* chore: fix styling

* chore: fix logic for single line values and add test
2025-08-27 15:15:16 -07:00
Ivan Josipovic
b74ee18fde feat(json): add overloads for Deserialize and Serialize (#1652)
Updated `KubernetesJson.cs` to include additional overloads for the `Deserialize` and `Serialize` methods. New methods now support `JsonDocument`, `JsonElement`, and `JsonNode` types, enhancing JSON handling capabilities within the Kubernetes library.
2025-08-27 11:28:09 -07:00
Boshi Lian
1f8e5da0c2 Update certificate validation to use custom trust store for .NET 5.0+ (#1653)
* Update certificate validation to use custom trust store for .NET 5.0 and greater

* Update src/KubernetesClient/Kubernetes.ConfigInit.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update apiserver-pfx-data.txt with new certificate data

* Update tests/KubernetesClient.Tests/CertificateValidationTests.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Brendan Burns <5751682+brendandburns@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-27 05:48:09 -07:00
dependabot[bot]
9b5e710c47 Bump actions/upload-pages-artifact from 3 to 4 (#1647)
Bumps [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) from 3 to 4.
- [Release notes](https://github.com/actions/upload-pages-artifact/releases)
- [Commits](https://github.com/actions/upload-pages-artifact/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/upload-pages-artifact
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-26 10:08:14 -07:00
Boshi Lian
6adbd40dd8 Add tg123 to SECURITY_CONTACTS (#1649) 2025-08-26 10:06:12 -07:00
dependabot[bot]
58d3bd5f0f Bump actions/checkout from 4 to 5 (#1645)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 12:59:07 -07:00
Eric Kerst
74538d58f2 fix ExecCredentialResponse deserializion in aot (#1643)
* Add ExecCredentialResponseContext for JSON serialization support

* Added ExecStatus JsonPropertyNames
2025-08-05 22:53:24 -07:00
Boshi Lian
9efecfdcd4 Enhance certificate handling for .NET 9 compatibility in KubernetesClientConfiguration (#1638) 2025-07-14 11:12:24 -07:00
Brendan Burns
67d457a3a2 Update codeql-analysis.yml (#1639) 2025-07-10 16:23:27 -07:00
Boshi Lian
8d0547bcff fix missing aot model SourceGenerationContext (#1636)
* Add VersionTestAsync to validate Kubernetes client version retrieval

* Add SourceGenerationContextGenerator and update registration in KubernetesClientSourceGenerator
2025-06-02 19:08:37 -07:00
Ayr Loong
f1125e9435 Implementing a more modular API (#1627)
* fix typo

* Add modular API

* Use x-kubernetes-action instead of operationId to generate method names

* fix

* Clean code style warnings

* Refactor client constructors to use Kubernetes type instead of IKubernetes

* Add ClientSet tests for Kubernetes pod operations

* Fix order of parameters in Pod API calls for consistency

* Enhance documentation for ClientSet and ResourceClient classes

* Refactor ClientSet and GroupClient for Kubernetes usage

* Refactor Pod API calls in tests to use singular form for consistency

* Refactor Pod API calls to use 'Create' and 'Update' methods for consistency
2025-05-22 00:56:39 -07:00
dependabot[bot]
e6317b857d Bump nunit/docfx-action from 4.0.0 to 4.1.0 (#1629)
Bumps [nunit/docfx-action](https://github.com/nunit/docfx-action) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/nunit/docfx-action/releases)
- [Commits](https://github.com/nunit/docfx-action/compare/v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: nunit/docfx-action
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 14:10:48 -07:00
Boshi Lian
ae79be6665 Clean up warnings in examples (#1628)
* Refactor examples to streamline code structure and improve readability

* Update LangVersion to 13.0 for improved compatibility
2025-04-29 16:55:55 -07:00
Boshi Lian
001189de77 Version 17.0 + Generate 1.33 (#1626)
* generated based on 1.33

* Update version to 17.0 in version.json

* Remove extra API endpoint from swagger.json

* Remove ModelConverter and related AutoMapper components

* Update package versions

* Refactor code to use ConfigureAwait(false) for asynchronous calls and update target framework to net9.0

* Remove ConfigureAwait(false) from OidcAuthTests for consistency in async calls

* Update SDK version in README to reflect support for net8.0 and net9.0

* Update dotnet SDK version to 9.0.x in build workflow

* Revert Fractions package version to 7.3.0 in Directory.Packages.props

* Update target framework to netstandard2.1 for improved compatibility

* Update package references for Microsoft.CodeAnalysis in Directory.Packages.props and LibKubernetesGenerator.target

* Refactor Worker class constructor documentation and standardize Dictionary type declaration in Program.cs
2025-04-27 12:55:24 -07:00
Eric Erhardt
dfdf0b70d2 Remove IdentityModel package versions from Directory.Packages.props (#1625)
* Remove IdentityModel package versions from Directory.Packages.props

* Remove IdentityModel references from KubernetesClient.Classic.
2025-04-22 11:43:41 -07:00
Ayr Loong
c93fabe07d fix typo (#1623) 2025-04-18 16:55:07 -07:00
Brendan Burns
27d706d21e Add tests to #1618 (#1621)
* Refactor OidcTokenProvider to remove dependency on IdentityModel and improve token handling

* Improve OidcTokenProvider error handling and expiry setting

The constructor `OidcTokenProvider` now always sets the `_expiry`
field by calling `GetExpiryFromToken()`, regardless of whether
`_idToken` is null or empty, removing the previous check for a
non-empty `_idToken`.

The `GetExpiryFromToken` method has been updated to handle invalid
JWT token formats more gracefully. Instead of throwing an
`ArgumentException` when the token format is invalid or when the
'exp' claim is missing, the method now returns a default value.

The logic for parsing the JWT token and extracting the 'exp' claim
has been wrapped in a try-catch block. If any exception occurs
during this process, it is caught, and the method returns a default
value instead of throwing an exception.

* Refactor parts initialization inside try block

Moved the initialization of the `parts` variable, which splits the `_idToken` string, inside the `try` block. Removed the previous check for exactly three elements in the `parts` array and the default return value if the check failed.

* Add tests.

---------

Co-authored-by: Boshi Lian <farmer1992@gmail.com>
2025-04-17 10:13:07 -07:00
dependabot[bot]
675de3da2a Bump nunit/docfx-action from 3.4.2 to 4.0.0 (#1614)
Bumps [nunit/docfx-action](https://github.com/nunit/docfx-action) from 3.4.2 to 4.0.0.
- [Release notes](https://github.com/nunit/docfx-action/releases)
- [Commits](https://github.com/nunit/docfx-action/compare/v3.4.2...v4.0.0)

---
updated-dependencies:
- dependency-name: nunit/docfx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 20:03:58 -08:00
Boshi Lian
4b19366e72 Update upload-artifact action to version 4 in buildtest workflow (#1615)
* Update upload-artifact action to version 4 in buildtest workflow

* Disable parallel build for E2E tests in buildtest workflow

* Update artifact name to include OS in buildtest workflow
2025-02-11 11:29:59 -08:00
Rasmus Melchior Jacobsen
73b318ba34 Actually assign loaded cert when generating pfx (#1609)
* Actually assign loaded cert when generating pfx

* Enable tests that would have caught this issue
2025-01-20 20:06:35 -08:00
Boshi Lian
f7e7613d09 generate api v1.32 (#1603)
* generate based on v1.32

* bump ver

* Delete swagger.json.unprocessed

* Update target frameworks and SDK versions in project files

* Remove extra API endpoint from swagger.json

* Update .NET SDK version to 9.0.x and adjust package references

* happy build

* Enhance certificate handling for .NET 9.0 compatibility in CertUtils and KubernetesClientConfiguration

* Add mapping for V1beta1ResourceClaim to V1ResourceClaim in AutoMapper configurations

* Refactor certificate loading to improve compatibility with .NET 9.0

* Update package versions in Directory.Packages.props for improved compatibility and features

* Update Fractions package version to 7.3.0 for improved compatibility
2025-01-07 16:12:29 +01:00
dependabot[bot]
61e6b13fd7 Bump codecov/codecov-action from 4 to 5 (#1595)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4 to 5.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-15 16:46:53 +00:00
Boshi Lian
a139dd594f Leader Election doesn't properly report OnError (#1594)
Fixes #1593
2024-11-11 15:14:46 +00:00
Hugo Woodiwiss
c3b3a08b31 Enable JSON Patch in AOT (#1588)
* Special case serialization of V1Patch

* Add AOT JSON Patch Example
2024-11-05 05:51:29 +00:00
Tim McCurdy
541abb00bd Added OnError event to MetaObjectLock (#1585)
* Added OnError event to MetaObjectLock

* Updated event name
2024-09-27 20:12:02 +01:00
dependabot[bot]
722f21c464 Bump nunit/docfx-action from 3.4.1 to 3.4.2 (#1586)
Bumps [nunit/docfx-action](https://github.com/nunit/docfx-action) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/nunit/docfx-action/releases)
- [Commits](https://github.com/nunit/docfx-action/compare/v3.4.1...v3.4.2)

---
updated-dependencies:
- dependency-name: nunit/docfx-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-17 07:53:40 -07:00
Boshi Lian
f5fee73cfe generate v1.31.0 api (#1579)
* first gen

* bump ver

* fix build

* fix package version

* fix test
2024-09-10 17:36:13 +01:00
Weihan Li
1f71c47932 Configure permissions for codeql (#1583)
fixes codeql action error

see details: https://github.com/github/codeql/issues/8843#issuecomment-1108467590
2024-09-08 08:11:22 +01:00
Weihan Li
48f5667e79 configure write permission for draft release action (#1582) 2024-09-08 06:29:20 +01:00
Weihan Li
32da64933c update InternalsVisibleTo usage (#1577) 2024-09-03 19:56:05 +01:00
Ivan Josipovic
36a0204643 feat: yamldotnet 16 support (#1574)
* feat: yamldotnet 16 support

* update yamldotnet

* fix interface

* update Vecc.YamlDotNet.Analyzers.StaticGenerator
2024-08-11 13:21:59 -07:00
dependabot[bot]
e05bc143b9 Bump nunit/docfx-action from 3.4.0 to 3.4.1 (#1572)
Bumps [nunit/docfx-action](https://github.com/nunit/docfx-action) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/nunit/docfx-action/releases)
- [Commits](https://github.com/nunit/docfx-action/compare/v3.4.0...v3.4.1)

---
updated-dependencies:
- dependency-name: nunit/docfx-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-25 10:55:18 -07:00
dependabot[bot]
17edc6a2a7 Bump nunit/docfx-action from 3.3.0 to 3.4.0 (#1569)
Bumps [nunit/docfx-action](https://github.com/nunit/docfx-action) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/nunit/docfx-action/releases)
- [Commits](https://github.com/nunit/docfx-action/compare/v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: nunit/docfx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 07:32:40 -07:00
Weihan Li
007ef8946c init cpm support (#1565)
* feat: init cpm support

* remove dotnet-xunit DotNetCliToolReference

* use VersionOverride for compatibility
2024-06-15 21:41:28 -07:00
Weihan Li
b6315d8622 Update KubernetesClient DiagnosticSource dependency (#1561)
System.Diagnostics.DiagnosticSource has been included into the framework reference, no need to reference for net8
2024-06-06 22:14:14 -07:00
dependabot[bot]
2c2bd6a4a3 Bump nunit/docfx-action from 3.2.0 to 3.3.0 (#1558)
Bumps [nunit/docfx-action](https://github.com/nunit/docfx-action) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/nunit/docfx-action/releases)
- [Commits](https://github.com/nunit/docfx-action/compare/v3.2.0...v3.3.0)

---
updated-dependencies:
- dependency-name: nunit/docfx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-27 16:57:00 -07:00
dependabot[bot]
6df71f5e38 Bump BouncyCastle.Cryptography in /src/KubernetesClient.Classic (#1557)
Bumps [BouncyCastle.Cryptography](https://github.com/bcgit/bc-csharp) from 2.2.1 to 2.3.1.
- [Commits](https://github.com/bcgit/bc-csharp/compare/release-2.2.1...release-2.3.1)

---
updated-dependencies:
- dependency-name: BouncyCastle.Cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-14 17:52:32 -07:00
Brian Pursley
b50aed2654 Add missing Dispose() calls (#1552) 2024-04-29 00:30:50 -07:00
Boshi Lian
07a59e7e59 Update SDK version to 14.0 for Kubernetes 1.30 (#1551)
* Update KUBERNETES_BRANCH to v1.30.0 in csharp.settings

* Update version.json to 14.0

* Update SDK version to 14.0 for Kubernetes 1.30

* fix csharp naming conflict

* drop support of net7

* remove unused comment
2024-04-28 17:00:18 -07:00
Boshi Lian
3dae1cf299 Refactor LibKubernetesGenerator code structure (#1546)
* Refactor LibKubernetesGenerator code structure

* clean up comment out code

* No more locks

* clean up dep

* Update dependency paths in LibKubernetesGenerator.target
2024-04-15 10:43:05 -07:00
Boshi Lian
de7ecf1da9 SlnGen instructions are potentially incomplete (#1530) 2024-04-15 10:40:59 -07:00
dependabot[bot]
8bfec97f99 Bump OpenTelemetry.Instrumentation.Http (#1548)
Bumps [OpenTelemetry.Instrumentation.Http](https://github.com/open-telemetry/opentelemetry-dotnet) from 1.7.0 to 1.8.1.
- [Release notes](https://github.com/open-telemetry/opentelemetry-dotnet/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-dotnet/compare/core-1.7.0...Instrumentation.Http-1.8.1)

---
updated-dependencies:
- dependency-name: OpenTelemetry.Instrumentation.Http
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-13 01:20:31 -07:00
dependabot[bot]
a97bdd9186 Bump microsoft/setup-msbuild from 1.3 to 2 (#1547)
Bumps [microsoft/setup-msbuild](https://github.com/microsoft/setup-msbuild) from 1.3 to 2.
- [Release notes](https://github.com/microsoft/setup-msbuild/releases)
- [Changelog](https://github.com/microsoft/setup-msbuild/blob/main/building-release.md)
- [Commits](https://github.com/microsoft/setup-msbuild/compare/v1.3...v2)

---
updated-dependencies:
- dependency-name: microsoft/setup-msbuild
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-13 01:18:32 -07:00