From 07107125b384db545ca39f26f8667468ae3fe30b Mon Sep 17 00:00:00 2001 From: chen21019 <19357113+chen21019@users.noreply.github.com> Date: Sun, 27 Sep 2026 17:20:22 +0800 Subject: [PATCH] fix(api): expose public template state in frozen v1 user schema --- COMPATIBILITY.md | 13 +-- README.md | 11 +-- code/framework/api-pub-sub-jetty/pom.xml | 2 +- code/framework/api-pub-sub/pom.xml | 2 +- code/framework/api/pom.xml | 2 +- .../api/schema/FileSchemaFactory.java | 26 +++++- .../api/schema/FileSchemaFactoryTest.java | 90 +++++++++++++++++++ code/framework/archaius/pom.xml | 2 +- code/framework/async/pom.xml | 2 +- code/framework/auditing/pom.xml | 2 +- code/framework/db-loader/pom.xml | 2 +- code/framework/deferred/pom.xml | 2 +- code/framework/encryption/pom.xml | 2 +- code/framework/engine/pom.xml | 2 +- code/framework/eventing/pom.xml | 2 +- code/framework/events/pom.xml | 2 +- code/framework/extension-spring/pom.xml | 2 +- code/framework/extension/pom.xml | 2 +- code/framework/java-server/pom.xml | 2 +- code/framework/jmx/pom.xml | 2 +- code/framework/jooq/pom.xml | 2 +- code/framework/json/pom.xml | 2 +- code/framework/launcher/pom.xml | 2 +- code/framework/lock/pom.xml | 2 +- code/framework/logback/pom.xml | 2 +- code/framework/managed-context/pom.xml | 2 +- code/framework/metrics/pom.xml | 2 +- code/framework/module/pom.xml | 2 +- code/framework/object/pom.xml | 2 +- code/framework/pool/pom.xml | 2 +- code/framework/resource-monitor/pom.xml | 2 +- code/framework/schema/pom.xml | 2 +- code/framework/server/pom.xml | 2 +- code/framework/spring/pom.xml | 2 +- code/framework/system-task/pom.xml | 2 +- code/framework/token/pom.xml | 2 +- code/framework/utils/pom.xml | 2 +- code/iaas/agent-instance/pom.xml | 2 +- code/iaas/agent-server/pom.xml | 2 +- code/iaas/agent/pom.xml | 2 +- code/iaas/allocator/pom.xml | 2 +- code/iaas/api-logic/pom.xml | 2 +- code/iaas/archaius-management/pom.xml | 2 +- code/iaas/auth-logic/pom.xml | 2 +- code/iaas/bootstrap/pom.xml | 2 +- code/iaas/config-item/api/pom.xml | 2 +- code/iaas/config-item/common/pom.xml | 2 +- code/iaas/config-item/server/pom.xml | 2 +- code/iaas/engine-jooq/pom.xml | 2 +- code/iaas/events/pom.xml | 2 +- code/iaas/external-handler/pom.xml | 2 +- code/iaas/ha/pom.xml | 2 +- code/iaas/healthcheck/pom.xml | 2 +- code/iaas/labels/pom.xml | 2 +- code/iaas/logic-common/pom.xml | 2 +- code/iaas/logic/pom.xml | 2 +- code/iaas/metadata/pom.xml | 2 +- code/iaas/model/pom.xml | 2 +- code/iaas/resource-pool/pom.xml | 2 +- code/iaas/service-discovery/api/pom.xml | 2 +- code/iaas/service-discovery/server/pom.xml | 2 +- code/iaas/ssh-common/pom.xml | 2 +- code/iaas/storage-service/pom.xml | 2 +- code/iaas/task-jooq/pom.xml | 2 +- code/implementation/activity-log/pom.xml | 2 +- .../agent-instance-impl/pom.xml | 2 +- code/implementation/docker/api/pom.xml | 2 +- code/implementation/docker/common/pom.xml | 2 +- code/implementation/docker/compute/pom.xml | 2 +- code/implementation/docker/machine/pom.xml | 2 +- code/implementation/docker/storage/pom.xml | 6 +- code/implementation/extension-api/pom.xml | 2 +- code/implementation/hazelcast/common/pom.xml | 2 +- .../implementation/hazelcast/eventing/pom.xml | 2 +- code/implementation/hazelcast/lock/pom.xml | 2 +- code/implementation/host-api/pom.xml | 2 +- code/implementation/host-stats/pom.xml | 2 +- code/implementation/register/pom.xml | 2 +- code/implementation/sample-setup/pom.xml | 2 +- code/implementation/settings-api/pom.xml | 2 +- .../simulator/agent-connection/pom.xml | 2 +- code/implementation/simulator/storage/pom.xml | 2 +- code/implementation/system-stack/pom.xml | 2 +- code/implementation/vm/pom.xml | 2 +- code/meta-parent/pom.xml | 2 +- code/packaging/app-config/pom.xml | 2 +- code/packaging/app/pom.xml | 2 +- code/packaging/bundle/pom.xml | 2 +- code/packaging/dev/pom.xml | 2 +- code/packaging/meta/pom.xml | 2 +- code/parent/pom.xml | 2 +- .../orchestration-engine-0.183.326.md | 18 ++++ pom.xml | 2 +- resources/pom.xml | 2 +- scripts/build | 2 +- scripts/check-pasturestack-source | 9 +- scripts/check-release-artifact | 2 +- 97 files changed, 245 insertions(+), 108 deletions(-) create mode 100644 docs/releases/orchestration-engine-0.183.326.md diff --git a/COMPATIBILITY.md b/COMPATIBILITY.md index e86319b85e..cea0e9411a 100644 --- a/COMPATIBILITY.md +++ b/COMPATIBILITY.md @@ -81,12 +81,13 @@ template configuration retains its explicit `VERSION_2_3_0` compatibility setting. This dependency update does not change API, database schema, or template configuration. -Engine `0.183.325` includes `projectTemplate.isPublic` in non-admin v1 API -responses as a read-only field. The admin create and update permission remains -unchanged. Public templates still have no owning `accountId`; their `remove` -action link is omitted for non-admin callers, while private template owners -and admins retain it. Direct update and delete authorization remains enforced -by the existing policy. There is no database migration. +Engine `0.183.326` restores `projectTemplate.isPublic` in non-admin v1 API +responses as a read-only field. In `0.183.325`, v2-beta exposed the field but +the frozen v1 user schema omitted it. The admin create and update permission +remains unchanged. Public templates still have no owning `accountId`; their +`remove` action link is omitted for non-admin callers, while private template +owners and admins retain it. Direct update and delete authorization remains +enforced by the existing policy. There is no database migration. The `v0.183.324` tag is source-only and has no published release artifact. ## External identity type upgrades diff --git a/README.md b/README.md index 12ab22fcf9..a93b03166a 100644 --- a/README.md +++ b/README.md @@ -14,10 +14,11 @@ preserved upstream boundary. ## Current release The latest public Engine release is -[`v0.183.325`](https://github.com/PastureStack/orchestration-engine/releases/tag/v0.183.325). -It exposes `projectTemplate.isPublic` to non-admin readers as a read-only field -and omits unavailable remove actions on non-owned templates. See the -[release note](docs/releases/orchestration-engine-0.183.325.md) for behavior, +[`v0.183.326`](https://github.com/PastureStack/orchestration-engine/releases/tag/v0.183.326). +It restores read-only `projectTemplate.isPublic` in both v1 and v2-beta +responses for non-admin readers and omits unavailable remove actions on +non-owned templates. See the +[release note](docs/releases/orchestration-engine-0.183.326.md) for behavior, tests, and compatibility details. Previous release notes remain in [`docs/releases`](docs/releases), and the [GitHub release history](https://github.com/PastureStack/orchestration-engine/releases) @@ -45,7 +46,7 @@ bash scripts/check-cattle-jdk25-full-package After the gate passes, package and check the release artifact: ```sh -ENGINE_VERSION=0.183.325 bash scripts/build --release +ENGINE_VERSION=0.183.326 bash scripts/build --release bash scripts/check-release-artifact dist/artifacts/cattle.jar ``` diff --git a/code/framework/api-pub-sub-jetty/pom.xml b/code/framework/api-pub-sub-jetty/pom.xml index 99615d4589..0216a00a54 100644 --- a/code/framework/api-pub-sub-jetty/pom.xml +++ b/code/framework/api-pub-sub-jetty/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/api-pub-sub/pom.xml b/code/framework/api-pub-sub/pom.xml index e6710dc8ee..5a0df01a68 100644 --- a/code/framework/api-pub-sub/pom.xml +++ b/code/framework/api-pub-sub/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/api/pom.xml b/code/framework/api/pom.xml index 5f144d2cf2..4bf06b4581 100644 --- a/code/framework/api/pom.xml +++ b/code/framework/api/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java b/code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java index 725ea010e2..6f8a8b5a0b 100644 --- a/code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java +++ b/code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java @@ -89,7 +89,9 @@ protected void init() { protected void copyAccessors(Schema schema) { SchemaFactory parentSchemaFactory = schemaFactory; - mergeProjectMemberExternalIdTypeOptions(schema, parentSchemaFactory.getSchema(schema.getId())); + Schema coreSchema = parentSchemaFactory.getSchema(schema.getId()); + mergeProjectMemberExternalIdTypeOptions(schema, coreSchema); + mergeProjectTemplatePublicReadField(schema, coreSchema); Class clz = parentSchemaFactory.getSchemaClass(schema.getId()); if (clz == null) { return; @@ -129,6 +131,28 @@ protected void mergeProjectMemberExternalIdTypeOptions(Schema schema, Schema par ((FieldImpl) field).setOptions(new ArrayList(options)); } + protected void mergeProjectTemplatePublicReadField(Schema schema, Schema parentSchema) { + if (parentSchema == null || !"projectTemplate".equals(schema.getId()) || + schema.getResourceFields().containsKey("isPublic")) { + return; + } + + Field parentField = parentSchema.getResourceFields().get("isPublic"); + if (!(parentField instanceof FieldImpl)) { + return; + } + + // v1 loads frozen .ser schemas. The current user auth overlay grants + // read access, but cannot add a field missing from those snapshots. + // Copy only this public-state field and keep mutation admin-only. + FieldImpl readOnly = new FieldImpl(parentField); + readOnly.setName("isPublic"); + readOnly.setCreate(false); + readOnly.setUpdate(false); + readOnly.setReadOnCreateOnly(false); + schema.getResourceFields().put("isPublic", readOnly); + } + public String getFile() { return file; } diff --git a/code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java b/code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java index d47288efc2..ae54e0b76e 100644 --- a/code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java +++ b/code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java @@ -1,7 +1,11 @@ package io.cattle.platform.api.schema; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertSame; +import static org.junit.Assert.assertTrue; import io.github.ibuildthecloud.gdapi.factory.SchemaFactory; import io.github.ibuildthecloud.gdapi.factory.impl.AbstractSchemaFactory; @@ -16,6 +20,9 @@ import java.io.InputStream; import java.io.ObjectOutputStream; import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; @@ -95,6 +102,89 @@ public void enrichesFrozenV1ProjectMemberIdentityTypesFromCoreSchema() throws Ex .getResourceFields().get("externalIdType").getOptions()); } + @Test + public void exposesFrozenV1ProjectTemplatePublicStateWithoutGrantingWrites() throws Exception { + String resourceName = "schemas/v1-project-template-user.bin"; + SchemaImpl frozen = schema("projectTemplate", "projectTemplates"); + SchemaImpl core = schema("projectTemplate", "projectTemplates"); + FieldImpl coreField = new FieldImpl(); + coreField.setName("isPublic"); + coreField.setType("boolean"); + coreField.setCreate(true); + coreField.setUpdate(true); + core.getResourceFields().put("isPublic", coreField); + + Thread.currentThread().setContextClassLoader(new ResourceClassLoader(resourceName, + serialize(Arrays.asList(frozen)))); + FileSchemaFactory factory = factory(resourceName, new SingleSchemaFactory(core)); + factory.start(); + + FieldImpl loaded = (FieldImpl) factory.getSchema("projectTemplate") + .getResourceFields().get("isPublic"); + assertNotNull(loaded); + assertNotSame(coreField, loaded); + assertEquals("boolean", loaded.getType()); + assertTrue(loaded.isIncludeInList()); + assertFalse(loaded.isCreate()); + assertFalse(loaded.isUpdate()); + assertFalse(loaded.isReadOnCreateOnly()); + assertTrue("The current core schema must not be modified", coreField.isCreate()); + assertTrue(coreField.isUpdate()); + } + + @Test + public void preservesExistingFrozenV1AdminProjectTemplatePermissions() throws Exception { + String resourceName = "schemas/v1-project-template-admin.bin"; + SchemaImpl frozen = schema("projectTemplate", "projectTemplates"); + FieldImpl frozenField = new FieldImpl(); + frozenField.setCreate(true); + frozenField.setUpdate(true); + frozen.getResourceFields().put("isPublic", frozenField); + SchemaImpl core = schema("projectTemplate", "projectTemplates"); + core.getResourceFields().put("isPublic", new FieldImpl()); + + Thread.currentThread().setContextClassLoader(new ResourceClassLoader(resourceName, + serialize(Arrays.asList(frozen)))); + FileSchemaFactory factory = factory(resourceName, new SingleSchemaFactory(core)); + factory.start(); + + FieldImpl loaded = (FieldImpl) factory.getSchema("projectTemplate") + .getResourceFields().get("isPublic"); + assertTrue(loaded.isCreate()); + assertTrue(loaded.isUpdate()); + } + + @Test + public void repairsThePackagedFrozenV1UserSchemaNotOnlySyntheticFixtures() throws Exception { + String resourceName = "schema/v1/user.ser"; + Path current = Paths.get("").toAbsolutePath(); + while (current != null && !Files.isRegularFile( + current.resolve("resources/content/").resolve(resourceName))) { + current = current.getParent(); + } + assertNotNull("Unable to locate the packaged frozen v1 schema", current); + + SchemaImpl core = schema("projectTemplate", "projectTemplates"); + FieldImpl coreField = new FieldImpl(); + coreField.setName("isPublic"); + coreField.setType("boolean"); + coreField.setCreate(true); + coreField.setUpdate(true); + core.getResourceFields().put("isPublic", coreField); + + Thread.currentThread().setContextClassLoader(new ResourceClassLoader(resourceName, + Files.readAllBytes(current.resolve("resources/content/").resolve(resourceName)))); + FileSchemaFactory factory = factory(resourceName, new SingleSchemaFactory(core)); + factory.start(); + + FieldImpl loaded = (FieldImpl) factory.getSchema("projectTemplate") + .getResourceFields().get("isPublic"); + assertNotNull(loaded); + assertFalse(loaded.isCreate()); + assertFalse(loaded.isUpdate()); + assertEquals("boolean", loaded.getType()); + } + @Test public void doesNotWidenOptionsOnUnrelatedFrozenSchemas() throws Exception { String resourceName = "schemas/v1-account.bin"; diff --git a/code/framework/archaius/pom.xml b/code/framework/archaius/pom.xml index c5095675cd..525784264d 100644 --- a/code/framework/archaius/pom.xml +++ b/code/framework/archaius/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-meta-parent - 0.183.325 + 0.183.326 ../../meta-parent/pom.xml diff --git a/code/framework/async/pom.xml b/code/framework/async/pom.xml index 4975a49151..a5a21797e1 100644 --- a/code/framework/async/pom.xml +++ b/code/framework/async/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/auditing/pom.xml b/code/framework/auditing/pom.xml index 1beea81f10..b03e53af39 100644 --- a/code/framework/auditing/pom.xml +++ b/code/framework/auditing/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/db-loader/pom.xml b/code/framework/db-loader/pom.xml index 1e06adf7ed..d6ac04cc9b 100644 --- a/code/framework/db-loader/pom.xml +++ b/code/framework/db-loader/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/deferred/pom.xml b/code/framework/deferred/pom.xml index 9261ff6c29..dbfe31cf83 100644 --- a/code/framework/deferred/pom.xml +++ b/code/framework/deferred/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/encryption/pom.xml b/code/framework/encryption/pom.xml index 8f42bd8fd5..17b812bbba 100644 --- a/code/framework/encryption/pom.xml +++ b/code/framework/encryption/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/engine/pom.xml b/code/framework/engine/pom.xml index 20bb1eb4cc..06fdc102fd 100644 --- a/code/framework/engine/pom.xml +++ b/code/framework/engine/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/eventing/pom.xml b/code/framework/eventing/pom.xml index 3525e12172..04af361d3d 100644 --- a/code/framework/eventing/pom.xml +++ b/code/framework/eventing/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/events/pom.xml b/code/framework/events/pom.xml index c091b1b9db..6155862d37 100644 --- a/code/framework/events/pom.xml +++ b/code/framework/events/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/extension-spring/pom.xml b/code/framework/extension-spring/pom.xml index 0fa5093c91..8c3a6c5090 100644 --- a/code/framework/extension-spring/pom.xml +++ b/code/framework/extension-spring/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/extension/pom.xml b/code/framework/extension/pom.xml index 4a8f764fae..82bc54b1aa 100644 --- a/code/framework/extension/pom.xml +++ b/code/framework/extension/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/java-server/pom.xml b/code/framework/java-server/pom.xml index 04a3e7be46..9e316931ed 100644 --- a/code/framework/java-server/pom.xml +++ b/code/framework/java-server/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/jmx/pom.xml b/code/framework/jmx/pom.xml index f291b90b02..5d62cb0f25 100644 --- a/code/framework/jmx/pom.xml +++ b/code/framework/jmx/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/jooq/pom.xml b/code/framework/jooq/pom.xml index bb82d29392..3e186b8d49 100644 --- a/code/framework/jooq/pom.xml +++ b/code/framework/jooq/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/json/pom.xml b/code/framework/json/pom.xml index 192a97dda3..cf60d7433e 100644 --- a/code/framework/json/pom.xml +++ b/code/framework/json/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/launcher/pom.xml b/code/framework/launcher/pom.xml index 5eb74a9fd3..e06840ff83 100644 --- a/code/framework/launcher/pom.xml +++ b/code/framework/launcher/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/lock/pom.xml b/code/framework/lock/pom.xml index 022994f2a6..4d21745aea 100644 --- a/code/framework/lock/pom.xml +++ b/code/framework/lock/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/logback/pom.xml b/code/framework/logback/pom.xml index e6fa2a22c9..dbd9300157 100644 --- a/code/framework/logback/pom.xml +++ b/code/framework/logback/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-meta-parent - 0.183.325 + 0.183.326 ../../meta-parent/pom.xml diff --git a/code/framework/managed-context/pom.xml b/code/framework/managed-context/pom.xml index ed04e897de..7e3d3dfe29 100644 --- a/code/framework/managed-context/pom.xml +++ b/code/framework/managed-context/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/metrics/pom.xml b/code/framework/metrics/pom.xml index 4497a0681b..52a4c920b4 100644 --- a/code/framework/metrics/pom.xml +++ b/code/framework/metrics/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/module/pom.xml b/code/framework/module/pom.xml index 3a85aa5818..4ce929b902 100644 --- a/code/framework/module/pom.xml +++ b/code/framework/module/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/object/pom.xml b/code/framework/object/pom.xml index 15f3ca5d94..9a55adb940 100644 --- a/code/framework/object/pom.xml +++ b/code/framework/object/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/pool/pom.xml b/code/framework/pool/pom.xml index 35a2b1990e..82a20725f4 100644 --- a/code/framework/pool/pom.xml +++ b/code/framework/pool/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/resource-monitor/pom.xml b/code/framework/resource-monitor/pom.xml index c9f63cd877..9ec6430f40 100644 --- a/code/framework/resource-monitor/pom.xml +++ b/code/framework/resource-monitor/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/schema/pom.xml b/code/framework/schema/pom.xml index bd6496280c..54a980ed7e 100644 --- a/code/framework/schema/pom.xml +++ b/code/framework/schema/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/server/pom.xml b/code/framework/server/pom.xml index 3d848d9816..8c744b6639 100644 --- a/code/framework/server/pom.xml +++ b/code/framework/server/pom.xml @@ -4,7 +4,7 @@ cattle-meta-parent io.cattle - 0.183.325 + 0.183.326 ../../meta-parent/pom.xml diff --git a/code/framework/spring/pom.xml b/code/framework/spring/pom.xml index 9a10a3e522..49263fe08c 100644 --- a/code/framework/spring/pom.xml +++ b/code/framework/spring/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/system-task/pom.xml b/code/framework/system-task/pom.xml index 8b45675e7e..25aba47d93 100644 --- a/code/framework/system-task/pom.xml +++ b/code/framework/system-task/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/token/pom.xml b/code/framework/token/pom.xml index 99c650bda1..0863e21602 100644 --- a/code/framework/token/pom.xml +++ b/code/framework/token/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/framework/utils/pom.xml b/code/framework/utils/pom.xml index fb62bab719..ce2243c07c 100644 --- a/code/framework/utils/pom.xml +++ b/code/framework/utils/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/agent-instance/pom.xml b/code/iaas/agent-instance/pom.xml index 7a3e990d8c..bb7263c5bd 100644 --- a/code/iaas/agent-instance/pom.xml +++ b/code/iaas/agent-instance/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/agent-server/pom.xml b/code/iaas/agent-server/pom.xml index 01dfcddc96..bdaf6eec0c 100644 --- a/code/iaas/agent-server/pom.xml +++ b/code/iaas/agent-server/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/agent/pom.xml b/code/iaas/agent/pom.xml index 059a3739db..b047b4634a 100644 --- a/code/iaas/agent/pom.xml +++ b/code/iaas/agent/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/allocator/pom.xml b/code/iaas/allocator/pom.xml index 261e64e705..881bff17a7 100644 --- a/code/iaas/allocator/pom.xml +++ b/code/iaas/allocator/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/api-logic/pom.xml b/code/iaas/api-logic/pom.xml index 3b875e17ed..b372ada87b 100644 --- a/code/iaas/api-logic/pom.xml +++ b/code/iaas/api-logic/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/archaius-management/pom.xml b/code/iaas/archaius-management/pom.xml index cfe49f3f31..bc62adfa35 100644 --- a/code/iaas/archaius-management/pom.xml +++ b/code/iaas/archaius-management/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/auth-logic/pom.xml b/code/iaas/auth-logic/pom.xml index 71289228b5..8220e26b49 100644 --- a/code/iaas/auth-logic/pom.xml +++ b/code/iaas/auth-logic/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/bootstrap/pom.xml b/code/iaas/bootstrap/pom.xml index 22b636bb96..9c194d1dd2 100644 --- a/code/iaas/bootstrap/pom.xml +++ b/code/iaas/bootstrap/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/config-item/api/pom.xml b/code/iaas/config-item/api/pom.xml index c0c9e40c81..d1039bead6 100644 --- a/code/iaas/config-item/api/pom.xml +++ b/code/iaas/config-item/api/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/iaas/config-item/common/pom.xml b/code/iaas/config-item/common/pom.xml index a2139a8591..992f2f9c67 100644 --- a/code/iaas/config-item/common/pom.xml +++ b/code/iaas/config-item/common/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/iaas/config-item/server/pom.xml b/code/iaas/config-item/server/pom.xml index df0d1739b7..9609bb9ed8 100644 --- a/code/iaas/config-item/server/pom.xml +++ b/code/iaas/config-item/server/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/iaas/engine-jooq/pom.xml b/code/iaas/engine-jooq/pom.xml index a0e2fab24e..e5f43a8737 100644 --- a/code/iaas/engine-jooq/pom.xml +++ b/code/iaas/engine-jooq/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/events/pom.xml b/code/iaas/events/pom.xml index 713ca2f8e5..28385c8495 100644 --- a/code/iaas/events/pom.xml +++ b/code/iaas/events/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/external-handler/pom.xml b/code/iaas/external-handler/pom.xml index 3c8efd9199..4330f901e8 100644 --- a/code/iaas/external-handler/pom.xml +++ b/code/iaas/external-handler/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/ha/pom.xml b/code/iaas/ha/pom.xml index 1e5e0594d9..6d171b90b7 100644 --- a/code/iaas/ha/pom.xml +++ b/code/iaas/ha/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/healthcheck/pom.xml b/code/iaas/healthcheck/pom.xml index 4c7a9339d8..38a5f04662 100644 --- a/code/iaas/healthcheck/pom.xml +++ b/code/iaas/healthcheck/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/labels/pom.xml b/code/iaas/labels/pom.xml index 83809948ed..3a475fe07b 100644 --- a/code/iaas/labels/pom.xml +++ b/code/iaas/labels/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/logic-common/pom.xml b/code/iaas/logic-common/pom.xml index 2cea613432..0b42e5c327 100644 --- a/code/iaas/logic-common/pom.xml +++ b/code/iaas/logic-common/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/logic/pom.xml b/code/iaas/logic/pom.xml index b99347094e..0f0f676b13 100644 --- a/code/iaas/logic/pom.xml +++ b/code/iaas/logic/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/metadata/pom.xml b/code/iaas/metadata/pom.xml index 98c2a5f68d..c78a84faf0 100644 --- a/code/iaas/metadata/pom.xml +++ b/code/iaas/metadata/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/model/pom.xml b/code/iaas/model/pom.xml index e9655fb10b..5bab5ef3ff 100644 --- a/code/iaas/model/pom.xml +++ b/code/iaas/model/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/resource-pool/pom.xml b/code/iaas/resource-pool/pom.xml index e08cbbc8d7..8d3cf24766 100644 --- a/code/iaas/resource-pool/pom.xml +++ b/code/iaas/resource-pool/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/service-discovery/api/pom.xml b/code/iaas/service-discovery/api/pom.xml index a76cc39e85..8507534de8 100644 --- a/code/iaas/service-discovery/api/pom.xml +++ b/code/iaas/service-discovery/api/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/iaas/service-discovery/server/pom.xml b/code/iaas/service-discovery/server/pom.xml index 242850772e..d7d447b7c9 100644 --- a/code/iaas/service-discovery/server/pom.xml +++ b/code/iaas/service-discovery/server/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/iaas/ssh-common/pom.xml b/code/iaas/ssh-common/pom.xml index 4e8165c496..183c18a145 100644 --- a/code/iaas/ssh-common/pom.xml +++ b/code/iaas/ssh-common/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/storage-service/pom.xml b/code/iaas/storage-service/pom.xml index eaaf0a7a8f..ef93307d14 100644 --- a/code/iaas/storage-service/pom.xml +++ b/code/iaas/storage-service/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/iaas/task-jooq/pom.xml b/code/iaas/task-jooq/pom.xml index ac36beb3da..fa0f37ce86 100644 --- a/code/iaas/task-jooq/pom.xml +++ b/code/iaas/task-jooq/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/activity-log/pom.xml b/code/implementation/activity-log/pom.xml index e0451cbe11..67d4552f79 100644 --- a/code/implementation/activity-log/pom.xml +++ b/code/implementation/activity-log/pom.xml @@ -5,7 +5,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/agent-instance-impl/pom.xml b/code/implementation/agent-instance-impl/pom.xml index 0293446e8e..b4b17acb3d 100644 --- a/code/implementation/agent-instance-impl/pom.xml +++ b/code/implementation/agent-instance-impl/pom.xml @@ -3,7 +3,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml cattle-agent-instance-impl diff --git a/code/implementation/docker/api/pom.xml b/code/implementation/docker/api/pom.xml index 8a2c3da62d..55d60be83a 100644 --- a/code/implementation/docker/api/pom.xml +++ b/code/implementation/docker/api/pom.xml @@ -5,7 +5,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/docker/common/pom.xml b/code/implementation/docker/common/pom.xml index 9a3acc7dc0..d977d7041c 100644 --- a/code/implementation/docker/common/pom.xml +++ b/code/implementation/docker/common/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/docker/compute/pom.xml b/code/implementation/docker/compute/pom.xml index 1a4804c62e..46ba982ee7 100644 --- a/code/implementation/docker/compute/pom.xml +++ b/code/implementation/docker/compute/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/docker/machine/pom.xml b/code/implementation/docker/machine/pom.xml index 8e6163fef4..688cebc929 100644 --- a/code/implementation/docker/machine/pom.xml +++ b/code/implementation/docker/machine/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/docker/storage/pom.xml b/code/implementation/docker/storage/pom.xml index a3cec1f806..3c79935647 100644 --- a/code/implementation/docker/storage/pom.xml +++ b/code/implementation/docker/storage/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml @@ -21,12 +21,12 @@ io.cattle cattle-docker-common - 0.183.325 + 0.183.326 io.cattle cattle-iaas-allocator - 0.183.325 + 0.183.326 diff --git a/code/implementation/extension-api/pom.xml b/code/implementation/extension-api/pom.xml index 58eb125f07..ca91fe5674 100644 --- a/code/implementation/extension-api/pom.xml +++ b/code/implementation/extension-api/pom.xml @@ -3,7 +3,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml cattle-extension-api diff --git a/code/implementation/hazelcast/common/pom.xml b/code/implementation/hazelcast/common/pom.xml index 0260a6a68d..9adf303959 100644 --- a/code/implementation/hazelcast/common/pom.xml +++ b/code/implementation/hazelcast/common/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/hazelcast/eventing/pom.xml b/code/implementation/hazelcast/eventing/pom.xml index 52e1d3dd03..4032ff8f34 100644 --- a/code/implementation/hazelcast/eventing/pom.xml +++ b/code/implementation/hazelcast/eventing/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/hazelcast/lock/pom.xml b/code/implementation/hazelcast/lock/pom.xml index 854a6faa5b..519f8cff8c 100644 --- a/code/implementation/hazelcast/lock/pom.xml +++ b/code/implementation/hazelcast/lock/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/host-api/pom.xml b/code/implementation/host-api/pom.xml index cb4c2f74b2..e822a9045e 100644 --- a/code/implementation/host-api/pom.xml +++ b/code/implementation/host-api/pom.xml @@ -5,7 +5,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/host-stats/pom.xml b/code/implementation/host-stats/pom.xml index efeb3668cb..7744b01066 100644 --- a/code/implementation/host-stats/pom.xml +++ b/code/implementation/host-stats/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/register/pom.xml b/code/implementation/register/pom.xml index ec45f5bfed..cb97d393af 100644 --- a/code/implementation/register/pom.xml +++ b/code/implementation/register/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/sample-setup/pom.xml b/code/implementation/sample-setup/pom.xml index 97554f7852..9afc3eb7b1 100644 --- a/code/implementation/sample-setup/pom.xml +++ b/code/implementation/sample-setup/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/settings-api/pom.xml b/code/implementation/settings-api/pom.xml index 8a16b067a4..66218461cd 100644 --- a/code/implementation/settings-api/pom.xml +++ b/code/implementation/settings-api/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/simulator/agent-connection/pom.xml b/code/implementation/simulator/agent-connection/pom.xml index d747387ef8..2a01ca92bd 100644 --- a/code/implementation/simulator/agent-connection/pom.xml +++ b/code/implementation/simulator/agent-connection/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/simulator/storage/pom.xml b/code/implementation/simulator/storage/pom.xml index ebbdeaa073..cb577da372 100644 --- a/code/implementation/simulator/storage/pom.xml +++ b/code/implementation/simulator/storage/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../../parent/pom.xml diff --git a/code/implementation/system-stack/pom.xml b/code/implementation/system-stack/pom.xml index 34d8842869..4bdeb812b2 100644 --- a/code/implementation/system-stack/pom.xml +++ b/code/implementation/system-stack/pom.xml @@ -5,7 +5,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/implementation/vm/pom.xml b/code/implementation/vm/pom.xml index 7e8cf09db2..b0da0dfc74 100644 --- a/code/implementation/vm/pom.xml +++ b/code/implementation/vm/pom.xml @@ -3,7 +3,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml cattle-vm diff --git a/code/meta-parent/pom.xml b/code/meta-parent/pom.xml index 992088d711..2b594926c0 100644 --- a/code/meta-parent/pom.xml +++ b/code/meta-parent/pom.xml @@ -9,7 +9,7 @@ 4.0.0 io.cattle cattle-meta-parent - 0.183.325 + 0.183.326 pom PastureStack Orchestration Engine Compatibility orchestration engine for the PastureStack server. diff --git a/code/packaging/app-config/pom.xml b/code/packaging/app-config/pom.xml index b5915bbad0..c7ee5a2710 100644 --- a/code/packaging/app-config/pom.xml +++ b/code/packaging/app-config/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml jar diff --git a/code/packaging/app/pom.xml b/code/packaging/app/pom.xml index b38ccd69ca..7c92bcfb93 100644 --- a/code/packaging/app/pom.xml +++ b/code/packaging/app/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml war diff --git a/code/packaging/bundle/pom.xml b/code/packaging/bundle/pom.xml index c4cacfea26..ac17d0a250 100644 --- a/code/packaging/bundle/pom.xml +++ b/code/packaging/bundle/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/packaging/dev/pom.xml b/code/packaging/dev/pom.xml index 3e6f1d6f3d..74bbd8aa2e 100644 --- a/code/packaging/dev/pom.xml +++ b/code/packaging/dev/pom.xml @@ -4,7 +4,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/packaging/meta/pom.xml b/code/packaging/meta/pom.xml index 92143a00f6..fdd71e7945 100644 --- a/code/packaging/meta/pom.xml +++ b/code/packaging/meta/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../../parent/pom.xml diff --git a/code/parent/pom.xml b/code/parent/pom.xml index 705d52b0d5..40e0129905 100644 --- a/code/parent/pom.xml +++ b/code/parent/pom.xml @@ -5,7 +5,7 @@ io.cattle cattle-meta-parent ../meta-parent/pom.xml - 0.183.325 + 0.183.326 pom diff --git a/docs/releases/orchestration-engine-0.183.326.md b/docs/releases/orchestration-engine-0.183.326.md new file mode 100644 index 0000000000..cbcf2d0e30 --- /dev/null +++ b/docs/releases/orchestration-engine-0.183.326.md @@ -0,0 +1,18 @@ +# Orchestration Engine 0.183.326 + +The v1 user API uses a frozen serialized schema that did not contain `projectTemplate.isPublic`. +The dynamic authorization overlay in `0.183.325` exposed the public flag in +v2-beta, but could not create a field absent from that frozen v1 schema. This +release copies just that field from the current core schema into the v1 user +schema as read-only. Existing admin create and update permissions are left +unchanged. It does not widen template mutation authorization or alter any +other frozen schema. + +Focused tests cover a synthetic frozen user schema, unchanged admin field +permissions, and the actual packaged v1 user schema. QA acceptance must read +all existing public templates using owner, member, restricted, read-only, and +no-access-to-matrix-project sessions through both v1 and v2-beta, then verify +write authorization using only an isolated, disposable template fixture. + +No database migration is required. Rollback to `0.183.325` restores the prior +v1 omission; callers must not interpret a missing `isPublic` as `false`. diff --git a/pom.xml b/pom.xml index 430f1991bc..b7b87e8082 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ io.cattle cattle-parent - 0.183.325 + 0.183.326 code/parent/pom.xml cattle diff --git a/resources/pom.xml b/resources/pom.xml index 39831163ff..1759b8b60e 100644 --- a/resources/pom.xml +++ b/resources/pom.xml @@ -4,7 +4,7 @@ cattle-parent io.cattle - 0.183.325 + 0.183.326 ../code/parent/pom.xml diff --git a/scripts/build b/scripts/build index baf2565cd0..57dee236e9 100755 --- a/scripts/build +++ b/scripts/build @@ -16,7 +16,7 @@ fi SOURCE_REVISION=${SOURCE_REVISION:-$(git rev-parse HEAD)} SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH:-$(git show -s --format=%ct HEAD)} -ENGINE_VERSION=${ENGINE_VERSION:-0.183.325} +ENGINE_VERSION=${ENGINE_VERSION:-0.183.326} case "$SOURCE_REVISION" in ''|*[!0-9a-f]*) diff --git a/scripts/check-pasturestack-source b/scripts/check-pasturestack-source index b3d6bb7978..9b795d5765 100755 --- a/scripts/check-pasturestack-source +++ b/scripts/check-pasturestack-source @@ -51,7 +51,7 @@ fi project_version=$(sed -n 's/^[[:space:]]*\([^<]*\)<\/version>[[:space:]]*$/\1/p' code/meta-parent/pom.xml | head -n 1) [[ "$project_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || fail non_numeric_project_version -require_line code/meta-parent/pom.xml ' 0.183.325' +require_line code/meta-parent/pom.xml ' 0.183.326' require_line code/meta-parent/pom.xml ' 2.3.35' require_line "$iaas_api_defaults" 'auth.service.external.id.types=github_user,github_org,github_team,shibboleth_user,shibboleth_group,ldap_user,ldap_group,oidc_user,oidc_group' require_line code/meta-parent/pom.xml ' https://github.com/PastureStack/orchestration-engine' @@ -178,6 +178,7 @@ require_line docs/releases/orchestration-engine-0.183.322.md 'A retried account require_line docs/releases/orchestration-engine-0.183.323.md 'This release updates FreeMarker from 2.3.34 to 2.3.35.' require_line docs/releases/orchestration-engine-0.183.324.md 'This patch exposes `projectTemplate.isPublic` to non-admin API readers as a' require_line docs/releases/orchestration-engine-0.183.325.md 'This release carries the ProjectTemplate API correction from the 0.183.324 source tag.' +require_line docs/releases/orchestration-engine-0.183.326.md 'The v1 user API uses a frozen serialized schema that did not contain `projectTemplate.isPublic`.' require_line scripts/check-release-artifact 'python3 scripts/check-release-artifact-no-dev.py "$artifact"' require_line scripts/ci 'CI=true MAVEN_ARGS="${MAVEN_ARGS:-$DEFAULT_UNIT_MAVEN_ARGS}" MAVEN_TARGET="${MAVEN_TARGET:-clean package}" run ./build --release' require_line code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth/projects/ProjectMemberResourceManager.java ' if (projectMember == null || !CommonStatesConstants.ACTIVE.equals(projectMember.getState())' @@ -191,8 +192,10 @@ require_line code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth require_line code/iaas/auth-logic/src/test/java/io/cattle/platform/iaas/api/auth/AbstractTokenUtilIdListTest.java ' public void restrictedModeSeesAResolvedStableAccountBeforeProjectAccessCheck() {' require_line code/iaas/auth-logic/src/test/java/io/cattle/platform/iaas/api/auth/AbstractTokenUtilIdListTest.java ' public void requiredModeDoesNotTurnStableMembershipIntoAnAllowlistBypass() {' require_line code/iaas/auth-logic/src/test/java/io/cattle/platform/iaas/api/auth/AbstractTokenUtilIdListTest.java ' public void invalidProvisioningModeFailsClosed() {' -require_line code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java ' mergeProjectMemberExternalIdTypeOptions(schema, parentSchemaFactory.getSchema(schema.getId()));' +require_line code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java ' mergeProjectMemberExternalIdTypeOptions(schema, coreSchema);' +require_line code/framework/api/src/main/java/io/cattle/platform/api/schema/FileSchemaFactory.java ' mergeProjectTemplatePublicReadField(schema, coreSchema);' require_line code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java ' public void enrichesFrozenV1ProjectMemberIdentityTypesFromCoreSchema() throws Exception {' +require_line code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java ' public void repairsThePackagedFrozenV1UserSchemaNotOnlySyntheticFixtures() throws Exception {' require_line code/framework/api/src/test/java/io/cattle/platform/api/schema/FileSchemaFactoryTest.java ' public void doesNotWidenOptionsOnUnrelatedFrozenSchemas() throws Exception {' require_line code/iaas/auth-logic/src/main/java/io/cattle/platform/iaas/api/auth/dao/impl/AuthDaoImpl.java ' return resourceDao.create(Account.class, objectManager.convertToPropertiesFor(Account.class,' require_line code/iaas/auth-logic/src/test/java/io/cattle/platform/iaas/api/auth/dao/impl/AuthDaoImplAccountCreationTest.java ' public void completesAccountLifecycleBeforeReturningToLoginFlow() {' @@ -405,4 +408,4 @@ require_line README.md 'modernize the Rancher 1.6 ecosystem. It is not affiliate require_line README.md 'by Rancher Labs or SUSE.' require_line ORIGIN.md '- Preserved upstream boundary: `82d154a53f4089fecfb9f320caad826bb4f6055f`' -printf 'PASTURESTACK_SOURCE_GATE_OK version=0.183.325 runtime_sources=github_release images=digest_pinned ubuntu=26.04 ubuntu_snapshot=20260826T000000Z jdk=25.0.4 maven=3.9.16 patched_hazelcast=5.7.4 docker_cli=29.7.2 docker_host_29_8_0=exact credential_secret_capacity=mediumtext port_preflight=authoritative volume_preflight=runtime_resolution_aligned volume_preflight_project_schema=authorized volume_preflight_type_set=registered v1_hardware_schema=container-and-launchConfig network_driver_rollback=launch-config-restored stack_driver_rollback=child-launch-config-restored auth_token_session_binding=authorized-create-only auth_token_transport=bare-or-bearer-normalized auth_token_frozen_v1_schema=base-superadmin-token oidc_external_types=validated-before-mutation-owned-stable-account oidc_account_activation=sync-before-mfa oidc_v1_project_member_schema=core-options-merged-scoped oidc_identity_link_owner=explicit-and-verified legacy_token_link_repair=exact-match-only oidc_required_local_recovery=active-admin-only default_project=shared-idempotent-role-preserving,atomic-identity-set oidc_restricted_project_membership=stable-account-aware-required-allowlist-only mfa_policy_confirmation=actor-purpose-digest-single-use auth_config_proxy_identity=caller-platform-credential project_member_collection_acl=requested-project-checked-before-load network_purge=retry-removing dev_artifact=forbidden\n' +printf 'PASTURESTACK_SOURCE_GATE_OK version=0.183.326 runtime_sources=github_release images=digest_pinned ubuntu=26.04 ubuntu_snapshot=20260826T000000Z jdk=25.0.4 maven=3.9.16 patched_hazelcast=5.7.4 docker_cli=29.7.2 docker_host_29_8_0=exact credential_secret_capacity=mediumtext port_preflight=authoritative volume_preflight=runtime_resolution_aligned volume_preflight_project_schema=authorized volume_preflight_type_set=registered v1_hardware_schema=container-and-launchConfig network_driver_rollback=launch-config-restored stack_driver_rollback=child-launch-config-restored auth_token_session_binding=authorized-create-only auth_token_transport=bare-or-bearer-normalized auth_token_frozen_v1_schema=base-superadmin-token oidc_external_types=validated-before-mutation-owned-stable-account oidc_account_activation=sync-before-mfa oidc_v1_project_member_schema=core-options-merged-scoped oidc_identity_link_owner=explicit-and-verified legacy_token_link_repair=exact-match-only oidc_required_local_recovery=active-admin-only default_project=shared-idempotent-role-preserving,atomic-identity-set oidc_restricted_project_membership=stable-account-aware-required-allowlist-only mfa_policy_confirmation=actor-purpose-digest-single-use auth_config_proxy_identity=caller-platform-credential project_member_collection_acl=requested-project-checked-before-load project_template_v1_public=readonly-frozen-field-merged network_purge=retry-removing dev_artifact=forbidden\n' diff --git a/scripts/check-release-artifact b/scripts/check-release-artifact index ca3db808fd..a8d86e08f1 100755 --- a/scripts/check-release-artifact +++ b/scripts/check-release-artifact @@ -4,7 +4,7 @@ set -euo pipefail cd "$(dirname "$0")/.." artifact=${1:-dist/artifacts/cattle.jar} -expected_version=${EXPECTED_ENGINE_VERSION:-0.183.325} +expected_version=${EXPECTED_ENGINE_VERSION:-0.183.326} test -f "$artifact" artifact=$(realpath "$artifact")